summaryrefslogtreecommitdiffstats
path: root/sys/pccard/pcic.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/pccard/pcic.c')
-rw-r--r--sys/pccard/pcic.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/sys/pccard/pcic.c b/sys/pccard/pcic.c
index 9b319c7..f76e72f 100644
--- a/sys/pccard/pcic.c
+++ b/sys/pccard/pcic.c
@@ -1135,6 +1135,10 @@ pcic_activate_resource(device_t dev, device_t child, int type, int rid,
struct pccard_devinfo *devi = device_get_ivars(child);
int err;
+ if (dev != device_get_parent(device_get_parent(child)) || devi == NULL)
+ return (bus_generic_activate_resource(dev, child, type,
+ rid, r));
+
switch (type) {
case SYS_RES_IOPORT: {
struct io_desc *ip;
@@ -1187,6 +1191,10 @@ pcic_deactivate_resource(device_t dev, device_t child, int type, int rid,
struct pccard_devinfo *devi = device_get_ivars(child);
int err;
+ if (dev != device_get_parent(device_get_parent(child)) || devi == NULL)
+ return (bus_generic_deactivate_resource(dev, child, type,
+ rid, r));
+
switch (type) {
case SYS_RES_IOPORT: {
struct io_desc *ip = &devi->slt->io[rid];
OpenPOWER on IntegriCloud