arm64: dts: renesas: r8a779h0: Add video capture nodes

Add the VIN, CSI-2 and CSISP related nodes found on R-Car V4M.

One thing to note is that both CSISP0 and CSISP1 are in the same power
domain, this is different from other Gen4 SoCs (R-Car V4H).  The reason
for this is that R-Car V4M only has one ISP core which is connected to
CSISP0 while R-Car V4H has two ISP cores, one connected to each CSISP.

Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Link: https://lore.kernel.org/r/20240527134129.1695450-2-niklas.soderlund+renesas@ragnatech.se
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
This commit is contained in:
Niklas Söderlund 2024-05-27 15:41:27 +02:00 committed by Geert Uytterhoeven
parent f6e32aa969
commit 2bb78d9fb7

View File

@ -939,6 +939,454 @@
status = "disabled";
};
vin00: video@e6ef0000 {
compatible = "renesas,vin-r8a779h0";
reg = <0 0xe6ef0000 0 0x1000>;
interrupts = <GIC_SPI 529 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cpg CPG_MOD 730>;
power-domains = <&sysc R8A779H0_PD_C4>;
resets = <&cpg 730>;
renesas,id = <0>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@2 {
#address-cells = <1>;
#size-cells = <0>;
reg = <2>;
vin00isp0: endpoint@0 {
reg = <0>;
remote-endpoint = <&isp0vin00>;
};
};
};
};
vin01: video@e6ef1000 {
compatible = "renesas,vin-r8a779h0";
reg = <0 0xe6ef1000 0 0x1000>;
interrupts = <GIC_SPI 530 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cpg CPG_MOD 731>;
power-domains = <&sysc R8A779H0_PD_C4>;
resets = <&cpg 731>;
renesas,id = <1>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@2 {
#address-cells = <1>;
#size-cells = <0>;
reg = <2>;
vin01isp0: endpoint@0 {
reg = <0>;
remote-endpoint = <&isp0vin01>;
};
};
};
};
vin02: video@e6ef2000 {
compatible = "renesas,vin-r8a779h0";
reg = <0 0xe6ef2000 0 0x1000>;
interrupts = <GIC_SPI 531 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cpg CPG_MOD 800>;
power-domains = <&sysc R8A779H0_PD_C4>;
resets = <&cpg 800>;
renesas,id = <2>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@2 {
#address-cells = <1>;
#size-cells = <0>;
reg = <2>;
vin02isp0: endpoint@0 {
reg = <0>;
remote-endpoint = <&isp0vin02>;
};
};
};
};
vin03: video@e6ef3000 {
compatible = "renesas,vin-r8a779h0";
reg = <0 0xe6ef3000 0 0x1000>;
interrupts = <GIC_SPI 532 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cpg CPG_MOD 801>;
power-domains = <&sysc R8A779H0_PD_C4>;
resets = <&cpg 801>;
renesas,id = <3>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@2 {
#address-cells = <1>;
#size-cells = <0>;
reg = <2>;
vin03isp0: endpoint@0 {
reg = <0>;
remote-endpoint = <&isp0vin03>;
};
};
};
};
vin04: video@e6ef4000 {
compatible = "renesas,vin-r8a779h0";
reg = <0 0xe6ef4000 0 0x1000>;
interrupts = <GIC_SPI 533 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cpg CPG_MOD 802>;
power-domains = <&sysc R8A779H0_PD_C4>;
resets = <&cpg 802>;
renesas,id = <4>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@2 {
#address-cells = <1>;
#size-cells = <0>;
reg = <2>;
vin04isp0: endpoint@0 {
reg = <0>;
remote-endpoint = <&isp0vin04>;
};
};
};
};
vin05: video@e6ef5000 {
compatible = "renesas,vin-r8a779h0";
reg = <0 0xe6ef5000 0 0x1000>;
interrupts = <GIC_SPI 534 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cpg CPG_MOD 803>;
power-domains = <&sysc R8A779H0_PD_C4>;
resets = <&cpg 803>;
renesas,id = <5>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@2 {
#address-cells = <1>;
#size-cells = <0>;
reg = <2>;
vin05isp0: endpoint@0 {
reg = <0>;
remote-endpoint = <&isp0vin05>;
};
};
};
};
vin06: video@e6ef6000 {
compatible = "renesas,vin-r8a779h0";
reg = <0 0xe6ef6000 0 0x1000>;
interrupts = <GIC_SPI 535 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cpg CPG_MOD 804>;
power-domains = <&sysc R8A779H0_PD_C4>;
resets = <&cpg 804>;
renesas,id = <6>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@2 {
#address-cells = <1>;
#size-cells = <0>;
reg = <2>;
vin06isp0: endpoint@0 {
reg = <0>;
remote-endpoint = <&isp0vin06>;
};
};
};
};
vin07: video@e6ef7000 {
compatible = "renesas,vin-r8a779h0";
reg = <0 0xe6ef7000 0 0x1000>;
interrupts = <GIC_SPI 536 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cpg CPG_MOD 805>;
power-domains = <&sysc R8A779H0_PD_C4>;
resets = <&cpg 805>;
renesas,id = <7>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@2 {
#address-cells = <1>;
#size-cells = <0>;
reg = <2>;
vin07isp0: endpoint@0 {
reg = <0>;
remote-endpoint = <&isp0vin07>;
};
};
};
};
vin08: video@e6ef8000 {
compatible = "renesas,vin-r8a779h0";
reg = <0 0xe6ef8000 0 0x1000>;
interrupts = <GIC_SPI 537 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cpg CPG_MOD 806>;
power-domains = <&sysc R8A779H0_PD_C4>;
resets = <&cpg 806>;
renesas,id = <8>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@2 {
#address-cells = <1>;
#size-cells = <0>;
reg = <2>;
vin08isp1: endpoint@1 {
reg = <1>;
remote-endpoint = <&isp1vin08>;
};
};
};
};
vin09: video@e6ef9000 {
compatible = "renesas,vin-r8a779h0";
reg = <0 0xe6ef9000 0 0x1000>;
interrupts = <GIC_SPI 538 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cpg CPG_MOD 807>;
power-domains = <&sysc R8A779H0_PD_C4>;
resets = <&cpg 807>;
renesas,id = <9>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@2 {
#address-cells = <1>;
#size-cells = <0>;
reg = <2>;
vin09isp1: endpoint@1 {
reg = <1>;
remote-endpoint = <&isp1vin09>;
};
};
};
};
vin10: video@e6efa000 {
compatible = "renesas,vin-r8a779h0";
reg = <0 0xe6efa000 0 0x1000>;
interrupts = <GIC_SPI 539 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cpg CPG_MOD 808>;
power-domains = <&sysc R8A779H0_PD_C4>;
resets = <&cpg 808>;
renesas,id = <10>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@2 {
#address-cells = <1>;
#size-cells = <0>;
reg = <2>;
vin10isp1: endpoint@1 {
reg = <1>;
remote-endpoint = <&isp1vin10>;
};
};
};
};
vin11: video@e6efb000 {
compatible = "renesas,vin-r8a779h0";
reg = <0 0xe6efb000 0 0x1000>;
interrupts = <GIC_SPI 540 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cpg CPG_MOD 809>;
power-domains = <&sysc R8A779H0_PD_C4>;
resets = <&cpg 809>;
renesas,id = <11>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@2 {
#address-cells = <1>;
#size-cells = <0>;
reg = <2>;
vin11isp1: endpoint@1 {
reg = <1>;
remote-endpoint = <&isp1vin11>;
};
};
};
};
vin12: video@e6efc000 {
compatible = "renesas,vin-r8a779h0";
reg = <0 0xe6efc000 0 0x1000>;
interrupts = <GIC_SPI 541 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cpg CPG_MOD 810>;
power-domains = <&sysc R8A779H0_PD_C4>;
resets = <&cpg 810>;
renesas,id = <12>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@2 {
#address-cells = <1>;
#size-cells = <0>;
reg = <2>;
vin12isp1: endpoint@1 {
reg = <1>;
remote-endpoint = <&isp1vin12>;
};
};
};
};
vin13: video@e6efd000 {
compatible = "renesas,vin-r8a779h0";
reg = <0 0xe6efd000 0 0x1000>;
interrupts = <GIC_SPI 542 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cpg CPG_MOD 811>;
power-domains = <&sysc R8A779H0_PD_C4>;
resets = <&cpg 811>;
renesas,id = <13>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@2 {
#address-cells = <1>;
#size-cells = <0>;
reg = <2>;
vin13isp1: endpoint@1 {
reg = <1>;
remote-endpoint = <&isp1vin13>;
};
};
};
};
vin14: video@e6efe000 {
compatible = "renesas,vin-r8a779h0";
reg = <0 0xe6efe000 0 0x1000>;
interrupts = <GIC_SPI 543 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cpg CPG_MOD 812>;
power-domains = <&sysc R8A779H0_PD_C4>;
resets = <&cpg 812>;
renesas,id = <14>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@2 {
#address-cells = <1>;
#size-cells = <0>;
reg = <2>;
vin14isp1: endpoint@1 {
reg = <1>;
remote-endpoint = <&isp1vin14>;
};
};
};
};
vin15: video@e6eff000 {
compatible = "renesas,vin-r8a779h0";
reg = <0 0xe6eff000 0 0x1000>;
interrupts = <GIC_SPI 544 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cpg CPG_MOD 813>;
power-domains = <&sysc R8A779H0_PD_C4>;
resets = <&cpg 813>;
renesas,id = <15>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@2 {
#address-cells = <1>;
#size-cells = <0>;
reg = <2>;
vin15isp1: endpoint@1 {
reg = <1>;
remote-endpoint = <&isp1vin15>;
};
};
};
};
dmac1: dma-controller@e7350000 {
compatible = "renesas,dmac-r8a779h0",
"renesas,rcar-gen4-dmac";
@ -1152,6 +1600,224 @@
interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
};
csi40: csi2@fe500000 {
compatible = "renesas,r8a779h0-csi2";
reg = <0 0xfe500000 0 0x40000>;
interrupts = <GIC_SPI 499 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cpg CPG_MOD 331>;
power-domains = <&sysc R8A779H0_PD_C4>;
resets = <&cpg 331>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
};
port@1 {
reg = <1>;
csi40isp0: endpoint {
remote-endpoint = <&isp0csi40>;
};
};
};
};
csi41: csi2@fe540000 {
compatible = "renesas,r8a779h0-csi2";
reg = <0 0xfe540000 0 0x40000>;
interrupts = <GIC_SPI 500 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cpg CPG_MOD 400>;
power-domains = <&sysc R8A779H0_PD_C4>;
resets = <&cpg 400>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
};
port@1 {
reg = <1>;
csi41isp1: endpoint {
remote-endpoint = <&isp1csi41>;
};
};
};
};
isp0: isp@fed00000 {
compatible = "renesas,r8a779h0-isp";
reg = <0 0xfed00000 0 0x10000>;
interrupts = <GIC_SPI 473 IRQ_TYPE_LEVEL_LOW>;
clocks = <&cpg CPG_MOD 612>;
power-domains = <&sysc R8A779H0_PD_A3ISP0>;
resets = <&cpg 612>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0>;
isp0csi40: endpoint@0 {
reg = <0>;
remote-endpoint = <&csi40isp0>;
};
};
port@1 {
reg = <1>;
isp0vin00: endpoint {
remote-endpoint = <&vin00isp0>;
};
};
port@2 {
reg = <2>;
isp0vin01: endpoint {
remote-endpoint = <&vin01isp0>;
};
};
port@3 {
reg = <3>;
isp0vin02: endpoint {
remote-endpoint = <&vin02isp0>;
};
};
port@4 {
reg = <4>;
isp0vin03: endpoint {
remote-endpoint = <&vin03isp0>;
};
};
port@5 {
reg = <5>;
isp0vin04: endpoint {
remote-endpoint = <&vin04isp0>;
};
};
port@6 {
reg = <6>;
isp0vin05: endpoint {
remote-endpoint = <&vin05isp0>;
};
};
port@7 {
reg = <7>;
isp0vin06: endpoint {
remote-endpoint = <&vin06isp0>;
};
};
port@8 {
reg = <8>;
isp0vin07: endpoint {
remote-endpoint = <&vin07isp0>;
};
};
};
};
isp1: isp@fed20000 {
compatible = "renesas,r8a779h0-isp";
reg = <0 0xfed20000 0 0x10000>;
interrupts = <GIC_SPI 474 IRQ_TYPE_LEVEL_LOW>;
clocks = <&cpg CPG_MOD 613>;
power-domains = <&sysc R8A779H0_PD_A3ISP0>;
resets = <&cpg 613>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0>;
isp1csi41: endpoint@1 {
reg = <1>;
remote-endpoint = <&csi41isp1>;
};
};
port@1 {
reg = <1>;
isp1vin08: endpoint {
remote-endpoint = <&vin08isp1>;
};
};
port@2 {
reg = <2>;
isp1vin09: endpoint {
remote-endpoint = <&vin09isp1>;
};
};
port@3 {
reg = <3>;
isp1vin10: endpoint {
remote-endpoint = <&vin10isp1>;
};
};
port@4 {
reg = <4>;
isp1vin11: endpoint {
remote-endpoint = <&vin11isp1>;
};
};
port@5 {
reg = <5>;
isp1vin12: endpoint {
remote-endpoint = <&vin12isp1>;
};
};
port@6 {
reg = <6>;
isp1vin13: endpoint {
remote-endpoint = <&vin13isp1>;
};
};
port@7 {
reg = <7>;
isp1vin14: endpoint {
remote-endpoint = <&vin14isp1>;
};
};
port@8 {
reg = <8>;
isp1vin15: endpoint {
remote-endpoint = <&vin15isp1>;
};
};
};
};
prr: chipid@fff00044 {
compatible = "renesas,prr";
reg = <0 0xfff00044 0 4>;