logoalt Hacker News

brcmthrowawaytoday at 1:08 AM2 repliesview on HN

Dumb question.. do USB devices support DMA? Is it done through the host? Or does the USB device always push/pull data to host memory?


Replies

pjc50today at 9:06 AM

All transfers are initiated by the host, including ones that look like they're client-first; there is no DMA, which would be a massive security pain.

kamtoday at 2:16 AM

USB devices cannot directly address host memory like PCIe or FireWire, but the XHCI controller does DMA to/from host memory, and most USB device controllers have some kind of DMA between USB and the device's RAM.