aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/mvs
diff options
context:
space:
mode:
authorAlexander Motin <mav@FreeBSD.org>2013-04-18 12:43:06 +0000
committerAlexander Motin <mav@FreeBSD.org>2013-04-18 12:43:06 +0000
commitca11419237a6458a92855e838724ef8c71225f0f (patch)
tree4c36020a7b547e7b644a3337651f91a65eec8b07 /sys/dev/mvs
parent706d4085127ee0bc55ba9a37c2aaa40fb1ce3844 (diff)
downloadsrc-ca11419237a6458a92855e838724ef8c71225f0f.tar.gz
src-ca11419237a6458a92855e838724ef8c71225f0f.zip
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
Notes
Notes: svn path=/head/; revision=249622
Diffstat (limited to 'sys/dev/mvs')
-rw-r--r--sys/dev/mvs/mvs_pci.c8
-rw-r--r--sys/dev/mvs/mvs_soc.c10
2 files changed, 17 insertions, 1 deletions
diff --git a/sys/dev/mvs/mvs_pci.c b/sys/dev/mvs/mvs_pci.c
index 737952253d22..b2b9944adfe8 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 9f48fddaaa7a..2edeef0cac65 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 = {