diff options
author | mav <mav@FreeBSD.org> | 2013-04-18 12:43:06 +0000 |
---|---|---|
committer | mav <mav@FreeBSD.org> | 2013-04-18 12:43:06 +0000 |
commit | 1142f0c37ea55322571a9ad6cd6ec73c22e11e00 (patch) | |
tree | 4c36020a7b547e7b644a3337651f91a65eec8b07 /sys/dev/mvs | |
parent | d1c120479cedfb3e05b3735a3c8d68bece382f42 (diff) | |
download | FreeBSD-src-1142f0c37ea55322571a9ad6cd6ec73c22e11e00.zip FreeBSD-src-1142f0c37ea55322571a9ad6cd6ec73c22e11e00.tar.gz |
Make siis(4) and mvs(4) send bus_get_dma_tag() requests to parent buses
passing real bus' child pointers instead of grandchilds.
Requested by: kib
Diffstat (limited to 'sys/dev/mvs')
-rw-r--r-- | sys/dev/mvs/mvs_pci.c | 8 | ||||
-rw-r--r-- | sys/dev/mvs/mvs_soc.c | 10 |
2 files changed, 17 insertions, 1 deletions
diff --git a/sys/dev/mvs/mvs_pci.c b/sys/dev/mvs/mvs_pci.c index 7379522..b2b9944 100644 --- a/sys/dev/mvs/mvs_pci.c +++ b/sys/dev/mvs/mvs_pci.c @@ -488,6 +488,13 @@ mvs_child_location_str(device_t dev, device_t child, char *buf, return (0); } +static bus_dma_tag_t +mvs_get_dma_tag(device_t bus, device_t child) +{ + + return (bus_get_dma_tag(bus)); +} + static device_method_t mvs_methods[] = { DEVMETHOD(device_probe, mvs_probe), DEVMETHOD(device_attach, mvs_attach), @@ -500,6 +507,7 @@ static device_method_t mvs_methods[] = { DEVMETHOD(bus_setup_intr, mvs_setup_intr), DEVMETHOD(bus_teardown_intr,mvs_teardown_intr), DEVMETHOD(bus_child_location_str, mvs_child_location_str), + DEVMETHOD(bus_get_dma_tag, mvs_get_dma_tag), DEVMETHOD(mvs_edma, mvs_edma), { 0, 0 } }; diff --git a/sys/dev/mvs/mvs_soc.c b/sys/dev/mvs/mvs_soc.c index 9f48fdd..2edeef0 100644 --- a/sys/dev/mvs/mvs_soc.c +++ b/sys/dev/mvs/mvs_soc.c @@ -430,6 +430,13 @@ mvs_child_location_str(device_t dev, device_t child, char *buf, return (0); } +static bus_dma_tag_t +mvs_get_dma_tag(device_t bus, device_t child) +{ + + return (bus_get_dma_tag(bus)); +} + static device_method_t mvs_methods[] = { DEVMETHOD(device_probe, mvs_probe), DEVMETHOD(device_attach, mvs_attach), @@ -441,8 +448,9 @@ static device_method_t mvs_methods[] = { DEVMETHOD(bus_release_resource, mvs_release_resource), DEVMETHOD(bus_setup_intr, mvs_setup_intr), DEVMETHOD(bus_teardown_intr,mvs_teardown_intr), - DEVMETHOD(mvs_edma, mvs_edma), DEVMETHOD(bus_child_location_str, mvs_child_location_str), + DEVMETHOD(bus_get_dma_tag, mvs_get_dma_tag), + DEVMETHOD(mvs_edma, mvs_edma), { 0, 0 } }; static driver_t mvs_driver = { |