rk3288, rk3036, rk312x, vpu: new vpu driver.
[firefly-linux-kernel-4.4.55.git] / arch / arm / boot / dts / rk312x.dtsi
index b39e094dc4ca5112af6c66147b09aab84ea4aca9..607235eb277da1b614f58c25fe3dd68f8ca3af6c 100755 (executable)
                status = "disabled";
        };
 
-       vpu: vpu_service@10106000 {
-               compatible = "vpu_service";
+       vpu: vpu_service {
+               compatible = "rockchip,vpu_sub";
                iommu_enabled = <1>;
                reg = <0x10106000 0x800>;
-               interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
+               interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
+                            <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
                interrupt-names = "irq_enc", "irq_dec";
-               clocks = <&clk_vdpu>, <&hclk_vdpu>;
-               clock-names = "aclk_vcodec", "hclk_vcodec";
+               dev_mode = <0>;
                name = "vpu_service";
-               status = "okay";
        };
 
-       hevc: hevc_service@10104000 {
-               compatible = "rockchip,hevc_service";
+       hevc: hevc_service {
+               compatible = "rockchip,hevc_sub";
                iommu_enabled = <1>;
                reg = <0x10104000 0x400>;
                interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>;
                interrupt-names = "irq_dec";
+               dev_mode = <1>;
+               name = "hevc_service";
+       };
+
+       vpu_combo: vpu_combo@ff9a0000 {
+               compatible = "rockchip,vpu_combo";
+               subcnt = <2>;
+               rockchip,sub = <&vpu>, <&hevc>;
                clocks = <&clk_vdpu>, <&hclk_vdpu>, <&clk_hevc_core>;
                clock-names = "aclk_vcodec", "hclk_vcodec", "clk_core";
-               name = "hevc_service";
+               mode_bit = <15>;
+               mode_ctrl = <0x144>;
+               name = "vpu_combo";
                status = "okay";
        };