Path: blob/master/Documentation/devicetree/bindings/gpu/host1x/nvidia,tegra234-nvdec.yaml
26308 views
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)1%YAML 1.22---3$id: http://devicetree.org/schemas/gpu/host1x/nvidia,tegra234-nvdec.yaml#4$schema: http://devicetree.org/meta-schemas/core.yaml#56title: NVIDIA Tegra234 NVDEC78description: |9NVDEC is the hardware video decoder present on NVIDIA Tegra21010and newer chips. It is located on the Host1x bus and typically11programmed through Host1x channels.1213maintainers:14- Thierry Reding <treding@gmail.com>15- Mikko Perttunen <mperttunen@nvidia.com>1617properties:18$nodename:19pattern: "^nvdec@[0-9a-f]*$"2021compatible:22enum:23- nvidia,tegra234-nvdec2425reg:26maxItems: 12728clocks:29maxItems: 33031clock-names:32items:33- const: nvdec34- const: fuse35- const: tsec_pka3637resets:38maxItems: 13940reset-names:41items:42- const: nvdec4344power-domains:45maxItems: 14647iommus:48maxItems: 14950dma-coherent: true5152interconnects:53items:54- description: DMA read memory client55- description: DMA write memory client5657interconnect-names:58items:59- const: dma-mem60- const: write6162nvidia,memory-controller:63$ref: /schemas/types.yaml#/definitions/phandle64description:65phandle to the memory controller for determining information for the NVDEC66firmware secure carveout. This carveout is configured by the bootloader and67not accessible to CPU.6869nvidia,bl-manifest-offset:70$ref: /schemas/types.yaml#/definitions/uint3271description:72Offset to bootloader manifest from beginning of firmware that was configured by73the bootloader.7475nvidia,bl-code-offset:76$ref: /schemas/types.yaml#/definitions/uint3277description:78Offset to bootloader code section from beginning of firmware that was configured by79the bootloader.8081nvidia,bl-data-offset:82$ref: /schemas/types.yaml#/definitions/uint3283description:84Offset to bootloader data section from beginning of firmware that was configured by85the bootloader.8687nvidia,os-manifest-offset:88$ref: /schemas/types.yaml#/definitions/uint3289description:90Offset to operating system manifest from beginning of firmware that was configured by91the bootloader.9293nvidia,os-code-offset:94$ref: /schemas/types.yaml#/definitions/uint3295description:96Offset to operating system code section from beginning of firmware that was configured by97the bootloader.9899nvidia,os-data-offset:100$ref: /schemas/types.yaml#/definitions/uint32101description:102Offset to operating system data section from beginning of firmware that was configured103by the bootloader.104105required:106- compatible107- reg108- clocks109- clock-names110- resets111- reset-names112- power-domains113- nvidia,memory-controller114- nvidia,bl-manifest-offset115- nvidia,bl-code-offset116- nvidia,bl-data-offset117- nvidia,os-manifest-offset118- nvidia,os-code-offset119- nvidia,os-data-offset120121additionalProperties: false122123examples:124- |125#include <dt-bindings/clock/tegra234-clock.h>126#include <dt-bindings/memory/tegra234-mc.h>127#include <dt-bindings/power/tegra234-powergate.h>128#include <dt-bindings/reset/tegra234-reset.h>129130nvdec@15480000 {131compatible = "nvidia,tegra234-nvdec";132reg = <0x15480000 0x00040000>;133clocks = <&bpmp TEGRA234_CLK_NVDEC>,134<&bpmp TEGRA234_CLK_FUSE>,135<&bpmp TEGRA234_CLK_TSEC_PKA>;136clock-names = "nvdec", "fuse", "tsec_pka";137resets = <&bpmp TEGRA234_RESET_NVDEC>;138reset-names = "nvdec";139power-domains = <&bpmp TEGRA234_POWER_DOMAIN_NVDEC>;140interconnects = <&mc TEGRA234_MEMORY_CLIENT_NVDECSRD &emc>,141<&mc TEGRA234_MEMORY_CLIENT_NVDECSWR &emc>;142interconnect-names = "dma-mem", "write";143iommus = <&smmu_niso1 TEGRA234_SID_NVDEC>;144dma-coherent;145146nvidia,memory-controller = <&mc>;147148/* Placeholder values, to be replaced with values from overlay */149nvidia,bl-manifest-offset = <0>;150nvidia,bl-data-offset = <0>;151nvidia,bl-code-offset = <0>;152nvidia,os-manifest-offset = <0>;153nvidia,os-data-offset = <0>;154nvidia,os-code-offset = <0>;155};156157158