UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
138 Views
Registered: ‎05-07-2018

SMMU on ZCU102

Hi to all,

I am developing an Operating System for ArmV8-A that ensures spatial isolation among the tasks using memory virtualization. I already wrote the MMU driver successfully and now I am trying to develop bare-metal driver for the SMMU-500 embedded inside the SoC Xilinx Zynq Ultrascale+.

My code starts the execution in EL2 after Arm Trusted Firmware. In that exception level it does only some configurations and then it goes in EL1. Here it tries to configure the SMMU to work with Gigabit Ethernet Controller that has a DMA inside.

When an ethernet frame arrives, the Controller raises an interrupt but I cannot see any changes in the expected memory addresses. Futhermore the SMMU doesn't raise any interrupt to notify a fault.

I configure the SMMU in this way:

1) In SMMU_sCR0 the bit-fileds CLIENTPD, USFCFG, GFRE, GFIE, GCFGFIE, GCFGFRE are set.
2) All SMMU_SMRn registers are written to 0;
3) All SMMU_CBn_SCTLR are written to 0;
4) 0 is written in the CBIndex field of SMMU_S2CR0;
5) The StreamID of the Etherner Controller is written in the register SMMU_SMR0. Furthermore the bit valid of this register is asserted;
6) SMMU_CB0_TCR, SMMU_CB, SMMU_CB0_MAIR are configured in the same way of the MMU.
7) SMMU_CB0_SCTLR is configured as following (SCTLR_CFIE | SCTLR_CFRE | SCTLR_AFE | SCTLR_TRE | SCTLR_M | SCTLR_S1_ASIDPNE);
8) The CLIENTPD field is clean in the register SMMU_sCR0.

There is some way to debug the SMMU? Can I see the bus transactions to check if the Enthernet Controller requires a write to the correct physical address? Can I know if the SMMU does the translation?

 

Thanks,

Ciro

0 Kudos