Hello,
Please look at my comments below.
1.
> EIM Module should be enabled by doing the required pin muxing.
In addition to reserving the needed pins, using pin mux-ing, it is required
to configure the EIM module. Please look at section 22.6 (Initialization Information) of the i.MX6 D/Q Reference Manual, linked below.
http://www.nxp.com/assets/documents/data/en/reference-manuals/IMX6DQRM.pdf
2.
> Address range of CS0 can be configured in the pin muxing itself.
No, please look at section 22.4 (Chip Select Memory Map) about
EIM memory map configuring.
3.
> A simple memory read/write functions supported by linux can be used
> to read and write the external memory.
Generally - yes.
4.
> how to create buffers in DDR3 ram. I want to create 3 buffers of size
> 128KB each starting from some fixed location.
Linux memory allocation strategy does not allow to fix buffer addresses.
But this relates to DRAM memory. To support EIM address range, You may
design own EIM driver. As driver example :
Kernel_Unico/board-mx6q_sabreauto.c at master · UDOOboard/Kernel_Unico · GitHub
Have a great day,
Yuri
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------