IDMA: Setting Up Parameter RAM.
Steve Calfee
calfee at kerbango.com
Fri May 26 04:07:30 EST 2000
At 04:02 PM 5/25/00 +1000, you wrote:
>Hi all,
>
>I am having a little problem with IDMA parameter RAM on the 855T/860.
>The problem is that when I set up the parameter RAM's DMA Channel
>Mode Register, and the IDMA BD Base Address pointer, the CPM does not
>appear to recognise these new values. I am quite confident that I
>am setting up the ports etc for our board correctly. I shall elaborate.
>
>When I power on our board, boot, load our driver for the hardware,
>setup the IDMA/Parameter RAM/Buffer Descriptors and attempt to start
>an IDMA transfer, nothing happens. (reloading driver and retries
>do not work)
>
>When I then hit the reset button (no power cycle) and go through the
>same ritual, IDMA works fine.
>
>The reason being is that values for the IDMA Parameter RAM DMA Channel
>mode register (DCMR) and IDMA BD Base Address pointer (IBASE) that
>were written in the first attempt on power-on are preserved in
>DPRAM over the reboot. Why would these value apparently be written
>in the first attempt, but appear not to be recognised by the CPM???
>
>In addition, if I power on, and use the boot loader to program the
>IDMA Parameter RAM DCMR and IBASE elements, then boot Linux, load
>the driver and attempt a DMA operation, It all works fine. The
>reason I don't want to be content with setting this information up
>in the boot loader is that we want to be able to eventually allocate
>and release buffer descriptors.
>
>I suspect that I am not setting up something correctly that affects
>the way that the Communications Processor responds to changes in the
>Parameter RAM.
>
>Can anyoue offer any clues/hints/guesses???
Check to make sure the addresses you feed the cpm are physical (not memory
mapped) addresses.
Regards, Steve
__________________________________________
Steve Calfee -- embedded systems consultant
calfee at home.com
cell phone: (510) 468-5837
Kerbango phone: (408) 517-3355
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
More information about the Linuxppc-embedded
mailing list