Skip to contentSkip to conversation

ppc64 iommu rewrite & G5 support

PATCH New Benjamin Herrenschmidt 1 participant 1 message Feb 27, 2004

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 ppc64 iommu rewrite & G5 support

Hi !

In the following few emails are the bits of the long awaited ppc64 iommu rewrite and DART support for the PowerMac G5. The DART code is still marked EXPERIMENTAL (though I haven't had any problem with it here).

I also implemented some basic virtual merging on top of the original rewrite that is also marked EXPERIMENTAL and not enabled by default, though it appears to work fine, because some drivers may still have issues with it. It can still be enabled with a kernel command line option despite beeing off in the .config (iommu=vmerge) or disabled when the config .option is set (iommu=novmerge).

I will make it the default once we have moved the boundary limit information down to struct device and fixed our pci_map_sg() implementation to use that information, as it was discussed separately.

Many Kudos to Olof Johansson who did the bulk of the work, wiping out the old ppc64 TCE mess to replace it with something that allowed people like me to actually do further hacking on it while keeping the noise/swearing level in the office acceptable (Rusty, in the cubicle next to mine, will thank you Olof !) He is also responsible for getting the crap out of Apple's DART implementation & HW bugs and producing a working driver for it.

My contribution is limited to the vmerge stuff, further cleanups, some fixes here or there, and proper IO hole accounting.

Have fun and backup your data !

Ben.