SR-IOV on ARM64 system with SMMU
Martin Bayern
martinbayern at outlook.com
Fri Feb 24 14:00:51 PST 2023
hi Robin,
I find this this pcie node in their hardware include, its status is
disabled, there is iommus = <&smmu TEGRA_SID_PCIE5>; and the pcie_ep
is 0x141a0000, is this what you are refer to?
pcie_ep at 141a0000 {
compatible = "nvidia,tegra194-pcie-ep";
power-domains = <&bpmp TEGRA194_POWER_DOMAIN_PCIEX8A>;
reg = <0x00 0x141a0000 0x0 0x00020000 /* appl
registers (128K) */
0x00 0x3a000000 0x0 0x00040000 /*
configuration space (256K) */
0x00 0x3a040000 0x0 0x00040000 /* iATU_DMA reg
space (256K) */
0x00 0x3a080000 0x0 0x00040000 /* DBI reg
space (256K) */
0x1c 0x00000000 0x4 0x00000000>; /* Address
Space (16G) */
reg-names = "appl", "config", "atu_dma", "dbi",
"addr_space";
#address-cells = <3>;
#size-cells = <2>;
status = "disabled";
clocks = <&bpmp_clks TEGRA194_CLK_PEX1_CORE_5>;
clock-names = "core";
resets = <&bpmp_resets TEGRA194_RESET_PEX1_CORE_5_APB>,
<&bpmp_resets TEGRA194_RESET_PEX1_CORE_5>;
reset-names = "apb", "core";
interrupts = <0 53 0x04>; /* controller interrupt */
interrupt-names = "intr";
pinctrl-names = "default";
pinctrl-0 = <&pex_rst_c5_in_state>,
<&clkreq_c5_bi_dir_state>;
nvidia,max-speed = <4>;
nvidia,bar0-size = <0x100000>; /* 1 MB */
nvidia,device-id = /bits/ 16 <0x1AD4>;
nvidia,controller-id = <&bpmp 0x5>;
num-lanes = <8>;
nvidia,tsa-config = <0x0200b004>;
nvidia,aux-clk-freq = <0x13>;
nvidia,aspm-cmrt = <0x3C>;
nvidia,aspm-pwr-on-t = <0x14>;
nvidia,aspm-l0s-entrance-latency = <0x3>;
nvidia,aspm-l1-entrance-latency = <0x5>;
nvidia,host1x = <&host1x>;
num-ib-windows = <2>;
num-ob-windows = <8>;
nvidia,margin-port-cap = <0x194>;
nvidia,margin-lane-cntrl = <0x198>;
nvidia,cfg-link-cap-l1sub = <0x1c4>;
nvidia,event-cntr-ctrl = <0x1d8>;
nvidia,event-cntr-data = <0x1dc>;
nvidia,dvfs-tbl = < 204000000 204000000 204000000
408000000
204000000
204000000 408000000 666000000
204000000
408000000 666000000 1066000000
408000000
666000000 1066000000 2133000000 >;
iommus = <&smmu TEGRA_SID_PCIE5>;
dma-coherent;
iommu-map = <0x0 &smmu TEGRA_SID_PCIE5 0x1000>;
iommu-map-mask = <0x0>;
#if TEGRA_IOMMU_DT_VERSION >= DT_VERSION_2
interconnects = <&mc TEGRA194_MEMORY_CLIENT_PCIE5R>,
<&mc TEGRA194_MEMORY_CLIENT_PCIE5W>;
interconnect-names = "dma-mem", "dma-mem";
#endif
nvidia,bpmp = <&bpmp 5>;
nvidia,aspm-cmrt-us = <60>;
nvidia,aspm-pwr-on-t-us = <20>;
nvidia,aspm-l0s-entrance-latency-us = <3>;
};
Kind regards,
Martin
More information about the linux-arm-kernel
mailing list