Alexey Filin wrote: > On Sat, Jul 28, 2012 at 8:50 PM, Clemens Ladisch <clemens@xxxxxxxxxx> wrote: >> Alexey Filin wrote: >>> On Fri, Jul 27, 2012 at 5:04 PM, Peter Stuge <peter@xxxxxxxx> wrote: >>>> If you require consumer interfaces and you want neither USB nor >>>> Ethernet then I guess there is only FireWire left to choose from. >>> >>> "The FireWire host interface supports DMA and memory-mapped devices" >> >> This is the interface between the host controller and its driver. >> >> The interesting thing about FireWire would be RDMA, but allowing the >> device to read/write the PC's memory doesn't help you much because there >> is no indication when it did so, so you'd need additional transactions >> to tell your driver about this. > > Is IO operation of memory-mapped device guaranteed to be synchronous? PCI accesses are; FireWire transaction aren't. >> With a 3.2 GHz CPU and under ideal conditions (using queued posted >> quadlet writes), I can get about 120000 FireWire packets per second. >> With such small packets, the bottleneck is the CPU because of the packet >> queueing overhead. What you need is some protocol that does not use >> packets. > > It is impossible, modern system bus (PCIe) uses serial links and a > packet protocol PCIe could be fast enough, but the devices usually aren't. For reading some PCI(e) MMIO register, I usually measure about 1.25 us. Regards, Clemens -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html