Index: uspace/srv/drivers/isa/isa.c
===================================================================
--- uspace/srv/drivers/isa/isa.c	(revision 692c40cb5e60d999a7e4a4bf37fd265a6b8548cb)
+++ uspace/srv/drivers/isa/isa.c	(revision fb0baeb42e478704ba0c07a4dcd341d233156b05)
@@ -87,5 +87,5 @@
 };
 
-static device_class_t isa_child_class;
+static device_ops_t isa_child_dev_ops;
 
 static int isa_add_device(device_t *dev);
@@ -449,6 +449,6 @@
 	}
 	
-	// set a class (including the corresponding set of interfaces) to the device
-	dev->class = &isa_child_class;
+	// set device operations to the device
+	dev->ops = &isa_child_dev_ops;
 	
 	printf(NAME ": child_device_register(dev, parent); device is %s.\n", dev->name);
@@ -487,6 +487,5 @@
 static void isa_init() 
 {
-	isa_child_class.id = 0; // TODO
-	isa_child_class.interfaces[HW_RES_DEV_IFACE] = &isa_child_res_iface;
+	isa_child_dev_ops.interfaces[HW_RES_DEV_IFACE] = &isa_child_res_iface;
 }
 
Index: uspace/srv/drivers/ns8250/ns8250.c
===================================================================
--- uspace/srv/drivers/ns8250/ns8250.c	(revision 692c40cb5e60d999a7e4a4bf37fd265a6b8548cb)
+++ uspace/srv/drivers/ns8250/ns8250.c	(revision fb0baeb42e478704ba0c07a4dcd341d233156b05)
@@ -228,5 +228,5 @@
 }
 
-static device_class_t ns8250_dev_class;
+static device_ops_t ns8250_dev_ops;
 
 /** The character interface's callbacks. 
@@ -758,5 +758,6 @@
 	}	
 	
-	dev->class = &ns8250_dev_class;
+	// set device operations
+	dev->ops = &ns8250_dev_ops;
 	
 	add_device_to_class(dev, "serial");
@@ -900,16 +901,14 @@
 /** Initialize the serial port driver.
  * 
- * Initialize class structures with callback methods for handling 
+ * Initialize device operations structures with callback methods for handling 
  * client requests to the serial port devices.
  */
 static void ns8250_init() 
 {
-	// TODO
-	ns8250_dev_class.id = 0;
-	ns8250_dev_class.open = &ns8250_open;
-	ns8250_dev_class.close = &ns8250_close;	
-	
-	ns8250_dev_class.interfaces[CHAR_DEV_IFACE] = &ns8250_char_iface;
-	ns8250_dev_class.default_handler = &ns8250_default_handler;
+	ns8250_dev_ops.open = &ns8250_open;
+	ns8250_dev_ops.close = &ns8250_close;	
+	
+	ns8250_dev_ops.interfaces[CHAR_DEV_IFACE] = &ns8250_char_iface;
+	ns8250_dev_ops.default_handler = &ns8250_default_handler;
 }
 
Index: uspace/srv/drivers/pciintel/pci.c
===================================================================
--- uspace/srv/drivers/pciintel/pci.c	(revision 692c40cb5e60d999a7e4a4bf37fd265a6b8548cb)
+++ uspace/srv/drivers/pciintel/pci.c	(revision fb0baeb42e478704ba0c07a4dcd341d233156b05)
@@ -82,5 +82,5 @@
 };
 
-static device_class_t pci_child_class;
+static device_ops_t pci_child_ops;
 
 
@@ -398,5 +398,5 @@
 			pci_read_interrupt(dev);
 			
-			dev->class = &pci_child_class;			
+			dev->ops = &pci_child_ops;			
 			
 			printf(NAME ": adding new child device %s.\n", dev->name);
@@ -491,6 +491,5 @@
 static void pciintel_init() 
 {
-	pci_child_class.id = 0; // TODO
-	pci_child_class.interfaces[HW_RES_DEV_IFACE] = &pciintel_child_res_iface;
+	pci_child_ops.interfaces[HW_RES_DEV_IFACE] = &pciintel_child_res_iface;
 }
 
Index: uspace/srv/drivers/rootia32/rootia32.c
===================================================================
--- uspace/srv/drivers/rootia32/rootia32.c	(revision 692c40cb5e60d999a7e4a4bf37fd265a6b8548cb)
+++ uspace/srv/drivers/rootia32/rootia32.c	(revision fb0baeb42e478704ba0c07a4dcd341d233156b05)
@@ -113,5 +113,5 @@
 
 // initialized in root_ia32_init() function
-static device_class_t rootia32_child_class;
+static device_ops_t rootia32_child_ops;
 
 static bool rootia32_add_child(
@@ -140,6 +140,6 @@
 	add_match_id(&child->match_ids, match_id);	
 	
-	// set class to the device
-	child->class = &rootia32_child_class;
+	// set provided operations to the device
+	child->ops = &rootia32_child_ops;
 	
 	// register child  device
@@ -188,7 +188,5 @@
 
 static void root_ia32_init() {
-	// initialize child device class		
-	rootia32_child_class.id = 0;	// TODO 
-	rootia32_child_class.interfaces[HW_RES_DEV_IFACE] = &child_res_iface;
+	rootia32_child_ops.interfaces[HW_RES_DEV_IFACE] = &child_res_iface;
 }
 
