Hi, Bjorn
Thanks for your research and comment.
As you said, a way of registering code with bus_register_notifier(),
which will be called in device_add(), is better one than
pcibios_enable_device().
I will try to write code with bus_register_notifier().
Regards.
Hiroo MATSUMOTO
On Wed, Apr 11, 2012 at 11:00 PM, Hiroo Matsumoto
<matsumoto.hiroo@xxxxxxxxxxxxxx> wrote:
Hi, Kaneshige
You are right!
Setting dma_ops in pcibios_enable_device is a nice way.
In PCI driver, pci_enable_device_xxx that calls pcibios_enable_device is
called before checking archdata.dma_ops.
I added code of checking and setting dma_ops to pcibios_enable_device in
arch/powerpc/kernel/pci-common.c.
It works good.
When I researched this, I thought the best route was to use the
bus_register_notifier() path, as amd_iommu_init_notifier() does.
We're filling in a struct device field, not a PCI field, and
bus_register_notifier() seems like a more generic path than relying on
pcibios_enable_device().
Bjorn
--
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