[PATCH 3/3] arm64: dts: imx95: add SMMU support for NETC

Frank Li Frank.li at nxp.com
Wed May 28 08:09:38 PDT 2025


On Wed, May 28, 2025 at 04:34:33PM +0800, Wei Fang wrote:
> The i.MX95 NETC supports SMMU, so add SMMU support.
>
> Signed-off-by: Wei Fang <wei.fang at nxp.com>
> ---
>  arch/arm64/boot/dts/freescale/imx95-15x15-evk.dts | 8 ++++++++
>  arch/arm64/boot/dts/freescale/imx95.dtsi          | 8 ++++++++
>  2 files changed, 16 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/freescale/imx95-15x15-evk.dts b/arch/arm64/boot/dts/freescale/imx95-15x15-evk.dts
> index 9f4d0899a94d..e9a5fb36f5d0 100644
> --- a/arch/arm64/boot/dts/freescale/imx95-15x15-evk.dts
> +++ b/arch/arm64/boot/dts/freescale/imx95-15x15-evk.dts
> @@ -494,6 +494,14 @@ &netc_bus0 {
>  		  <0x60 &its 0x66 0x1>, //ENETC1 VF1
>  		  <0x80 &its 0x64 0x1>, //ENETC2 PF
>  		  <0xc0 &its 0x67 0x1>;
> +	iommu-map = <0x0 &smmu 0x20 0x1>,
> +		    <0x10 &smmu 0x21 0x1>,
> +		    <0x20 &smmu 0x22 0x1>,
> +		    <0x40 &smmu 0x23 0x1>,
> +		    <0x50 &smmu 0x25 0x1>,
> +		    <0x60 &smmu 0x26 0x1>,
> +		    <0x80 &smmu 0x24 0x1>,
> +		    <0xc0 &smmu 0x27 0x1>;

Do you need iommu-map-mask to mask bus id in case difference probe order
with pcie node?

Frank Li


>  };
>
>  &netc_emdio {
> diff --git a/arch/arm64/boot/dts/freescale/imx95.dtsi b/arch/arm64/boot/dts/freescale/imx95.dtsi
> index 632631a29112..32a91d7b51e5 100644
> --- a/arch/arm64/boot/dts/freescale/imx95.dtsi
> +++ b/arch/arm64/boot/dts/freescale/imx95.dtsi
> @@ -1861,6 +1861,14 @@ netc_bus0: pcie at 4ca00000 {
>  					  <0x90 &its 0x65 0x1>, //ENETC2 VF0
>  					  <0xa0 &its 0x66 0x1>, //ENETC2 VF1
>  					  <0xc0 &its 0x67 0x1>; //NETC Timer
> +				iommu-map = <0x0 &smmu 0x20 0x1>,
> +					    <0x10 &smmu 0x21 0x1>,
> +					    <0x20 &smmu 0x22 0x1>,
> +					    <0x40 &smmu 0x23 0x1>,
> +					    <0x80 &smmu 0x24 0x1>,
> +					    <0x90 &smmu 0x25 0x1>,
> +					    <0xa0 &smmu 0x26 0x1>,
> +					    <0xc0 &smmu 0x27 0x1>;
>  					 /* ENETC0~2 and Timer BAR0 - non-prefetchable memory */
>  				ranges = <0x82000000 0x0 0x4cc00000  0x0 0x4cc00000  0x0 0xe0000
>  					 /* Timer BAR2 - prefetchable memory */
> --
> 2.34.1
>



More information about the linux-arm-kernel mailing list