* [PATCH] arm64: dts: rockchip: fix probe of analog sound card on rock-3a @ 2023-01-15 21:15 Jonas Karlman 2023-01-16 8:41 ` Michael Riesch 2023-01-19 11:57 ` Heiko Stuebner 0 siblings, 2 replies; 7+ messages in thread From: Jonas Karlman @ 2023-01-15 21:15 UTC (permalink / raw) To: Heiko Stuebner, linux-rockchip Cc: Rob Herring, Krzysztof Kozlowski, Michael Riesch, devicetree, linux-arm-kernel, Jonas Karlman The following was observed on my Radxa ROCK 3 Model A board: rockchip-pinctrl pinctrl: pin gpio1-9 already requested by vcc-cam-regulator; cannot claim for fe410000.i2s ... platform rk809-sound: deferred probe pending Fix this by supplying a board specific pinctrl with the i2s1 pins used by pmic codec according to the schematic [1]. [1] https://dl.radxa.com/rock3/docs/hw/3a/ROCK-3A-V1.3-SCH.pdf Signed-off-by: Jonas Karlman <jonas@kwiboo.se> --- arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts b/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts index 00d873a03cfe..a149c8b83f94 100644 --- a/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts +++ b/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts @@ -573,6 +573,8 @@ &i2s0_8ch { }; &i2s1_8ch { + pinctrl-names = "default"; + pinctrl-0 = <&i2s1m0_sclktx &i2s1m0_lrcktx &i2s1m0_sdi0 &i2s1m0_sdo0>; rockchip,trcm-sync-tx-only; status = "okay"; }; -- 2.39.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH] arm64: dts: rockchip: fix probe of analog sound card on rock-3a 2023-01-15 21:15 [PATCH] arm64: dts: rockchip: fix probe of analog sound card on rock-3a Jonas Karlman @ 2023-01-16 8:41 ` Michael Riesch 2023-01-16 9:29 ` Jonas Karlman 2023-01-16 15:14 ` Nicolas Frattaroli 2023-01-19 11:57 ` Heiko Stuebner 1 sibling, 2 replies; 7+ messages in thread From: Michael Riesch @ 2023-01-16 8:41 UTC (permalink / raw) To: Jonas Karlman, Heiko Stuebner, linux-rockchip Cc: Rob Herring, Krzysztof Kozlowski, devicetree, linux-arm-kernel, frattaroli.nicolas Hi Jonas, On 1/15/23 22:15, Jonas Karlman wrote: > The following was observed on my Radxa ROCK 3 Model A board: > > rockchip-pinctrl pinctrl: pin gpio1-9 already requested by vcc-cam-regulator; cannot claim for fe410000.i2s > ... > platform rk809-sound: deferred probe pending > > Fix this by supplying a board specific pinctrl with the i2s1 pins used > by pmic codec according to the schematic [1]. > > [1] https://dl.radxa.com/rock3/docs/hw/3a/ROCK-3A-V1.3-SCH.pdf > > Signed-off-by: Jonas Karlman <jonas@kwiboo.se> Makes sense to me, but... > --- > arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts b/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts > index 00d873a03cfe..a149c8b83f94 100644 > --- a/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts > +++ b/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts > @@ -573,6 +573,8 @@ &i2s0_8ch { > }; > > &i2s1_8ch { > + pinctrl-names = "default"; > + pinctrl-0 = <&i2s1m0_sclktx &i2s1m0_lrcktx &i2s1m0_sdi0 &i2s1m0_sdo0>; ... shouldn't this include i2s1m0_mclk as well? For some reason this has been omitted in the pinctrl defined in rk356x.dtsi. But then rk356x.dtsi also claims - both i2s1m0_sdo1 and i2s1m0_sdi3 - both i2s1m0_sdo2 and i2s1m0_sdi2 - both i2s1m0_sdo3 and i2s1m0_sdi1 which are mapped to the same respective pins. Therefore it seems that there might be something wrong with this pinctrl altogether. Cc: Nicolas Frattaroli, maybe he can provide some clarification. Best regards, Michael > rockchip,trcm-sync-tx-only; > status = "okay"; > }; _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] arm64: dts: rockchip: fix probe of analog sound card on rock-3a 2023-01-16 8:41 ` Michael Riesch @ 2023-01-16 9:29 ` Jonas Karlman 2023-01-16 15:23 ` Michael Riesch 2023-01-16 15:14 ` Nicolas Frattaroli 1 sibling, 1 reply; 7+ messages in thread From: Jonas Karlman @ 2023-01-16 9:29 UTC (permalink / raw) To: Michael Riesch, Heiko Stuebner, linux-rockchip Cc: Rob Herring, Krzysztof Kozlowski, devicetree, linux-arm-kernel, frattaroli.nicolas Hi Michael, On 2023-01-16 09:41, Michael Riesch wrote: > Hi Jonas, > > On 1/15/23 22:15, Jonas Karlman wrote: >> The following was observed on my Radxa ROCK 3 Model A board: >> >> rockchip-pinctrl pinctrl: pin gpio1-9 already requested by vcc-cam-regulator; cannot claim for fe410000.i2s >> ... >> platform rk809-sound: deferred probe pending >> >> Fix this by supplying a board specific pinctrl with the i2s1 pins used >> by pmic codec according to the schematic [1]. >> >> [1] https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdl.radxa.com%2Frock3%2Fdocs%2Fhw%2F3a%2FROCK-3A-V1.3-SCH.pdf&data=05%7C01%7C%7Cb09a8096d417409ca0c108daf79d85f2%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C638094553170941885%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=upix1Lqcu1y5vYkPtcB5Ao5TA04brBcecCS0LX2ipe4%3D&reserved=0 >> >> Signed-off-by: Jonas Karlman <jonas@kwiboo.se> > > Makes sense to me, but... > >> --- >> arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts | 2 ++ >> 1 file changed, 2 insertions(+) >> >> diff --git a/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts b/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts >> index 00d873a03cfe..a149c8b83f94 100644 >> --- a/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts >> +++ b/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts >> @@ -573,6 +573,8 @@ &i2s0_8ch { >> }; >> >> &i2s1_8ch { >> + pinctrl-names = "default"; >> + pinctrl-0 = <&i2s1m0_sclktx &i2s1m0_lrcktx &i2s1m0_sdi0 &i2s1m0_sdo0>; > > ... shouldn't this include i2s1m0_mclk as well? i2s1m0_mclk is already included in the pmic/rk809 pinctrl, so it was omitted from the i2s1_8ch pinctrl. Best regards, Jonas > > For some reason this has been omitted in the pinctrl defined in > rk356x.dtsi. But then rk356x.dtsi also claims > - both i2s1m0_sdo1 and i2s1m0_sdi3 > - both i2s1m0_sdo2 and i2s1m0_sdi2 > - both i2s1m0_sdo3 and i2s1m0_sdi1 > which are mapped to the same respective pins. Therefore it seems that > there might be something wrong with this pinctrl altogether. > > Cc: Nicolas Frattaroli, maybe he can provide some clarification. > > Best regards, > Michael > >> rockchip,trcm-sync-tx-only; >> status = "okay"; >> }; _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] arm64: dts: rockchip: fix probe of analog sound card on rock-3a 2023-01-16 9:29 ` Jonas Karlman @ 2023-01-16 15:23 ` Michael Riesch 0 siblings, 0 replies; 7+ messages in thread From: Michael Riesch @ 2023-01-16 15:23 UTC (permalink / raw) To: Jonas Karlman, Heiko Stuebner, linux-rockchip Cc: Rob Herring, Krzysztof Kozlowski, devicetree, linux-arm-kernel, frattaroli.nicolas Hi Jonas, On 1/16/23 10:29, Jonas Karlman wrote: > Hi Michael, > > On 2023-01-16 09:41, Michael Riesch wrote: >> Hi Jonas, >> >> On 1/15/23 22:15, Jonas Karlman wrote: >>> The following was observed on my Radxa ROCK 3 Model A board: >>> >>> rockchip-pinctrl pinctrl: pin gpio1-9 already requested by >>> vcc-cam-regulator; cannot claim for fe410000.i2s >>> ... >>> platform rk809-sound: deferred probe pending >>> >>> Fix this by supplying a board specific pinctrl with the i2s1 pins used >>> by pmic codec according to the schematic [1]. >>> >>> [1] >>> https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdl.radxa.com%2Frock3%2Fdocs%2Fhw%2F3a%2FROCK-3A-V1.3-SCH.pdf&data=05%7C01%7C%7Cb09a8096d417409ca0c108daf79d85f2%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C638094553170941885%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=upix1Lqcu1y5vYkPtcB5Ao5TA04brBcecCS0LX2ipe4%3D&reserved=0 >>> >>> Signed-off-by: Jonas Karlman <jonas@kwiboo.se> >> >> Makes sense to me, but... >> >>> --- >>> arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts | 2 ++ >>> 1 file changed, 2 insertions(+) >>> >>> diff --git a/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts >>> b/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts >>> index 00d873a03cfe..a149c8b83f94 100644 >>> --- a/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts >>> +++ b/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts >>> @@ -573,6 +573,8 @@ &i2s0_8ch { >>> }; >>> &i2s1_8ch { >>> + pinctrl-names = "default"; >>> + pinctrl-0 = <&i2s1m0_sclktx &i2s1m0_lrcktx &i2s1m0_sdi0 >>> &i2s1m0_sdo0>; >> >> ... shouldn't this include i2s1m0_mclk as well? > > i2s1m0_mclk is already included in the pmic/rk809 pinctrl, so it was > omitted from the i2s1_8ch pinctrl. ah ok! In this case: Acked-by: Michael Riesch <michael.riesch@wolfvision.net> Best regards, Michael > > Best regards, > Jonas > >> >> For some reason this has been omitted in the pinctrl defined in >> rk356x.dtsi. But then rk356x.dtsi also claims >> - both i2s1m0_sdo1 and i2s1m0_sdi3 >> - both i2s1m0_sdo2 and i2s1m0_sdi2 >> - both i2s1m0_sdo3 and i2s1m0_sdi1 >> which are mapped to the same respective pins. Therefore it seems that >> there might be something wrong with this pinctrl altogether. >> >> Cc: Nicolas Frattaroli, maybe he can provide some clarification. >> >> Best regards, >> Michael >> >>> rockchip,trcm-sync-tx-only; >>> status = "okay"; >>> }; > _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] arm64: dts: rockchip: fix probe of analog sound card on rock-3a 2023-01-16 8:41 ` Michael Riesch 2023-01-16 9:29 ` Jonas Karlman @ 2023-01-16 15:14 ` Nicolas Frattaroli 2023-01-16 15:22 ` Michael Riesch 1 sibling, 1 reply; 7+ messages in thread From: Nicolas Frattaroli @ 2023-01-16 15:14 UTC (permalink / raw) To: Jonas Karlman, Heiko Stuebner, linux-rockchip, Michael Riesch Cc: Rob Herring, Krzysztof Kozlowski, devicetree, linux-arm-kernel On Monday, 16 January 2023 09:41:50 CET Michael Riesch wrote: > Hi Jonas, > > On 1/15/23 22:15, Jonas Karlman wrote: > > The following was observed on my Radxa ROCK 3 Model A board: > > rockchip-pinctrl pinctrl: pin gpio1-9 already requested by > > vcc-cam-regulator; cannot claim for fe410000.i2s ... > > platform rk809-sound: deferred probe pending > > > > Fix this by supplying a board specific pinctrl with the i2s1 pins used > > by pmic codec according to the schematic [1]. > > > > [1] https://dl.radxa.com/rock3/docs/hw/3a/ROCK-3A-V1.3-SCH.pdf > > > > Signed-off-by: Jonas Karlman <jonas@kwiboo.se> > > Makes sense to me, but... > > > --- > > > > arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts | 2 ++ > > 1 file changed, 2 insertions(+) > > > > diff --git a/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts > > b/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts index > > 00d873a03cfe..a149c8b83f94 100644 > > --- a/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts > > +++ b/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts > > @@ -573,6 +573,8 @@ &i2s0_8ch { > > > > }; > > > > &i2s1_8ch { > > > > + pinctrl-names = "default"; > > + pinctrl-0 = <&i2s1m0_sclktx &i2s1m0_lrcktx &i2s1m0_sdi0 &i2s1m0_sdo0>; > > ... shouldn't this include i2s1m0_mclk as well? You can totally use i2s without an mclk, but I don't have a specific explanation as to why this is lacking in this particular pinctrl, as I cargo-culted it from downstream. > For some reason this has been omitted in the pinctrl defined in > rk356x.dtsi. But then rk356x.dtsi also claims > - both i2s1m0_sdo1 and i2s1m0_sdi3 > - both i2s1m0_sdo2 and i2s1m0_sdi2 > - both i2s1m0_sdo3 and i2s1m0_sdi1 > which are mapped to the same respective pins. Therefore it seems that > there might be something wrong with this pinctrl altogether. This is actually correct, I believe. The driver has a feature called "io multiplex" which fiddles with the GRF to dynamically set the pin directions depending on the hardware parameters. As it happens, for example sdo1 and sdi3 are on the same pin mux, and can be switched between like this. I don't know how well that meshes with upstream's understanding of pinctrl but in this case the two functions really can use the same pin. > > Cc: Nicolas Frattaroli, maybe he can provide some clarification. > > Best regards, > Michael > > > rockchip,trcm-sync-tx-only; > > status = "okay"; > > > > }; Cheers, Nicolas Frattaroli _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] arm64: dts: rockchip: fix probe of analog sound card on rock-3a 2023-01-16 15:14 ` Nicolas Frattaroli @ 2023-01-16 15:22 ` Michael Riesch 0 siblings, 0 replies; 7+ messages in thread From: Michael Riesch @ 2023-01-16 15:22 UTC (permalink / raw) To: Nicolas Frattaroli, Jonas Karlman, Heiko Stuebner, linux-rockchip Cc: Rob Herring, Krzysztof Kozlowski, devicetree, linux-arm-kernel Hi Nicolas, On 1/16/23 16:14, Nicolas Frattaroli wrote: > On Monday, 16 January 2023 09:41:50 CET Michael Riesch wrote: >> Hi Jonas, >> >> On 1/15/23 22:15, Jonas Karlman wrote: >>> The following was observed on my Radxa ROCK 3 Model A board: >>> rockchip-pinctrl pinctrl: pin gpio1-9 already requested by >>> vcc-cam-regulator; cannot claim for fe410000.i2s ... >>> platform rk809-sound: deferred probe pending >>> >>> Fix this by supplying a board specific pinctrl with the i2s1 pins used >>> by pmic codec according to the schematic [1]. >>> >>> [1] https://dl.radxa.com/rock3/docs/hw/3a/ROCK-3A-V1.3-SCH.pdf >>> >>> Signed-off-by: Jonas Karlman <jonas@kwiboo.se> >> >> Makes sense to me, but... >> >>> --- >>> >>> arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts | 2 ++ >>> 1 file changed, 2 insertions(+) >>> >>> diff --git a/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts >>> b/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts index >>> 00d873a03cfe..a149c8b83f94 100644 >>> --- a/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts >>> +++ b/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts >>> @@ -573,6 +573,8 @@ &i2s0_8ch { >>> >>> }; >>> >>> &i2s1_8ch { >>> >>> + pinctrl-names = "default"; >>> + pinctrl-0 = <&i2s1m0_sclktx &i2s1m0_lrcktx &i2s1m0_sdi0 > &i2s1m0_sdo0>; >> >> ... shouldn't this include i2s1m0_mclk as well? > > You can totally use i2s without an mclk, but I don't have a specific > explanation as to why this is lacking in this particular pinctrl, as > I cargo-culted it from downstream. > >> For some reason this has been omitted in the pinctrl defined in >> rk356x.dtsi. But then rk356x.dtsi also claims >> - both i2s1m0_sdo1 and i2s1m0_sdi3 >> - both i2s1m0_sdo2 and i2s1m0_sdi2 >> - both i2s1m0_sdo3 and i2s1m0_sdi1 >> which are mapped to the same respective pins. Therefore it seems that >> there might be something wrong with this pinctrl altogether. > > This is actually correct, I believe. The driver has a feature called > "io multiplex" which fiddles with the GRF to dynamically set the pin > directions depending on the hardware parameters. As it happens, for > example sdo1 and sdi3 are on the same pin mux, and can be switched > between like this. > > I don't know how well that meshes with upstream's understanding of > pinctrl but in this case the two functions really can use the same > pin. Ah, fancy stuff! Thanks for the clarification! Best regards, Michael > >> >> Cc: Nicolas Frattaroli, maybe he can provide some clarification. >> >> Best regards, >> Michael >> >>> rockchip,trcm-sync-tx-only; >>> status = "okay"; >>> >>> }; > > Cheers, > Nicolas Frattaroli > > > > _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] arm64: dts: rockchip: fix probe of analog sound card on rock-3a 2023-01-15 21:15 [PATCH] arm64: dts: rockchip: fix probe of analog sound card on rock-3a Jonas Karlman 2023-01-16 8:41 ` Michael Riesch @ 2023-01-19 11:57 ` Heiko Stuebner 1 sibling, 0 replies; 7+ messages in thread From: Heiko Stuebner @ 2023-01-19 11:57 UTC (permalink / raw) To: linux-rockchip, Jonas Karlman Cc: Heiko Stuebner, devicetree, Rob Herring, Krzysztof Kozlowski, Michael Riesch, linux-arm-kernel On Sun, 15 Jan 2023 21:15:56 +0000 (UTC), Jonas Karlman wrote: > The following was observed on my Radxa ROCK 3 Model A board: > > rockchip-pinctrl pinctrl: pin gpio1-9 already requested by vcc-cam-regulator; cannot claim for fe410000.i2s > ... > platform rk809-sound: deferred probe pending > > Fix this by supplying a board specific pinctrl with the i2s1 pins used > by pmic codec according to the schematic [1]. > > [...] Applied, thanks! [1/1] arm64: dts: rockchip: fix probe of analog sound card on rock-3a commit: 1104693cdfcd337e73ab585a225f05445ff7a864 Best regards, -- Heiko Stuebner <heiko@sntech.de> _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2023-01-19 11:58 UTC | newest] Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2023-01-15 21:15 [PATCH] arm64: dts: rockchip: fix probe of analog sound card on rock-3a Jonas Karlman 2023-01-16 8:41 ` Michael Riesch 2023-01-16 9:29 ` Jonas Karlman 2023-01-16 15:23 ` Michael Riesch 2023-01-16 15:14 ` Nicolas Frattaroli 2023-01-16 15:22 ` Michael Riesch 2023-01-19 11:57 ` Heiko Stuebner
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).