diff mbox series

[v6,3/3] dt-bindings: Add Rockchip rk817 audio CODEC support

Message ID SN6PR06MB53420A0E831C17342A73188BA5499@SN6PR06MB5342.namprd06.prod.outlook.com (mailing list archive)
State New
Headers show
Series [v6,1/3] mfd: Add Rockchip rk817 audio CODEC support | expand

Commit Message

Chris Morgan April 19, 2021, 3:57 p.m. UTC
Create dt-binding documentation to document rk817 codec.

Signed-off-by: Chris Morgan <macromorgan@hotmail.com>
---
Changes in v6:
 - Included additional project maintainers for correct subsystems.
 - Removed unneeded compatible from DT documentation.
 - Removed binding update for Odroid Go Advance (will do in seperate series).
Changes in v5:
 - Move register definitions from rk817_codec.h to main rk808.h register
   definitions.
 - Add volatile register for codec bits.
 - Add default values for codec bits.
 - Removed of_compatible from mtd driver (not necessary).
 - Switched to using parent regmap instead of private regmap for codec.
Changes in v4:
 - Created set_pll() call.
 - Created user visible gain control in mic.
 - Check for return value of clk_prepare_enable().
 - Removed duplicate clk_prepare_enable().
 - Split DT documentation to separate commit.
Changes in v3:
 - Use DAPM macros to set audio path.
 - Updated devicetree binding (as every rk817 has this codec chip).
 - Changed documentation to yaml format.
 - Split MFD changes to separate commit.
Changes in v2:
 - Fixed audio path registers to solve some bugs.

 .../bindings/sound/rockchip,rk817-codec.yaml  | 57 +++++++++++++++++++
 1 file changed, 57 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/sound/rockchip,rk817-codec.yaml

Comments

Johan Jonker April 19, 2021, 6:37 p.m. UTC | #1
Hi Chris,

Never use hotmail.com for sending patches.
They corrupt Message-ID, so use for example Gmail.

X-Microsoft-Original-Message-ID:
 <20210419155718.17348-3-macromorgan@hotmail.com>

Message-ID:
<SN6PR06MB53420A0E831C17342A73188BA5499@SN6PR06MB5342.namprd06.prod.outlook.com>

====

If you like rk817.txt should be converted to YAML, which is beyond your
serie, so move these changes to rk817.txt instead for now if rob+dt
agrees. ;)

====

Include the dts patch back in, so we can compare it with the
documentation changes.

On 4/19/21 5:57 PM, Chris Morgan wrote:
> Create dt-binding documentation to document rk817 codec.
> 
> Signed-off-by: Chris Morgan <macromorgan@hotmail.com>
> ---
> Changes in v6:
>  - Included additional project maintainers for correct subsystems.
>  - Removed unneeded compatible from DT documentation.
>  - Removed binding update for Odroid Go Advance (will do in seperate series).
> Changes in v5:
>  - Move register definitions from rk817_codec.h to main rk808.h register
>    definitions.
>  - Add volatile register for codec bits.
>  - Add default values for codec bits.
>  - Removed of_compatible from mtd driver (not necessary).
>  - Switched to using parent regmap instead of private regmap for codec.
> Changes in v4:
>  - Created set_pll() call.
>  - Created user visible gain control in mic.
>  - Check for return value of clk_prepare_enable().
>  - Removed duplicate clk_prepare_enable().
>  - Split DT documentation to separate commit.
> Changes in v3:
>  - Use DAPM macros to set audio path.
>  - Updated devicetree binding (as every rk817 has this codec chip).
>  - Changed documentation to yaml format.
>  - Split MFD changes to separate commit.
> Changes in v2:
>  - Fixed audio path registers to solve some bugs.
> 
>  .../bindings/sound/rockchip,rk817-codec.yaml  | 57 +++++++++++++++++++
>  1 file changed, 57 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/sound/rockchip,rk817-codec.yaml
> 
> diff --git a/Documentation/devicetree/bindings/sound/rockchip,rk817-codec.yaml b/Documentation/devicetree/bindings/sound/rockchip,rk817-codec.yaml
> new file mode 100644
> index 000000000000..0059ef54d6b5
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/sound/rockchip,rk817-codec.yaml
> @@ -0,0 +1,57 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/sound/rockchip-rk817.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Rockchip rk817 audio codec
> +
> +description:
> +  The rk817 codec is an I2C codec integrated with every Rockchip
> +  rk817 PMIC MFD.

If you want to convert rk817.txt to rockchip,rk817.yaml then add

maintainers:
  - Heiko Stuebner <heiko@sntech.de>

> +
> +properties:
> +

> +  "#sound-dai-cells":
> +    const: 1

Move things with "#" below as much as possible.

> +
> +  clocks:
> +    maxItems: 1
> +
> +  clock-names:
> +    const: "mclk"
> +

> +  mic-in-differential:
> +    description: the microphone is in differential mode.
> +    $ref: /schemas/types.yaml#/definitions/flag

This is part of a sub node now.

> +
> +required:

> +  - compatible

Add compatible "rockchip,rk817" to properties

> +  - clocks
> +  - clock-names
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +rk817: pmic@20 {

> +	compatible = "rockchip,rk817";

Without rockchip,rk817.yaml this example will generate notifications.

> +	reg = <0x20>;
> +	interrupt-parent = <&gpio0>;

> +	interrupts = <7 IRQ_TYPE_LEVEL_LOW>;

add include for IRQ_TYPE_LEVEL_LOW

> +	pinctrl-names = "default";
> +	pinctrl-0 = <&pmic_int>, <&i2s_8ch_mclk>;

> +	#sound-dai-cells = <0>;

Move things with "#" down below the list in possible.

> +	clocks = <&cru SCLK_I2S_8CH_OUT>;

add include for SCLK_I2S_8CH_OUT

> +	clock-names = "mclk";

----
Heiko's sort rules:

compatible
reg
interrupts
[alphabetical]
status [if needed]

----


> +

> +	........

remove

> +

> +	rk817_codec: codec {


Move to rk817.txt example.

> +			mic-in-differential;

> +			status = "okay";

Never use status in examples.

> +	};
> +

> +	........

remove

> +
> +};
>
Chris Morgan April 20, 2021, 2:46 p.m. UTC | #2
On Mon, Apr 19, 2021 at 08:37:57PM +0200, Johan Jonker wrote:
> Hi Chris,
> 
> Never use hotmail.com for sending patches.
> They corrupt Message-ID, so use for example Gmail.

Understood. I'll get a gmail set up as soon as possible. Sorry if this
message comes through funky (still on Hotmail, been using it since 96).

> 
> X-Microsoft-Original-Message-ID:
>  <20210419155718.17348-3-macromorgan@hotmail.com>
> 
> Message-ID:
> <SN6PR06MB53420A0E831C17342A73188BA5499@SN6PR06MB5342.namprd06.prod.outlook.com>
> 
> ====
> 
> If you like rk817.txt should be converted to YAML, which is beyond your
> serie, so move these changes to rk817.txt instead for now if rob+dt
> agrees. ;)

Will do, assuming everyone agrees.

> 
> ====
> 
> Include the dts patch back in, so we can compare it with the
> documentation changes.
> 

Acknowledged.

> On 4/19/21 5:57 PM, Chris Morgan wrote:
> > Create dt-binding documentation to document rk817 codec.
> > 
> > Signed-off-by: Chris Morgan <macromorgan@hotmail.com>
> > ---
> > Changes in v6:
> >  - Included additional project maintainers for correct subsystems.
> >  - Removed unneeded compatible from DT documentation.
> >  - Removed binding update for Odroid Go Advance (will do in seperate series).
> > Changes in v5:
> >  - Move register definitions from rk817_codec.h to main rk808.h register
> >    definitions.
> >  - Add volatile register for codec bits.
> >  - Add default values for codec bits.
> >  - Removed of_compatible from mtd driver (not necessary).
> >  - Switched to using parent regmap instead of private regmap for codec.
> > Changes in v4:
> >  - Created set_pll() call.
> >  - Created user visible gain control in mic.
> >  - Check for return value of clk_prepare_enable().
> >  - Removed duplicate clk_prepare_enable().
> >  - Split DT documentation to separate commit.
> > Changes in v3:
> >  - Use DAPM macros to set audio path.
> >  - Updated devicetree binding (as every rk817 has this codec chip).
> >  - Changed documentation to yaml format.
> >  - Split MFD changes to separate commit.
> > Changes in v2:
> >  - Fixed audio path registers to solve some bugs.
> > 
> >  .../bindings/sound/rockchip,rk817-codec.yaml  | 57 +++++++++++++++++++
> >  1 file changed, 57 insertions(+)
> >  create mode 100644 Documentation/devicetree/bindings/sound/rockchip,rk817-codec.yaml
> > 
> > diff --git a/Documentation/devicetree/bindings/sound/rockchip,rk817-codec.yaml b/Documentation/devicetree/bindings/sound/rockchip,rk817-codec.yaml
> > new file mode 100644
> > index 000000000000..0059ef54d6b5
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/sound/rockchip,rk817-codec.yaml
> > @@ -0,0 +1,57 @@
> > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fdevicetree.org%2Fschemas%2Fsound%2Frockchip-rk817.yaml%23&amp;data=04%7C01%7C%7C7f2c986dc85e4a835aae08d9036242b2%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637544542817084121%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=Dlh0Gn0DH%2FLwLWGr%2BxqAmVU7mUVwzMrsX2LYiIyGDtU%3D&amp;reserved=0
> > +$schema: https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fdevicetree.org%2Fmeta-schemas%2Fcore.yaml%23&amp;data=04%7C01%7C%7C7f2c986dc85e4a835aae08d9036242b2%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637544542817084121%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=82MFRpHilkJCkQKT1Esi6UX1F4WZJEE4%2BOOZL0bFQpg%3D&amp;reserved=0
> > +
> > +title: Rockchip rk817 audio codec
> > +
> > +description:
> > +  The rk817 codec is an I2C codec integrated with every Rockchip
> > +  rk817 PMIC MFD.
> 
> If you want to convert rk817.txt to rockchip,rk817.yaml then add
> 
> maintainers:
>   - Heiko Stuebner <heiko@sntech.de>

Heiko is on here anyway as I believe he has one of these devices to
test and asked previously that I include him as I upstream things
for the Odroid Go Advance.

> 
> > +
> > +properties:
> > +
> 
> > +  "#sound-dai-cells":
> > +    const: 1
> 
> Move things with "#" below as much as possible.
> 

Ack

> > +
> > +  clocks:
> > +    maxItems: 1
> > +
> > +  clock-names:
> > +    const: "mclk"
> > +
> 

Ack

> > +  mic-in-differential:
> > +    description: the microphone is in differential mode.
> > +    $ref: /schemas/types.yaml#/definitions/flag
> 
> This is part of a sub node now.
> 

Correct, will update this when I move it to the rk808 documentation.

> > +
> > +required:
> 
> > +  - compatible
> 
> Add compatible "rockchip,rk817" to properties
> 

Will make sure I note these updates as "optional for the rk817" in the
MFD devicetree bindings. The "compatible" is listed there.

> > +  - clocks
> > +  - clock-names
> > +
> > +additionalProperties: false
> > +
> > +examples:
> > +  - |
> > +rk817: pmic@20 {
> 
> > +	compatible = "rockchip,rk817";
> 
> Without rockchip,rk817.yaml this example will generate notifications.
> 

I'm afraid I don't understand.  I'll update the rk808 documentation to
show the correct bindings, if it's still incorrect please let me know.

> > +	reg = <0x20>;
> > +	interrupt-parent = <&gpio0>;
> 
> > +	interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
> 
> add include for IRQ_TYPE_LEVEL_LOW

I do not understand, I'll update the rk808, if it's still wrong please
let me know.

> 
> > +	pinctrl-names = "default";
> > +	pinctrl-0 = <&pmic_int>, <&i2s_8ch_mclk>;
> 
> > +	#sound-dai-cells = <0>;
> 
> Move things with "#" down below the list in possible.
> 

Acknowledged.

> > +	clocks = <&cru SCLK_I2S_8CH_OUT>;
> 
> add include for SCLK_I2S_8CH_OUT
> 
> > +	clock-names = "mclk";
> 
> ----
> Heiko's sort rules:
> 
> compatible
> reg
> interrupts
> [alphabetical]
> status [if needed]
> 
> ----
> 
> 
> > +
> 
> > +	........
> 
> remove
> 
> > +
> 
> > +	rk817_codec: codec {
> 
> 
> Move to rk817.txt example.
> 
> > +			mic-in-differential;
> 
> > +			status = "okay";
> 
> Never use status in examples.
> 

Acknowledged.

> > +	};
> > +
> 
> > +	........
> 
> remove
> 
> > +
> > +};
> > 
>
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/sound/rockchip,rk817-codec.yaml b/Documentation/devicetree/bindings/sound/rockchip,rk817-codec.yaml
new file mode 100644
index 000000000000..0059ef54d6b5
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/rockchip,rk817-codec.yaml
@@ -0,0 +1,57 @@ 
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/rockchip-rk817.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Rockchip rk817 audio codec
+
+description:
+  The rk817 codec is an I2C codec integrated with every Rockchip
+  rk817 PMIC MFD.
+
+properties:
+
+  "#sound-dai-cells":
+    const: 1
+
+  clocks:
+    maxItems: 1
+
+  clock-names:
+    const: "mclk"
+
+  mic-in-differential:
+    description: the microphone is in differential mode.
+    $ref: /schemas/types.yaml#/definitions/flag
+
+required:
+  - compatible
+  - clocks
+  - clock-names
+
+additionalProperties: false
+
+examples:
+  - |
+rk817: pmic@20 {
+	compatible = "rockchip,rk817";
+	reg = <0x20>;
+	interrupt-parent = <&gpio0>;
+	interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
+	pinctrl-names = "default";
+	pinctrl-0 = <&pmic_int>, <&i2s_8ch_mclk>;
+	#sound-dai-cells = <0>;
+	clocks = <&cru SCLK_I2S_8CH_OUT>;
+	clock-names = "mclk";
+
+	........
+
+	rk817_codec: codec {
+			mic-in-differential;
+			status = "okay";
+	};
+
+	........
+
+};