summaryrefslogtreecommitdiff
path: root/usr/src/uts/intel/io/pci
diff options
context:
space:
mode:
authorStephen Hanson <Stephen.Hanson@Sun.COM>2009-12-03 04:39:22 -0800
committerStephen Hanson <Stephen.Hanson@Sun.COM>2009-12-03 04:39:22 -0800
commit837c1ac4e72b7d86278cca88b1075af557f7d161 (patch)
tree3d837d0e861f097cc8eccc1a75f1b5974384cbef /usr/src/uts/intel/io/pci
parent902408c74976ae981a40a253677084474ca7f2f5 (diff)
downloadillumos-joyent-837c1ac4e72b7d86278cca88b1075af557f7d161.tar.gz
6783915 numerous drivers using devacc_attr_access without specifying DDI_DEVICE_ATTR_V1
6765185 ddi_dma_mem_alloc should ignore devacc_attr_access 6886100 DDI_FLAGERR_ACC accesses on x86 should use i_ddi_prot_io_get8() calls as on sparc 6886098 ddi_fm_acc_err_get()/ddi_fm_dma_err_get() copy data when they don't need to 6901678 crossbow changes broke dma handle checking in bge driver 6901000 lint warning in mtst_cpu.c
Diffstat (limited to 'usr/src/uts/intel/io/pci')
-rw-r--r--usr/src/uts/intel/io/pci/pci_pci.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/usr/src/uts/intel/io/pci/pci_pci.c b/usr/src/uts/intel/io/pci/pci_pci.c
index 66f7f69aae..ffeab4628e 100644
--- a/usr/src/uts/intel/io/pci/pci_pci.c
+++ b/usr/src/uts/intel/io/pci/pci_pci.c
@@ -448,7 +448,17 @@ ppb_bus_map(dev_info_t *dip, dev_info_t *rdip, ddi_map_req_t *mp,
off_t offset, off_t len, caddr_t *vaddrp)
{
dev_info_t *pdip;
+ ppb_devstate_t *ppb = ddi_get_soft_state(ppb_state,
+ ddi_get_instance(dip));
+ if (strcmp(ddi_driver_name(ddi_get_parent(dip)), "npe") == 0) {
+ ddi_acc_impl_t *hdlp =
+ (ddi_acc_impl_t *)(mp->map_handlep)->ah_platform_private;
+ hdlp->ahi_err_mutexp = &ppb->ppb_err_mutex;
+ hdlp->ahi_peekpoke_mutexp = &ppb->ppb_peek_poke_mutex;
+ hdlp->ahi_scan_dip = dip;
+ hdlp->ahi_scan = ppb_peekpoke_cb;
+ }
pdip = (dev_info_t *)DEVI(dip)->devi_parent;
return ((DEVI(pdip)->devi_ops->devo_bus_ops->bus_map)(pdip,
rdip, mp, offset, len, vaddrp));