summaryrefslogtreecommitdiffstats
path: root/sys/isa/isa_common.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/isa/isa_common.c')
-rw-r--r--sys/isa/isa_common.c51
1 files changed, 49 insertions, 2 deletions
diff --git a/sys/isa/isa_common.c b/sys/isa/isa_common.c
index 7b3b494..d2207ac 100644
--- a/sys/isa/isa_common.c
+++ b/sys/isa/isa_common.c
@@ -23,7 +23,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: isa_common.c,v 1.1 1999/05/22 15:18:23 dfr Exp $
+ * $Id: isa_common.c,v 1.2 1999/05/28 09:24:58 dfr Exp $
*/
/*
* Modifications for Intel architecture by Garrett A. Wollman.
@@ -279,8 +279,28 @@ isa_read_ivar(device_t bus, device_t dev, int index, uintptr_t * result)
case ISA_IVAR_FLAGS:
*result = idev->id_flags;
break;
+
+ case ISA_IVAR_VENDORID:
+ *result = idev->id_vendorid;
+ break;
+
+ case ISA_IVAR_SERIAL:
+ *result = idev->id_serial;
+ break;
+
+ case ISA_IVAR_LOGICALID:
+ *result = idev->id_logicalid;
+ break;
+
+ case ISA_IVAR_COMPATID:
+ *result = idev->id_compatid;
+ break;
+
+ default:
+ return ENOENT;
}
- return ENOENT;
+
+ return 0;
}
static int
@@ -307,9 +327,27 @@ isa_write_ivar(device_t bus, device_t dev,
case ISA_IVAR_FLAGS:
idev->id_flags = value;
break;
+
+ case ISA_IVAR_VENDORID:
+ idev->id_vendorid = value;
+ break;
+
+ case ISA_IVAR_SERIAL:
+ idev->id_serial = value;
+ break;
+
+ case ISA_IVAR_LOGICALID:
+ idev->id_logicalid = value;
+ break;
+
+ case ISA_IVAR_COMPATID:
+ idev->id_compatid = value;
+ break;
+
default:
return (ENOENT);
}
+
return (0);
}
@@ -349,6 +387,14 @@ isa_get_resource(device_t dev, device_t child, int type, int rid,
return 0;
}
+static void
+isa_delete_resource(device_t dev, device_t child, int type, int rid)
+{
+ struct isa_device* idev = DEVTOISA(child);
+ struct resource_list *rl = &idev->id_resources;
+ resource_list_delete(rl, type, rid);
+}
+
static device_method_t isa_methods[] = {
/* Device interface */
DEVMETHOD(device_probe, isa_probe),
@@ -373,6 +419,7 @@ static device_method_t isa_methods[] = {
/* ISA interface */
DEVMETHOD(isa_set_resource, isa_set_resource),
DEVMETHOD(isa_get_resource, isa_get_resource),
+ DEVMETHOD(isa_delete_resource, isa_delete_resource),
{ 0, 0 }
};
OpenPOWER on IntegriCloud