On 2019-03-02 15:19, Katsuhiro Suzuki wrote: > Ping... > > On 2019/02/18 2:34, Katsuhiro Suzuki wrote: >> This patch adds HDMI sound (I2S0) node for rock64. >> >> After apply this patch, UART2 will fail to allocate DMA resources >> but UART driver can work fine without DMA. >> >> This error is related to the DMAC of rk3328 (pl330 or compatible). >> DMAC connected to 16 DMA sources. Each sources have ID number that is >> called 'Req number' in rk3328 TRM. Currently total 7 sources has been >> activated as follows: >> >> | Req number | Source | Required | >> | | | channels | >> |------------+--------+-----------| >> | 14, 15 | I2S1 | 2ch | >> | 6, 7 | UART2 | 2ch | >> | 10 | SPDIF | 1ch | >> | 8, 9 | SPI0 | 2ch | >> |------------+--------+-----------| >> | | Total | 7ch | >> >> HDMI audio needs to activate new source I2S0 (Req number 11 and 12). >> I2S0 can work concurrently with other sources, but rk3328 DMAC can >> use max 8 channels at same time. If I2S0 is simply activated by this >> patch, required DMAC channels will be 9. So last one (UART2) cannot >> allocate the DMA resources. >> >> Virt-dma mechanism for pl0330 DMAC driver is needed to fix this >> problem. >> >> Signed-off-by: Katsuhiro Suzuki <katsuhiro@xxxxxxxxxxxxx> >> --- >> .../arm64/boot/dts/rockchip/rk3328-rock64.dts | 21 ++++++++++++++++++- >> 1 file changed, 20 insertions(+), 1 deletion(-) >> >> diff --git a/arch/arm64/boot/dts/rockchip/rk3328-rock64.dts b/arch/arm64/boot/dts/rockchip/rk3328-rock64.dts >> index 2157a528276b..bfc0930d245c 100644 >> --- a/arch/arm64/boot/dts/rockchip/rk3328-rock64.dts >> +++ b/arch/arm64/boot/dts/rockchip/rk3328-rock64.dts >> @@ -68,7 +68,8 @@ >> sound { >> compatible = "audio-graph-card"; >> label = "rockchip,rk3328"; >> - dais = <&i2s1_p0 >> + dais = <&i2s0_p0 >> + &i2s1_p0 >> &spdif_p0>; I am working on multi-channel hdmi audio support for dw-hdmi at [1] and are wondering if having multiple dais on one graph card instead of a separate hdmi sound card will affect the ability to define a proper alsa config for multi channel hdmi sound. [1] https://github.com/Kwiboo/linux-rockchip/compare/8874c206d613dc575f5cb6e385e7a866020138d0...92b20eaa6b6dd2cf3418a428f905d10bbc62724f Regards, Jonas >> }; >> >> @@ -141,6 +142,12 @@ >> >> &hdmi { >> status = "okay"; >> + >> + port@0 { >> + hdmi_p0_0: endpoint { >> + remote-endpoint = <&i2s0_p0_0>; >> + }; >> + }; >> }; >> >> &hdmiphy { >> @@ -256,6 +263,18 @@ >> }; >> }; >> >> +&i2s0 { >> + status = "okay"; >> + >> + i2s0_p0: port { >> + i2s0_p0_0: endpoint { >> + dai-format = "i2s"; >> + mclk-fs = <256>; >> + remote-endpoint = <&hdmi_p0_0>; >> + }; >> + }; >> +}; >> + >> &i2s1 { >> status = "okay"; >> >> > > _______________________________________________ > Linux-rockchip mailing list > Linux-rockchip@xxxxxxxxxxxxxxxxxxx > https://nam03.safelinks.protection.outlook.com/?url=http%3A%2F%2Flists.infradead.org%2Fmailman%2Flistinfo%2Flinux-rockchip&data=02%7C01%7C%7Cfcb0d6c43ded4d5e7d4c08d69f1a226d%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C636871331922090426&sdata=ABb%2Fo%2FMAGvFBH%2B37uQr6rzn%2B%2FXBAXyiGfv2%2BMO0RQoQ%3D&reserved=0 _______________________________________________ Linux-rockchip mailing list Linux-rockchip@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/linux-rockchip