Re: Strange transmit corruption in jsm driver on geode sc1200 system

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Ar Gwe, 2006-08-25 am 16:30 -0400, ysgrifennodd Lennart Sorensen:
> The driver is doing memcpy_toio to tranfer data to the transmit FIFO
> (which is a 64byte memory mapped block of memory on the PCI bus as far
> as I can tell).  The data in the transmit queue is in the right order

That should be staying in order unless the device memory is mislabelled
and prefetchable etc.

> being passed to memcpy_toio, but somehow by the time it is in the uart
> and goes out the transmiter, every 4th byte is moved 3 bytes back.

What happens if you swap the memcpy_toio with while() writeb() ?

> I read something about the geodes doing memory write reordering, but
> that it is supposed to magically not screw up PCI writes.  I have no
> idea if it is or not though.

They do a lot of stuff but it should not affect the PCI side and I'd
expect it to do other things than byte lane re-ordering.

> Does anyone have any suggestions for something to try?

Is the buffer 32bit aligned ?


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux