What is the address of CPMEM ?

cancel
Showing results for 
Search instead for 
Did you mean: 

What is the address of CPMEM ?

1,392 Views
KlausGuertler
Contributor II

Hallo,
I try to make a test programm (without Linux...) for IPU/CSI to get a picture from a camera (IPU2/CSI1 parallel interface) to memory via IDMA. At this, the question rise what the address for the CPMEM to configure the IDMA is? In reference manuale I found, that CPMEM is "Memory mapped" but I found no value for the address where CPMEM is situated and I also did not found a register to put in the address for CPMEM.

In "iMX6_Platform_SDK\sdk\include\mx6dq\ipu_reg_def.h" I found :

#define IPU_REGISTERS_OFFSET                         0x00200000

#define IPU_MEMORY_OFFSET                             IPU_REGISTERS_OFFSET + 0x00100000

#define CPMEM_WORD0_DATA0_INT__ADDR        IPU_MEMORY_OFFSET+0x0000000

From this, the address for the start of CPMEM in case of IPU2  is 0x02D00000.

When I try to read from this address or to write to this address I got an bus error exception (0x10). This happens both in UBOOT (md.l 0x02D0000 1)

and in my application which I load with JTAG (Lauterbach/TRACE32). So I have to assume that there is no memory or registers at this address?

Where are the values used in SDK for IPU_REGISTERS_OFFSET and IPU_MEMORY_OFFSET documented in datasheet or reference manual ?

How do I tell the IDMAC where the CPMEM with his configuration is ?

Thanks in advance for answers.

Klaus

Labels (1)
Tags (2)
3 Replies

182 Views
Yuri
NXP TechSupport
NXP TechSupport

From Table 2-1 (System memory map) of the i.MX6 (Q) Reference Manual IPU-1 base address is 0x0260_0000.
So, CPMEM address is 0x0270_0000.
 

182 Views
KlausGuertler
Contributor II

Hi Yuri Muhin,

the base address of the IPU is defined in Table 2-1, but not the offset for CPMEM. And when I take the values from

the SDK, I get 0x02600000 + 0x00200000 + 0x00100000 = 0x02900000. And still there is the question where these

offsets from SDK (0x00200000 and 0x00100000) comming from. Where are these values documented.
Klaus

0 Kudos

182 Views
KlausGuertler
Contributor II

Hi,

I verified the CPMEM address for IPU2 as 0x02B0_0000. It works fine. But still there is the question where I can find this in the documents and still there are the strange defines also in the latest SDK's file ipu_reg_def.h. See my initial posting.

Klaus