[PATCH v2 6/7] arm64: dts: allwinner: h616: Add audio codec node
Andre Przywara
andre.przywara at arm.com
Sun Oct 20 03:56:33 PDT 2024
On Sun, 20 Oct 2024 21:30:56 +1300
Ryan Walklin <ryan at testtoast.com> wrote:
Hi,
> Now that the sun4i codec driver supports the H616, add a node in the
> device tree for it (correcting the spdif block location at the same
> time).
I can confirm that the spdif block indeed just moved without any changes
(to preserve the MMIO base address ordering in the DT), and that the
values for the base address, the IRQ, the clocks, the reset gate and
the DMA channels of the new audio codec match the manual:
> Signed-off-by: Ryan Walklin <ryan at testtoast.com>
Reviewed-by: Andre Przywara <andre.przywara at arm.com>
Cheers,
Andre
>
> ---
> Changelog v1..v2:
> - Remove 4x clock from the codec block, this is not used in the driver and does not require a reference.
> - Move the codec (and spdif) blocks below the lradc block so that they are in address-order.
> ---
> .../arm64/boot/dts/allwinner/sun50i-h616.dtsi | 44 ++++++++++++-------
> 1 file changed, 29 insertions(+), 15 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi
> index 0131f9b3132b8..3788f65a7d0eb 100644
> --- a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi
> +++ b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi
> @@ -762,21 +762,6 @@ mdio0: mdio {
> };
> };
>
> - spdif: spdif at 5093000 {
> - compatible = "allwinner,sun50i-h616-spdif";
> - reg = <0x05093000 0x400>;
> - interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
> - clocks = <&ccu CLK_BUS_SPDIF>, <&ccu CLK_SPDIF>;
> - clock-names = "apb", "spdif";
> - resets = <&ccu RST_BUS_SPDIF>;
> - dmas = <&dma 2>;
> - dma-names = "tx";
> - pinctrl-names = "default";
> - pinctrl-0 = <&spdif_tx_pin>;
> - #sound-dai-cells = <0>;
> - status = "disabled";
> - };
> -
> gpadc: adc at 5070000 {
> compatible = "allwinner,sun50i-h616-gpadc",
> "allwinner,sun20i-d1-gpadc";
> @@ -811,6 +796,35 @@ lradc: lradc at 5070800 {
> status = "disabled";
> };
>
> + spdif: spdif at 5093000 {
> + compatible = "allwinner,sun50i-h616-spdif";
> + reg = <0x05093000 0x400>;
> + interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
> + clocks = <&ccu CLK_BUS_SPDIF>, <&ccu CLK_SPDIF>;
> + clock-names = "apb", "spdif";
> + resets = <&ccu RST_BUS_SPDIF>;
> + dmas = <&dma 2>;
> + dma-names = "tx";
> + pinctrl-names = "default";
> + pinctrl-0 = <&spdif_tx_pin>;
> + #sound-dai-cells = <0>;
> + status = "disabled";
> + };
> +
> + codec: codec at 05096000 {
> + #sound-dai-cells = <0>;
> + compatible = "allwinner,sun50i-h616-codec";
> + reg = <0x05096000 0x31c>;
> + interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
> + clocks = <&ccu CLK_BUS_AUDIO_CODEC>,
> + <&ccu CLK_AUDIO_CODEC_1X>;
> + clock-names = "apb", "codec";
> + resets = <&ccu RST_BUS_AUDIO_CODEC>;
> + dmas = <&dma 6>;
> + dma-names = "tx";
> + status = "disabled";
> + };
> +
> usbotg: usb at 5100000 {
> compatible = "allwinner,sun50i-h616-musb",
> "allwinner,sun8i-h3-musb";
More information about the linux-arm-kernel
mailing list