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>; |