![]() | |||||||||||||
Messages in this thread |
miles@gnu.org said: > Keep in mind that sometimes the actual _implementation_ is also highly > PCI-specific -- that is, what works for PCI devices may not work for > other devices and vice-versa. > So perhaps instead of just replacing `pci_...' with `dma_...', it > would be better to add new function pointers to `struct bus_type' for > all this stuff (or something like that). Not really, that can all be taken care of in the platform implementation. The parisc implementation has exactly that problem. The platform implementation uses the generic device platform_data to cache the iommu accessor methods (it actually finds the iommu by walking up the device parents until it gets to the iommu driver--which means it needs to walk off the PCI bus). In general, the generic device already has enough information that the platform implementation can be highly bus specific---and, of course, once you know exactly what bus it's on, you can cast it to the bus device if you want. James - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ | ||||||||||||
| Last update: 2005-03-22 12:31 [W:0.466 / U:0.130 seconds] ©2003-2008 Jasper Spaans | |||||||||||||