Yes I am using Non continuous memory. I have two variants of the boards. On one type of board. I use two DDRs of 128MB each on CSD0 and CSD1. In that case it works, also I see Linux utilizing 256MB memory.

On board with 32MB DDRs on CSD0 and CSD1 each, I see that ping commands calls fec_send in fec_imx.c (FEC driver for imx27) and after enabling dma it hangs.

Is there any change required for initiazation of DMA due change id DDR size from 128MB to 32 MB on each chipselect CSD0 and CSD1.

On Mon, Aug 23, 2010 at 12:46 PM, Juergen Beisert <jbe@pengutronix.de> wrote:
kuldeep ghan wrote:
> [...]
>  I am adding two device using armlinux_add_dram() each with 32MB size and
> map_base address of 0xA0000000 and 0xB0000000 respectively.. Is that fine
> or Can I have one device registered with map_base address of 0xA0000000 and
> 64MB size??

You are using non continuous memory. I'm not sure, if that is handled in
barebox correctly. Also Linux may have a problem with this kind of memory
organization.

jbe

--
Pengutronix e.K.                              | Juergen Beisert             |
Linux Solutions for Science and Industry      | Phone: +49-8766-939 228     |
Vertretung Sued/Muenchen, Germany             | Fax:   +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686              | http://www.pengutronix.de/  |