On 4/9/2012 9:59 AM, Arnd Bergmann wrote: > On Saturday 07 April 2012, Chris Metcalf wrote: >> This change implements PCIe root complex support for tilegx using >> the kernel support layer for accessing the TRIO hardware shim. >> >> Signed-off-by: Chris Metcalf <cmetcalf@xxxxxxxxxx> > Hi Chris, > > I don't know if we discussed it during the initial merge, but I notice that the PIO > accessors (inb/outb and friends) are still not implemented in this patch. Normally > PIO can just be mapped into the MMIO address space, so that inb() becomes > a call to readb() with an offset on the address. I asked our PCI expert here, who said, "My understanding is that if someone wants to use inb/outb to access MMIO space, he'll get the MMIO, as opposed to methods implemented with I/O instructions which are not supported by TILE. If the driver is dependent on the I/O instructions, it won't work on TILE. These drivers are legacy PC drivers, e.g. ATA devices, which are not supported by TILE." Should we just arrange to #include <asm-generic/io.h> to pick up inb/outb et al? Any reason to think a non-zero offset should be part of the solution? (I don't really understand how inb/outb are used by modern drivers.) > Using mdelay is generally considered very rude. Since you are not in > atomic context here, just use msleep() instead. Done. Thanks for all your reviews! -- Chris Metcalf, Tilera Corp. http://www.tilera.com -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html