Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

arm64: dts: mediatek: mt8173: Drop VDEC_SYS reg from decoder

Remove the VDEC_SYS register space from the decoder, so that the node
address becomes that of VDEC_MISC, solving the long-standing conflicting
addresses between this node and the vdecsys clock-controller node:

arch/arm64/boot/dts/mediatek/mt8173.dtsi:1365.38-1369.5: Warning (unique_unit_address_if_enabled): /soc/clock-controller@16000000: duplicate unit-address (also used in node /soc/vcodec@16000000)

The driver makes use of this register space, however, so also add a
phandle to the VDEC_SYS syscon to maintain functionality.

Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://lore.kernel.org/r/20230630151436.155586-7-nfraprado@collabora.com

authored by

Nícolas F. R. A. Prado and committed by
AngeloGioacchino Del Regno
cacb3fda 729f30ea

+5 -3
+5 -3
arch/arm64/boot/dts/mediatek/mt8173.dtsi
··· 1368 1368 #clock-cells = <1>; 1369 1369 }; 1370 1370 1371 - vcodec_dec: vcodec@16000000 { 1371 + vcodec_dec: vcodec@16020000 { 1372 1372 compatible = "mediatek,mt8173-vcodec-dec"; 1373 - reg = <0 0x16000000 0 0x100>, /* VDEC_SYS */ 1374 - <0 0x16020000 0 0x1000>, /* VDEC_MISC */ 1373 + reg = <0 0x16020000 0 0x1000>, /* VDEC_MISC */ 1375 1374 <0 0x16021000 0 0x800>, /* VDEC_LD */ 1376 1375 <0 0x16021800 0 0x800>, /* VDEC_TOP */ 1377 1376 <0 0x16022000 0 0x1000>, /* VDEC_CM */ ··· 1381 1382 <0 0x16027000 0 0x800>, /* VDEC_HWQ */ 1382 1383 <0 0x16027800 0 0x800>, /* VDEC_HWB */ 1383 1384 <0 0x16028400 0 0x400>; /* VDEC_HWG */ 1385 + reg-names = "misc", "ld", "top", "cm", "ad", "av", "pp", 1386 + "hwd", "hwq", "hwb", "hwg"; 1384 1387 interrupts = <GIC_SPI 204 IRQ_TYPE_LEVEL_LOW>; 1385 1388 iommus = <&iommu M4U_PORT_HW_VDEC_MC_EXT>, 1386 1389 <&iommu M4U_PORT_HW_VDEC_PP_EXT>, ··· 1393 1392 <&iommu M4U_PORT_HW_VDEC_VLD_EXT>, 1394 1393 <&iommu M4U_PORT_HW_VDEC_VLD2_EXT>; 1395 1394 mediatek,vpu = <&vpu>; 1395 + mediatek,vdecsys = <&vdecsys>; 1396 1396 power-domains = <&spm MT8173_POWER_DOMAIN_VDEC>; 1397 1397 clocks = <&apmixedsys CLK_APMIXED_VCODECPLL>, 1398 1398 <&topckgen CLK_TOP_UNIVPLL_D2>,