Hello everybody in the i.MX community ,
we have a problem when trying to access the IIM module (to blow the fuses) of an iMX53 via AHB, which simply seems not possible so far (we already developed the same for an iMX6 and we didn't have this problem).
We have already found a way to do it through APB and the core registers (using ARM assembly instructions), but we would still like to know why it is not possible to do it through AHB.
So, according to the iMX53 reference manual, the IIM is a peripheral component defined in the AIPSTZ-2- Off Platform address space. Therefore:
1. Is some special configuration of the AHB to IP Bridge (AIPSTZ) required?
The reference manual defines the AIPSTZ_OPACRs registers set, as the set of registers controlling the access levels for each block/module. Therefore and to reach the IIM, the AIPSTZ-2-OPACR6 is the register which should be set in this case. The problem here is that the address where to find this register (PACR0_Offset for AIPSTZ-2) is not properly defined in the manual, or we cannot find it (see iMX53_support_pic1.jpg attached).
2. Once point 1. is clear, under which address should we find the IIM module (through the AHB)? Should it be found under the address defined in the System Memory Map (see iMX53_support_pic2.jpg attached)?
Clearing this two points should be enough for us to clear the topic as well.
Also, we have an additional question:
- We have seen that other debug tools use the address 0xC0008000 to access the core (ARM Debug Unit) via APB, while the reference manual defines the address as 0x40008000. We have tested it and it seems the core is reachable under both addresses so, why is that so?
PS: the hardware we are using is the NXP's i.MX53 Quick Start Board.
Thank your very much in advance for the support received.