i.Mx 6SoloX - Accessing the MU registers

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

i.Mx 6SoloX - Accessing the MU registers

Jump to solution
1,548 Views
finncarlsvi
Contributor III

I'm using the Nit6_SoloX and soon also the Freescale SABRE 6SoloX boards to work with the 6SoloX. I have read about the messaging unit (MU) in the 6SoloX reference manual (page 2715) and understand how the MU works. However, I don't know how to access the registers through my code (C++).

From what I have gathered, registers cannot be accessed through user space. Therefore, I assume that there is some kernel driver that is being applied in the Yocto BSP layer I am using (meta-fsl-arm), giving me access to the registers.

Does anyone know where I can get more information on this? I'm guessing that Freescale provides some documentation on accessing registers from user space, I just haven't found it.

Thanks for any help

Finn

0 Kudos
1 Solution
886 Views
igorpadykov
NXP Employee
NXP Employee

Hi Finn

please look at attached Linux Manual with description MCC driver

in Chapter 53. Also below link gives short example of MCC communication

Communication between asymmetric cores on i.MX6SoloX

Best regards

igor

-----------------------------------------------------------------------------------------------------------------------

Note: If this post answers your question, please click the Correct Answer button. Thank you!

-----------------------------------------------------------------------------------------------------------------------

View solution in original post

3 Replies
886 Views
finncarlsvi
Contributor III

Hi Igor,

The example you gave gives a very good description of how to access the registers from the M4 side and from the A9 side in kernel space. I also found a driver for a character device (imx_mcc_tty.c) in drivers/char/imx_amp, but it seems to be incomplete.

When I access /dev/mccTTY to write, the driver will both read (in blocking mode) and then write over mcc.

When I access to read, it does not seem to clear the buffer, and so eventually the M4 side will complain that the buffer is full.

I've started rewriting the char driver, but wanted to check first to see if anyone else has solved this before? Or if I missed anything...

Cheers

Finn

0 Kudos
887 Views
igorpadykov
NXP Employee
NXP Employee

Hi Finn

please look at attached Linux Manual with description MCC driver

in Chapter 53. Also below link gives short example of MCC communication

Communication between asymmetric cores on i.MX6SoloX

Best regards

igor

-----------------------------------------------------------------------------------------------------------------------

Note: If this post answers your question, please click the Correct Answer button. Thank you!

-----------------------------------------------------------------------------------------------------------------------

887 Views
finncarlsvi
Contributor III

Thank you

0 Kudos