ISA_PROD_ID ( eisa->prod_id ) )
continue;
eisa->driver = driver;
- eisa->driver_name = id->name;
- DBG ( "...using driver %s\n", eisa->driver_name );
+ eisa->dev.driver_name = id->name;
+ DBG ( "...using driver %s\n", eisa->dev.driver_name );
if ( ( rc = driver->probe ( eisa, id ) ) != 0 ) {
DBG ( "......probe failed\n" );
continue;
/* Add to device hierarchy */
snprintf ( isa->dev.name, sizeof ( isa->dev.name ),
"ISA%04x", isa->ioaddr );
+ isa->dev.driver_name = driver->name;
isa->dev.desc.bus_type = BUS_TYPE_ISA;
isa->dev.desc.vendor = driver->vendor_id;
isa->dev.desc.device = driver->prod_id;
ISA_PROD_ID ( isapnp->prod_id ) )
continue;
isapnp->driver = driver;
- isapnp->driver_name = id->name;
- DBG ( "...using driver %s\n", isapnp->driver_name );
+ isapnp->dev.driver_name = id->name;
+ DBG ( "...using driver %s\n", isapnp->dev.driver_name );
if ( ( rc = driver->probe ( isapnp, id ) ) != 0 ) {
DBG ( "......probe failed\n" );
continue;
if ( id->id != MCA_ID ( mca ) )
continue;
mca->driver = driver;
- mca->driver_name = id->name;
- DBG ( "...using driver %s\n", mca->driver_name );
+ mca->dev.driver_name = id->name;
+ DBG ( "...using driver %s\n", mca->dev.driver_name );
if ( ( rc = driver->probe ( mca, id ) ) != 0 ) {
DBG ( "......probe failed\n" );
continue;
if (driver->probe(device, request) == 0) {
device->driver = driver;
+ device->dev.driver_name = driver->name;
/* Driver handled the device so release ownership */
device = NULL;
} else {
struct device {
/** Name */
char name[16];
+ /** Driver name */
+ const char *driver_name;
/** Device description */
struct device_description desc;
/** Devices on the same bus */
* this field.
*/
void *priv;
- /** Driver name */
- const char *driver_name;
};
/** An EISA driver */
* this field.
*/
void *priv;
- /** Driver name */
- const char *driver_name;
};
/*
* this field.
*/
void *priv;
- /** Driver name */
- const char *driver_name;
};
/** An ISAPnP driver */
* this field.
*/
void *priv;
- /** Driver name */
- const char *driver_name;
};
#define MCA_ID(mca) ( ( (mca)->pos[1] << 8 ) + (mca)->pos[0] )
struct pci_device_id *id ) {
pci->driver = driver;
pci->id = id;
+ pci->dev.driver_name = id->name;
}
/**
* @v netdev Network device
*/
void ifstat ( struct net_device *netdev ) {
- printf ( "%s: %s on %s (%s)\n"
+ printf ( "%s: %s using %s on %s (%s)\n"
" [Link:%s, TX:%d TXE:%d RX:%d RXE:%d]\n",
- netdev->name, netdev_addr ( netdev ), netdev->dev->name,
+ netdev->name, netdev_addr ( netdev ),
+ netdev->dev->driver_name, netdev->dev->name,
( netdev_is_open ( netdev ) ? "open" : "closed" ),
( netdev_link_ok ( netdev ) ? "up" : "down" ),
netdev->tx_stats.good, netdev->tx_stats.bad,