"François Revol" <revol@xxxxxxx> wrote: > > * Implemented the DMA and I/O requests/scheduler framework - for > > now > > in C++ only. It's a work in progress and not used anywhere yet. > Btw, talking about DMA, I'm digging vm setup on 68k, and talked with > Travis, the current code doesn't differentiate DMAble memory from > "fast" ram, it just sees it as a single pool. > While it shouldn't be a problem for PCI initiated DMA on x86, it will > certainly be an issue for ISA DMA, and on other platforms (I suppose > PPC just uses PCI style DMA, but...). > Without going as deep as handling NUMA ranges with cpu affinities, it > would be nice to have the vm know about it so it can respect the > B_LOMEM and B_SLOWMEM flags. I don't really want to add support for those (although maybe we have to in architecture independent way), but we definitely need a create_area() version that allows for address and alignment restrictions. We also need this to correctly implement DMAResource. For platform wide but varying restrictions, something like B_LOMEM/ B_SLOWMEM might be a good idea, even though I would prefer a way to retrieve general DMA restrictions from the bus in question. Bye, Axel.