Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/Documentation/devicetree/bindings/gpu/host1x/nvidia,tegra234-nvdec.yaml
26308 views
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,tegra234-nvdec.yaml#
5
$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7
title: NVIDIA Tegra234 NVDEC
8
9
description: |
10
NVDEC is the hardware video decoder present on NVIDIA Tegra210
11
and newer chips. It is located on the Host1x bus and typically
12
programmed through Host1x channels.
13
14
maintainers:
15
- Thierry Reding <treding@gmail.com>
16
- Mikko Perttunen <mperttunen@nvidia.com>
17
18
properties:
19
$nodename:
20
pattern: "^nvdec@[0-9a-f]*$"
21
22
compatible:
23
enum:
24
- nvidia,tegra234-nvdec
25
26
reg:
27
maxItems: 1
28
29
clocks:
30
maxItems: 3
31
32
clock-names:
33
items:
34
- const: nvdec
35
- const: fuse
36
- const: tsec_pka
37
38
resets:
39
maxItems: 1
40
41
reset-names:
42
items:
43
- const: nvdec
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
63
nvidia,memory-controller:
64
$ref: /schemas/types.yaml#/definitions/phandle
65
description:
66
phandle to the memory controller for determining information for the NVDEC
67
firmware secure carveout. This carveout is configured by the bootloader and
68
not accessible to CPU.
69
70
nvidia,bl-manifest-offset:
71
$ref: /schemas/types.yaml#/definitions/uint32
72
description:
73
Offset to bootloader manifest from beginning of firmware that was configured by
74
the bootloader.
75
76
nvidia,bl-code-offset:
77
$ref: /schemas/types.yaml#/definitions/uint32
78
description:
79
Offset to bootloader code section from beginning of firmware that was configured by
80
the bootloader.
81
82
nvidia,bl-data-offset:
83
$ref: /schemas/types.yaml#/definitions/uint32
84
description:
85
Offset to bootloader data section from beginning of firmware that was configured by
86
the bootloader.
87
88
nvidia,os-manifest-offset:
89
$ref: /schemas/types.yaml#/definitions/uint32
90
description:
91
Offset to operating system manifest from beginning of firmware that was configured by
92
the bootloader.
93
94
nvidia,os-code-offset:
95
$ref: /schemas/types.yaml#/definitions/uint32
96
description:
97
Offset to operating system code section from beginning of firmware that was configured by
98
the bootloader.
99
100
nvidia,os-data-offset:
101
$ref: /schemas/types.yaml#/definitions/uint32
102
description:
103
Offset to operating system data section from beginning of firmware that was configured
104
by the bootloader.
105
106
required:
107
- compatible
108
- reg
109
- clocks
110
- clock-names
111
- resets
112
- reset-names
113
- power-domains
114
- nvidia,memory-controller
115
- nvidia,bl-manifest-offset
116
- nvidia,bl-code-offset
117
- nvidia,bl-data-offset
118
- nvidia,os-manifest-offset
119
- nvidia,os-code-offset
120
- nvidia,os-data-offset
121
122
additionalProperties: false
123
124
examples:
125
- |
126
#include <dt-bindings/clock/tegra234-clock.h>
127
#include <dt-bindings/memory/tegra234-mc.h>
128
#include <dt-bindings/power/tegra234-powergate.h>
129
#include <dt-bindings/reset/tegra234-reset.h>
130
131
nvdec@15480000 {
132
compatible = "nvidia,tegra234-nvdec";
133
reg = <0x15480000 0x00040000>;
134
clocks = <&bpmp TEGRA234_CLK_NVDEC>,
135
<&bpmp TEGRA234_CLK_FUSE>,
136
<&bpmp TEGRA234_CLK_TSEC_PKA>;
137
clock-names = "nvdec", "fuse", "tsec_pka";
138
resets = <&bpmp TEGRA234_RESET_NVDEC>;
139
reset-names = "nvdec";
140
power-domains = <&bpmp TEGRA234_POWER_DOMAIN_NVDEC>;
141
interconnects = <&mc TEGRA234_MEMORY_CLIENT_NVDECSRD &emc>,
142
<&mc TEGRA234_MEMORY_CLIENT_NVDECSWR &emc>;
143
interconnect-names = "dma-mem", "write";
144
iommus = <&smmu_niso1 TEGRA234_SID_NVDEC>;
145
dma-coherent;
146
147
nvidia,memory-controller = <&mc>;
148
149
/* Placeholder values, to be replaced with values from overlay */
150
nvidia,bl-manifest-offset = <0>;
151
nvidia,bl-data-offset = <0>;
152
nvidia,bl-code-offset = <0>;
153
nvidia,os-manifest-offset = <0>;
154
nvidia,os-data-offset = <0>;
155
nvidia,os-code-offset = <0>;
156
};
157
158