* 8250 idma problem - cache?
@ 2003-03-17 22:56 Penn, John
2003-03-17 23:24 ` Dan Malek
0 siblings, 1 reply; 3+ messages in thread
From: Penn, John @ 2003-03-17 22:56 UTC (permalink / raw)
To: linuxppc-embedded
I am implementing IDMA, 2 channels(rx/tx), between the 8250
and a slow device attached to the local bus. I seem
to have a transmit problem that could be explained
by the dcache holding the packet, its very small, and
the buffer being transmitted having old data or zeros
in it.
I have been reading through the archives regarding :
invalidating the dcache - it's a nop for 8260
snooping - tried enabling it on tx DGBL, no difference
SIUMCR - ESE is enabled
using local bus memory instead of 603 memory for buffers
I would rather use 603 memory
the 8260 is fully cache coherent so you don't have
to invalidate the dcache.
Now I am at the point of needing some clarification.
1. Do I have to invalidate dcache and if so how?
2. Has anyone used the IDMA with 603 memory or must
I use local bus memory?
John Penn
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: 8250 idma problem - cache?
2003-03-17 22:56 Penn, John
@ 2003-03-17 23:24 ` Dan Malek
0 siblings, 0 replies; 3+ messages in thread
From: Dan Malek @ 2003-03-17 23:24 UTC (permalink / raw)
To: Penn, John; +Cc: linuxppc-embedded
Penn, John wrote:
> ...I seem
> to have a transmit problem that could be explained
> by the dcache holding the packet,
I guess you mean you wrote something into memory and
the IDMA didn't move it to the device on the local bus?
Can you use a bus analyzer to ensure the IDMA actually
ran as expected? What DMA mode are you using?
> snooping - tried enabling it on tx DGBL, no difference
> SIUMCR - ESE is enabled
If I understand "transmitting", that would be from main memory
to the device, so you need to set SGBL.
> using local bus memory instead of 603 memory for buffers
> I would rather use 603 memory
If you have a device on the local bus, that would be a wise choice. :-)
> the 8260 is fully cache coherent so you don't have
> to invalidate the dcache.
That's true, but in the case of transmitting you wouldn't want to
invalidate, you would want to flush.
> Now I am at the point of needing some clarification.
>
> 1. Do I have to invalidate dcache and if so how?
You do not need to do this.
> 2. Has anyone used the IDMA with 603 memory or must
> I use local bus memory?
The system (603) memory works fine, it just sounds like you
need to ensure the channel is correctly configured and your
device protocol on the local bus is working correctly.
Thanks.
-- Dan
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: 8250 idma problem - cache?
[not found] <BD92DBD34D62AC4FA034933E33E53F7E1724D6@grog>
@ 2003-03-18 14:37 ` Dan Malek
0 siblings, 0 replies; 3+ messages in thread
From: Dan Malek @ 2003-03-18 14:37 UTC (permalink / raw)
To: Penn, John; +Cc: linuxppc-embedded
Penn, John wrote:
> Much better!!
Cool.
> So for receiving, local bus to system memory, I assume
> I need to set DGBL?
Yes.
> What would be a wise choice? Using system memory?
The system memory could be a better choice depending upon the
speed of the device since both the device and local memory
share the same bus. It would just remove some contention and
latency. There are other system architecture considerations
but usually pipelining the DMA like this is a performance advantage.
> ... Should I be able to use DPRAM for the BDs and system
> memory for the buffers?
Yes. Just ensure the address or whatever indicators are used to
point the parameter blocks to the BDs in the DPRAM (or local bus)
are set correctly. Also verify that the BDs can reside in DPRAM,
IIRC some peripherals or configurations don't allow it.
-- Dan
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2003-03-18 14:37 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <BD92DBD34D62AC4FA034933E33E53F7E1724D6@grog>
2003-03-18 14:37 ` 8250 idma problem - cache? Dan Malek
2003-03-17 22:56 Penn, John
2003-03-17 23:24 ` Dan Malek
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).