1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: "http://devicetree.org/schemas/gpu/host1x/nvidia,tegra210-nvjpg.yaml#" 5$schema: "http://devicetree.org/meta-schemas/core.yaml#" 6 7title: Device tree binding for NVIDIA Tegra NVJPG 8 9description: | 10 NVJPG is the hardware JPEG decoder and encoder present on NVIDIA Tegra210 11 and newer chips. It is located on the Host1x bus and typically programmed 12 through Host1x channels. 13 14maintainers: 15 - Thierry Reding <treding@gmail.com> 16 - Mikko Perttunen <mperttunen@nvidia.com> 17 18properties: 19 $nodename: 20 pattern: "^nvjpg@[0-9a-f]*$" 21 22 compatible: 23 enum: 24 - nvidia,tegra210-nvjpg 25 - nvidia,tegra186-nvjpg 26 - nvidia,tegra194-nvjpg 27 28 reg: 29 maxItems: 1 30 31 clocks: 32 maxItems: 1 33 34 clock-names: 35 items: 36 - const: nvjpg 37 38 resets: 39 maxItems: 1 40 41 reset-names: 42 items: 43 - const: nvjpg 44 45 power-domains: 46 maxItems: 1 47 48 iommus: 49 maxItems: 1 50 51 dma-coherent: true 52 53 interconnects: 54 items: 55 - description: DMA read memory client 56 - description: DMA write memory client 57 58 interconnect-names: 59 items: 60 - const: dma-mem 61 - const: write 62 63required: 64 - compatible 65 - reg 66 - clocks 67 - clock-names 68 - resets 69 - reset-names 70 - power-domains 71 72additionalProperties: false 73 74examples: 75 - | 76 #include <dt-bindings/clock/tegra186-clock.h> 77 #include <dt-bindings/memory/tegra186-mc.h> 78 #include <dt-bindings/power/tegra186-powergate.h> 79 #include <dt-bindings/reset/tegra186-reset.h> 80 81 nvjpg@15380000 { 82 compatible = "nvidia,tegra186-nvjpg"; 83 reg = <0x15380000 0x40000>; 84 clocks = <&bpmp TEGRA186_CLK_NVJPG>; 85 clock-names = "nvjpg"; 86 resets = <&bpmp TEGRA186_RESET_NVJPG>; 87 reset-names = "nvjpg"; 88 89 power-domains = <&bpmp TEGRA186_POWER_DOMAIN_NVJPG>; 90 interconnects = <&mc TEGRA186_MEMORY_CLIENT_NVJPGSRD &emc>, 91 <&mc TEGRA186_MEMORY_CLIENT_NVJPGSWR &emc>; 92 interconnect-names = "dma-mem", "write"; 93 iommus = <&smmu TEGRA186_SID_NVJPG>; 94 }; 95