]> git.baikalelectronics.ru Git - kernel.git/commit
[SPARC64]: Fix conflicts in SBUS/PCI/EBUS/ISA DMA handling.
authorDavid S. Miller <davem@sunset.davemloft.net>
Sat, 28 Jul 2007 05:39:14 +0000 (22:39 -0700)
committerDavid S. Miller <davem@sunset.davemloft.net>
Mon, 30 Jul 2007 07:27:34 +0000 (00:27 -0700)
commit78741d46499f1ad862fad115953140da34375753
tree600484291d9cfa68d54dc9b230f5bd115f495213
parentaa794d9a9bc5bb399d3ddd89000de09f497bb808
[SPARC64]: Fix conflicts in SBUS/PCI/EBUS/ISA DMA handling.

Fully unify all of the DMA ops so that subordinate bus types to
the DMA operation providers (such as ebus, isa, of_device) can
work transparently.

Basically, we just make sure that for every system device we
create, the dev->archdata 'iommu' and 'stc' fields are filled
in.

Then we have two platform variants of the DMA ops, one for SUN4U which
actually programs the real hardware, and one for SUN4V which makes
hypervisor calls.

This also fixes the crashes in parport_pc on sparc64, reported by
Meelis Roos.

Signed-off-by: David S. Miller <davem@davemloft.net>
19 files changed:
arch/sparc64/kernel/Makefile
arch/sparc64/kernel/ebus.c
arch/sparc64/kernel/iommu.c [new file with mode: 0644]
arch/sparc64/kernel/isa.c
arch/sparc64/kernel/pci.c
arch/sparc64/kernel/pci_fire.c
arch/sparc64/kernel/pci_iommu.c [deleted file]
arch/sparc64/kernel/pci_psycho.c
arch/sparc64/kernel/pci_sabre.c
arch/sparc64/kernel/pci_schizo.c
arch/sparc64/kernel/pci_sun4v.c
arch/sparc64/kernel/sbus.c
drivers/sbus/sbus.c
include/asm-sparc/device.h
include/asm-sparc64/dma-mapping.h
include/asm-sparc64/iommu.h
include/asm-sparc64/parport.h
include/asm-sparc64/pci.h
include/asm-sparc64/sbus.h