Message ID | 20230402095054.384739-6-cristian.ciocaltea@collabora.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Enable I2S support for RK3588/RK3588S SoCs | expand |
Hi Cristian, On Sun, 2023-04-02 at 12:50 +0300, Cristian Ciocaltea wrote: > Add the necessary DT nodes for the Rock 5B board to enable the analog > audio support provided by the Everest Semi ES8316 codec. > > Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com> Reviewed-by: Christopher Obbard <chris.obbard@collabora.com> > --- > .../boot/dts/rockchip/rk3588-rock-5b.dts | 62 +++++++++++++++++++ > 1 file changed, 62 insertions(+) > > diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts > index 95805cb0adfa..a9e12e098d48 100644 > --- a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts > +++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts > @@ -2,6 +2,7 @@ > > /dts-v1/; > > +#include <dt-bindings/gpio/gpio.h> > #include "rk3588.dtsi" > > / { > @@ -17,6 +18,23 @@ chosen { > stdout-path = "serial2:1500000n8"; > }; > > + sound { > + compatible = "audio-graph-card"; > + label = "Analog"; > + > + widgets = "Microphone", "Mic Jack", > + "Headphone", "Headphones"; > + > + routing = "MIC2", "Mic Jack", > + "Headphones", "HPOL", > + "Headphones", "HPOR"; > + > + dais = <&i2s0_8ch_p0>; > + hp-det-gpio = <&gpio1 RK_PD5 GPIO_ACTIVE_HIGH>; > + pinctrl-names = "default"; > + pinctrl-0 = <&hp_detect>; > + }; > + > vcc5v0_sys: vcc5v0-sys-regulator { > compatible = "regulator-fixed"; > regulator-name = "vcc5v0_sys"; > @@ -27,6 +45,50 @@ vcc5v0_sys: vcc5v0-sys-regulator { > }; > }; > > +&i2c7 { > + status = "okay"; > + > + es8316: es8316@11 { > + compatible = "everest,es8316"; > + reg = <0x11>; > + clocks = <&cru I2S0_8CH_MCLKOUT>; > + clock-names = "mclk"; > + #sound-dai-cells = <0>; > + > + port { > + es8316_p0_0: endpoint { > + remote-endpoint = <&i2s0_8ch_p0_0>; > + }; > + }; > + }; > +}; > + > +&i2s0_8ch { > + pinctrl-names = "default"; > + pinctrl-0 = <&i2s0_lrck > + &i2s0_mclk > + &i2s0_sclk > + &i2s0_sdi0 > + &i2s0_sdo0>; > + status = "okay"; > + > + i2s0_8ch_p0: port { > + i2s0_8ch_p0_0: endpoint { > + dai-format = "i2s"; > + mclk-fs = <256>; > + remote-endpoint = <&es8316_p0_0>; > + }; > + }; > +}; > + > +&pinctrl { > + sound { > + hp_detect: hp-detect { > + rockchip,pins = <1 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>; > + }; > + }; > +}; > + > &sdhci { > bus-width = <8>; > no-sdio; > -- > 2.40.0 > >
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts index 95805cb0adfa..a9e12e098d48 100644 --- a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts +++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts @@ -2,6 +2,7 @@ /dts-v1/; +#include <dt-bindings/gpio/gpio.h> #include "rk3588.dtsi" / { @@ -17,6 +18,23 @@ chosen { stdout-path = "serial2:1500000n8"; }; + sound { + compatible = "audio-graph-card"; + label = "Analog"; + + widgets = "Microphone", "Mic Jack", + "Headphone", "Headphones"; + + routing = "MIC2", "Mic Jack", + "Headphones", "HPOL", + "Headphones", "HPOR"; + + dais = <&i2s0_8ch_p0>; + hp-det-gpio = <&gpio1 RK_PD5 GPIO_ACTIVE_HIGH>; + pinctrl-names = "default"; + pinctrl-0 = <&hp_detect>; + }; + vcc5v0_sys: vcc5v0-sys-regulator { compatible = "regulator-fixed"; regulator-name = "vcc5v0_sys"; @@ -27,6 +45,50 @@ vcc5v0_sys: vcc5v0-sys-regulator { }; }; +&i2c7 { + status = "okay"; + + es8316: es8316@11 { + compatible = "everest,es8316"; + reg = <0x11>; + clocks = <&cru I2S0_8CH_MCLKOUT>; + clock-names = "mclk"; + #sound-dai-cells = <0>; + + port { + es8316_p0_0: endpoint { + remote-endpoint = <&i2s0_8ch_p0_0>; + }; + }; + }; +}; + +&i2s0_8ch { + pinctrl-names = "default"; + pinctrl-0 = <&i2s0_lrck + &i2s0_mclk + &i2s0_sclk + &i2s0_sdi0 + &i2s0_sdo0>; + status = "okay"; + + i2s0_8ch_p0: port { + i2s0_8ch_p0_0: endpoint { + dai-format = "i2s"; + mclk-fs = <256>; + remote-endpoint = <&es8316_p0_0>; + }; + }; +}; + +&pinctrl { + sound { + hp_detect: hp-detect { + rockchip,pins = <1 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; +}; + &sdhci { bus-width = <8>; no-sdio;
Add the necessary DT nodes for the Rock 5B board to enable the analog audio support provided by the Everest Semi ES8316 codec. Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com> --- .../boot/dts/rockchip/rk3588-rock-5b.dts | 62 +++++++++++++++++++ 1 file changed, 62 insertions(+)