Host1x Device Node
host1x: host1x@13e00000 {
compatible = "nvidia,tegra234-host1x", "simple-bus"; reg = <0x0 0x13e40000 0x0 0x00010000>,
<0x0 0x13e10000 0x0 0x00010000>,
<0x0 0x13ef0000 0x0 0x00040000>,
<0x0 0x60000000 0x0 0x04000000>,
<0x0 0x13e00000 0x0 0x00010000>;
reg-names = "guest", "hypervisor", "actmon", "sem-syncpt-shim", "common";
interrupts = <0 448 0x04>,
<0 449 0x04>,
<0 450 0x04>,
<0 451 0x04>,
<0 452 0x04>,
<0 453 0x04>,
<0 454 0x04>,
<0 455 0x04>,
<0 263 0x04>;
nvidia,vmid = <1>;
nvidia,host1x-ctx-streamid = <&smmu_niso0 TEGRA_SID_NISO0_HOST1X_CTX0
&smmu_niso1 TEGRA_SID_NISO1_HOST1X_CTX0>;
nvidia,ch-base = <0>;
nvidia,nb-channels = <47>;
nvidia,nb-hw-pts = <1024>;
nvidia,pts-base = <0>;
nvidia,nb-pts = <576>;
nvidia,gpu-syncpt-pool = <0 128>;
nvidia,vi-syncpt-pool = <288 144>;
vmserver-owns-engines = <1>; ivc-queue0 = <&tegra_hv 42>;
iommus = <&smmu_niso1 TEGRA_SID_NISO1_HC>; status = "okay";
host1x_ctx0: niso0_ctx0 {
compatible = "nvidia,tegra186-iommu-context";
iommus = <&smmu_niso0 TEGRA_SID_NISO0_HOST1X_CTX0>; status = "okay";
};
host1x_ctx0n1: niso1_ctx0 {
compatible = "nvidia,tegra186-iommu-context";
iommus = <&smmu_niso1 TEGRA_SID_NISO1_HOST1X_CTX0>; status = "okay";
};
vic@15340000 {
compatible = "nvidia,tegra234-vic";
iommus = <&smmu_niso1 TEGRA_SID_NISO1_VIC>; status = "okay";
};
nvjpg@15380000 {
compatible = "nvidia,tegra234-nvjpg";
iommus = <&smmu_niso1 TEGRA_SID_NISO1_NVJPG>; status = "okay";
};
nvjpg1@15540000 {
compatible = "nvidia,tegra234-nvjpg";
iommus = <&smmu_niso0 TEGRA_SID_NISO0_NVJPG1>; status = "okay";
};
tsec@15500000 {
compatible = "nvidia,tegra234-tsec";
iommus = <&smmu_niso1 TEGRA_SID_NISO1_TSEC>; status = "okay";
};
nvdec@15480000 {
compatible = "nvidia,tegra234-nvdec";
iommus = <&smmu_niso1 TEGRA_SID_NISO1_NVDEC>; status = "okay";
};
nvenc@154c0000 {
compatible = "nvidia,tegra234-nvenc";
iommus = <&smmu_niso0 TEGRA_SID_NISO0_NVENC>; status = "okay";
};
ofa@15a50000 {
compatible = "nvidia,tegra234-ofa";
iommus = <&smmu_niso0 TEGRA_SID_NISO0_OFA>; status = "okay";
};
};
Properties
This section lists the properties that are used across different platform configurations. Some properties that are applicable only to some specific platform configuration are specified.
Compatibility String "compatible"
Description | Strings pecifying the compatibility of the Host1x Device Node |
Customizable | No |
Type | String |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | NA |
MinValue | NA |
Recommended | “nvidia,tegra234-host1x-hv” |
Virtual Machine Host1x ID "nvidia,vmid"
Description | ID corresponding to the Host1x guest page allocated to the Guest VM. |
Customizable | No |
Type | Unsigned integer |
Unit | NA |
Optional | No |
Resolution | 1 |
MaxValue | 8 |
MinValue | 1 |
Recommended | Based on the platform configuration |
Register Names "reg-names"
Description |
List of Host1x MMIO register page names which are allowed to be accessed by NvHost from the Guest VM. |
Customizable | No |
Type | List<String> |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | NA |
MinValue | NA |
Recommended |
<AV+Q configuration>: "guest", "sem-syncpt-shim"; <AV+L configuration>: "guest", "hypervisor", "actmon", "sem-syncpt-shim", "common"; |
Register Apertures "reg"
Description |
List of Host1x MMIO register page apertures which are allowed to be accessedby NvHost from the Guest VM. Type of page for each aperture is identified by the “reg-names” entry of the same index. |
Customizable | No |
Type | List<Aperture start, Aperture Size> |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | NA |
MinValue | NA |
Recommended | Valuesfetched from the Host1x HW IAS |
Interrupts "interrupts"
Description | Listof Host1x syncpoint interrupt lines assigned to the Guest VM. |
Customizable | No |
Type | List<IRQ number> |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | NA |
MinValue | NA |
Recommended |
Valuesfetched from the Host1x HW IAS based on platform configuration. |
Host1x Shared StreamID "nvidia,host1x-ctx-streamid"
Description |
FallbackstreamId to access the data buffers in case context pools are not defined by the platform configuration. |
Customizable | No |
Type | <SMMUinstance, StreamId> |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | NA |
MinValue | NA |
Recommended | Basedon the platform configuration |
Host1x Channel Pool Base "nvidia,ch-base"
Description |
Baseof the Host1x channel pool which can be accessed from the Guest VM via the NvHost. |
Customizable | Yes |
Type | Unsignedinteger |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | 62 |
MinValue | 0 |
Recommended | Basedon the platform configuration |
Host1x Channel Pool Count "nvidia,nb-channels"
Description |
Sizeof the Host1x channel pool which can be accessed from the Guest VM via the NvHost. |
Customizable | Yes |
Type | Unsignedinteger |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | 63 |
MinValue | 0 |
Recommended | Basedon the platform configuration |
Host1x Syncpoint Total Count "nvidia,nb-hw-pts"
Description | Totalnumber of Host1x HW syncpoints available in the SoC. |
Customizable | No |
Type | Unsignedinteger |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | NA |
MinValue | NA |
Recommended | 1024 |
Host1x Syncpoint Pool Base "nvidia,pts-base"
Description |
Baseof the Host1x syncpoints pool which can be incremented from the Guest VM. |
Customizable | Yes |
Type | Unsignedinteger |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | 1023 |
MinValue | 0 |
Recommended | Basedon platform configuration |
Host1x Syncpoint Pool Count "nvidia,nb-pts"
Description |
Sizeof the Host1x syncpoints pool which can be incremented from the Guest VM. |
Customizable | Yes |
Type | Unsignedinteger |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | 1024 |
MinValue | 0 |
Recommended | Basedon platform configuration |
Host1x Syncpoint Pool for GPU "nviida,gpu-syncpt-pool"
Description |
Host1x syncpoint pool which are write accessible from GPU and hence allocated exclusively for GPU use cases. Pool is outside of the generic pool explained earlier. Note:Only applicable to AV+Q Safety configuration |
Customizable | Yes |
Type | <Poolbase, Pool size> |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | NA |
MinValue | NA |
Recommended | Based on platform configuration |
Host1x Syncpoint Pool for VI "nviida,vi-syncpt-pool"
Description |
Host1x syncpoints pool which are exclusively allocated for the VI use cases. Pool is within the generic pool explained earlier. Note:Only applicable to AV+Q Safety configuration |
Customizable | Yes |
Type | <Poolbase, Pool size> |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | NA |
MinValue | NA |
Recommended | Based on platform configuration |
Engine Ownership Flag "vmserver-owns-engines"
Description |
Flag specifying whether the engine ownership belongs to NvHost Server. Note:Only applicable to AV+L configuration |
Customizable | No |
Type | Unsigned Integer |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | 1 |
MinValue | 0 |
Recommended | 1 |
IVC Queue Identifier "ivc-queue0"
Description |
Unique identifier of the IVC Queue created to communicate with the NvHost Server. |
Customizable | No |
Type | UnsignedInteger |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | NA |
MinValue | NA |
Recommended | Based on the platform configuration |
Host1x StreamId Info "iommus"
Description |
Set of stream Id info which are assigned for Host1x to perform DMA. StreamId used from the Guest VM is derived based on the VMID. |
Customizable | No |
Type | List<SMMU instance, Stream Id> |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | NA |
MinValue | NA |
Recommended | Based on platform configuration |
Host1x Device Status Flag "status"
Description | Flag specifying whether the Host1x device is enabled. |
Customizable | Yes |
Type | String |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | “disabled” |
MinValue | “okay” |
Recommended | “okay” |
Host1x Context Node Entry "host1x_ctx"
Description |
Device Tree Node specifying the properties of the Host1x contexts which are allocated to the VM. |
Customizable | Yes |
Type | Host1xContext Node |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | NA |
MinValue | NA |
Recommended | Based on platform configuration |
VIC Engine Node "vic"
Description |
Device Tree Node specifying the properties of the VIC engine needed for NvHost Driver. |
Customizable | Yes |
Type | Host1xEngine Node |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | NA |
MinValue | NA |
Recommended |
compatible = "nvidia,tegra234-vic"; iommus= <&smmu_niso1 TEGRA_SID_NISO1_VIC>; status = <Based on platform configuration>; |
NVJPG Engine Node "nvjpg"
Description |
Device Tree Node specifying the properties of the first instance of NVJPG engine needed for NvHost Driver. |
Customizable | Yes |
Type | Host1xEngine Node |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | NA |
MinValue | NA |
Recommended |
compatible = "nvidia,tegra234-nvjpg"; iommus= <&smmu_niso1 TEGRA_SID_NISO1_NVJPG>; status = <Based on platform configuration>; |
NVJPG1 Engine Node "nvjpg1"
Description |
Device Tree Node specifying the properties of the second instance of NVJPG engine needed for NvHost Driver. |
Customizable | Yes |
Type | Host1xEngine Node |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | NA |
MinValue | NA |
Recommended |
compatible = "nvidia,tegra234-nvjpg"; iommus= <&smmu_niso0 TEGRA_SID_NISO0_NVJPG1>; status = <Based on platform configuration>; |
NVDEC Engine Node "nvdec"
Description |
Device Tree Node specifying the properties of the NVDEC engine needed for NvHost Driver. |
Customizable | Yes |
Type | Host1xEngine Node |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | NA |
MinValue | NA |
Recommended |
compatible = "nvidia,tegra234-nvdec"; iommus= <&smmu_niso1 TEGRA_SID_NISO1_NVDEC>; status = <Based on platform configuration>; |
NVENC Engine Node "nvenc"
Description |
Device Tree Node specifying the properties of the NVENC engine needed for NvHost Driver. |
Customizable | Yes |
Type | Host1xEngine Node |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | NA |
MinValue | NA |
Recommended |
compatible = "nvidia,tegra234-nvenc"; iommus= <&smmu_niso0 TEGRA_SID_NISO0_NVENC>; status = <Based on platform configuration>; |
OFA Engine Node "ofa"
Description |
DeviceTree Node specifying the properties of the OFA engine needed for NvHost Driver. |
Customizable | Yes |
Type | Host1xEngine Node |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | NA |
MinValue | NA |
Recommended |
compatible = "nvidia,tegra234-ofa"; iommus= <&smmu_niso0 TEGRA_SID_NISO0_OFA>; status = <Based on platform configuration>; |
TSEC Engine Node "tsec"
Description |
Device Tree Node specifying the properties of the TSEC engine needed for NvHost Driver. Note:Only applicable for AV+L configuration |
Customizable | Yes |
Type | Host1xEngine Node |
Unit | NA |
Optional | No |
Resolution | NA |
MaxValue | NA |
MinValue | NA |
Recommended |
compatible = "nvidia,tegra234-tsec"; iommus= <&smmu_niso1 TEGRA_SID_NISO1_TSEC>; status = <Based on platform configuration>; |