17d096252SMikko Perttunen# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 27d096252SMikko Perttunen%YAML 1.2 37d096252SMikko Perttunen--- 4*c94673e8SRob Herring$id: http://devicetree.org/schemas/gpu/host1x/nvidia,tegra234-nvdec.yaml# 5*c94673e8SRob Herring$schema: http://devicetree.org/meta-schemas/core.yaml# 67d096252SMikko Perttunen 79d69d47fSKrzysztof Kozlowskititle: NVIDIA Tegra234 NVDEC 87d096252SMikko Perttunen 97d096252SMikko Perttunendescription: | 107d096252SMikko Perttunen NVDEC is the hardware video decoder present on NVIDIA Tegra210 117d096252SMikko Perttunen and newer chips. It is located on the Host1x bus and typically 127d096252SMikko Perttunen programmed through Host1x channels. 137d096252SMikko Perttunen 147d096252SMikko Perttunenmaintainers: 157d096252SMikko Perttunen - Thierry Reding <treding@gmail.com> 167d096252SMikko Perttunen - Mikko Perttunen <mperttunen@nvidia.com> 177d096252SMikko Perttunen 187d096252SMikko Perttunenproperties: 197d096252SMikko Perttunen $nodename: 207d096252SMikko Perttunen pattern: "^nvdec@[0-9a-f]*$" 217d096252SMikko Perttunen 227d096252SMikko Perttunen compatible: 237d096252SMikko Perttunen enum: 247d096252SMikko Perttunen - nvidia,tegra234-nvdec 257d096252SMikko Perttunen 267d096252SMikko Perttunen reg: 277d096252SMikko Perttunen maxItems: 1 287d096252SMikko Perttunen 297d096252SMikko Perttunen clocks: 307d096252SMikko Perttunen maxItems: 3 317d096252SMikko Perttunen 327d096252SMikko Perttunen clock-names: 337d096252SMikko Perttunen items: 347d096252SMikko Perttunen - const: nvdec 357d096252SMikko Perttunen - const: fuse 367d096252SMikko Perttunen - const: tsec_pka 377d096252SMikko Perttunen 387d096252SMikko Perttunen resets: 397d096252SMikko Perttunen maxItems: 1 407d096252SMikko Perttunen 417d096252SMikko Perttunen reset-names: 427d096252SMikko Perttunen items: 437d096252SMikko Perttunen - const: nvdec 447d096252SMikko Perttunen 457d096252SMikko Perttunen power-domains: 467d096252SMikko Perttunen maxItems: 1 477d096252SMikko Perttunen 487d096252SMikko Perttunen iommus: 497d096252SMikko Perttunen maxItems: 1 507d096252SMikko Perttunen 517d096252SMikko Perttunen dma-coherent: true 527d096252SMikko Perttunen 537d096252SMikko Perttunen interconnects: 547d096252SMikko Perttunen items: 557d096252SMikko Perttunen - description: DMA read memory client 567d096252SMikko Perttunen - description: DMA write memory client 577d096252SMikko Perttunen 587d096252SMikko Perttunen interconnect-names: 597d096252SMikko Perttunen items: 607d096252SMikko Perttunen - const: dma-mem 617d096252SMikko Perttunen - const: write 627d096252SMikko Perttunen 637d096252SMikko Perttunen nvidia,memory-controller: 647d096252SMikko Perttunen $ref: /schemas/types.yaml#/definitions/phandle 657d096252SMikko Perttunen description: 667d096252SMikko Perttunen phandle to the memory controller for determining information for the NVDEC 677d096252SMikko Perttunen firmware secure carveout. This carveout is configured by the bootloader and 687d096252SMikko Perttunen not accessible to CPU. 697d096252SMikko Perttunen 707d096252SMikko Perttunen nvidia,bl-manifest-offset: 717d096252SMikko Perttunen $ref: /schemas/types.yaml#/definitions/uint32 727d096252SMikko Perttunen description: 737d096252SMikko Perttunen Offset to bootloader manifest from beginning of firmware that was configured by 747d096252SMikko Perttunen the bootloader. 757d096252SMikko Perttunen 767d096252SMikko Perttunen nvidia,bl-code-offset: 777d096252SMikko Perttunen $ref: /schemas/types.yaml#/definitions/uint32 787d096252SMikko Perttunen description: 797d096252SMikko Perttunen Offset to bootloader code section from beginning of firmware that was configured by 807d096252SMikko Perttunen the bootloader. 817d096252SMikko Perttunen 827d096252SMikko Perttunen nvidia,bl-data-offset: 837d096252SMikko Perttunen $ref: /schemas/types.yaml#/definitions/uint32 847d096252SMikko Perttunen description: 857d096252SMikko Perttunen Offset to bootloader data section from beginning of firmware that was configured by 867d096252SMikko Perttunen the bootloader. 877d096252SMikko Perttunen 887d096252SMikko Perttunen nvidia,os-manifest-offset: 897d096252SMikko Perttunen $ref: /schemas/types.yaml#/definitions/uint32 907d096252SMikko Perttunen description: 917d096252SMikko Perttunen Offset to operating system manifest from beginning of firmware that was configured by 927d096252SMikko Perttunen the bootloader. 937d096252SMikko Perttunen 947d096252SMikko Perttunen nvidia,os-code-offset: 957d096252SMikko Perttunen $ref: /schemas/types.yaml#/definitions/uint32 967d096252SMikko Perttunen description: 977d096252SMikko Perttunen Offset to operating system code section from beginning of firmware that was configured by 987d096252SMikko Perttunen the bootloader. 997d096252SMikko Perttunen 1007d096252SMikko Perttunen nvidia,os-data-offset: 1017d096252SMikko Perttunen $ref: /schemas/types.yaml#/definitions/uint32 1027d096252SMikko Perttunen description: 1037d096252SMikko Perttunen Offset to operating system data section from beginning of firmware that was configured 1047d096252SMikko Perttunen by the bootloader. 1057d096252SMikko Perttunen 1067d096252SMikko Perttunenrequired: 1077d096252SMikko Perttunen - compatible 1087d096252SMikko Perttunen - reg 1097d096252SMikko Perttunen - clocks 1107d096252SMikko Perttunen - clock-names 1117d096252SMikko Perttunen - resets 1127d096252SMikko Perttunen - reset-names 1137d096252SMikko Perttunen - power-domains 1147d096252SMikko Perttunen - nvidia,memory-controller 1157d096252SMikko Perttunen - nvidia,bl-manifest-offset 1167d096252SMikko Perttunen - nvidia,bl-code-offset 1177d096252SMikko Perttunen - nvidia,bl-data-offset 1187d096252SMikko Perttunen - nvidia,os-manifest-offset 1197d096252SMikko Perttunen - nvidia,os-code-offset 1207d096252SMikko Perttunen - nvidia,os-data-offset 1217d096252SMikko Perttunen 1227d096252SMikko PerttunenadditionalProperties: false 1237d096252SMikko Perttunen 1247d096252SMikko Perttunenexamples: 1257d096252SMikko Perttunen - | 1267d096252SMikko Perttunen #include <dt-bindings/clock/tegra234-clock.h> 1277d096252SMikko Perttunen #include <dt-bindings/memory/tegra234-mc.h> 1287d096252SMikko Perttunen #include <dt-bindings/power/tegra234-powergate.h> 1297d096252SMikko Perttunen #include <dt-bindings/reset/tegra234-reset.h> 1307d096252SMikko Perttunen 1317d096252SMikko Perttunen nvdec@15480000 { 1327d096252SMikko Perttunen compatible = "nvidia,tegra234-nvdec"; 1337d096252SMikko Perttunen reg = <0x15480000 0x00040000>; 1347d096252SMikko Perttunen clocks = <&bpmp TEGRA234_CLK_NVDEC>, 1357d096252SMikko Perttunen <&bpmp TEGRA234_CLK_FUSE>, 1367d096252SMikko Perttunen <&bpmp TEGRA234_CLK_TSEC_PKA>; 1377d096252SMikko Perttunen clock-names = "nvdec", "fuse", "tsec_pka"; 1387d096252SMikko Perttunen resets = <&bpmp TEGRA234_RESET_NVDEC>; 1397d096252SMikko Perttunen reset-names = "nvdec"; 1407d096252SMikko Perttunen power-domains = <&bpmp TEGRA234_POWER_DOMAIN_NVDEC>; 1417d096252SMikko Perttunen interconnects = <&mc TEGRA234_MEMORY_CLIENT_NVDECSRD &emc>, 1427d096252SMikko Perttunen <&mc TEGRA234_MEMORY_CLIENT_NVDECSWR &emc>; 1437d096252SMikko Perttunen interconnect-names = "dma-mem", "write"; 1447d096252SMikko Perttunen iommus = <&smmu_niso1 TEGRA234_SID_NVDEC>; 1457d096252SMikko Perttunen dma-coherent; 1467d096252SMikko Perttunen 1477d096252SMikko Perttunen nvidia,memory-controller = <&mc>; 1487d096252SMikko Perttunen 1497d096252SMikko Perttunen /* Placeholder values, to be replaced with values from overlay */ 1507d096252SMikko Perttunen nvidia,bl-manifest-offset = <0>; 1517d096252SMikko Perttunen nvidia,bl-data-offset = <0>; 1527d096252SMikko Perttunen nvidia,bl-code-offset = <0>; 1537d096252SMikko Perttunen nvidia,os-manifest-offset = <0>; 1547d096252SMikko Perttunen nvidia,os-data-offset = <0>; 1557d096252SMikko Perttunen nvidia,os-code-offset = <0>; 1567d096252SMikko Perttunen }; 157