diff options
author | Michael Brown | 2007-01-10 05:22:09 +0100 |
---|---|---|
committer | Michael Brown | 2007-01-10 05:22:09 +0100 |
commit | dad52745227fd06090e73ea535e0b0fe0f667c60 (patch) | |
tree | 6be296bedc785a5aab0d055ae148c6ffb1fe285f /src/net/netdevice.c | |
parent | Remove uIP; we haven't used it for quite some time now. (diff) | |
download | ipxe-dad52745227fd06090e73ea535e0b0fe0f667c60.tar.gz ipxe-dad52745227fd06090e73ea535e0b0fe0f667c60.tar.xz ipxe-dad52745227fd06090e73ea535e0b0fe0f667c60.zip |
Add "name" field to struct device to allow human-readable hardware device
names.
Add "dev" pointer in struct net_device to tie network interfaces back to a
hardware device.
Force natural alignment of data types in __table() macros. This seems to
prevent gcc from taking the unilateral decision to occasionally increase
their alignment (which screws up the table packing).
Diffstat (limited to 'src/net/netdevice.c')
-rw-r--r-- | src/net/netdevice.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/net/netdevice.c b/src/net/netdevice.c index 8c95afd6..d8de81be 100644 --- a/src/net/netdevice.c +++ b/src/net/netdevice.c @@ -27,6 +27,7 @@ #include <gpxe/tables.h> #include <gpxe/process.h> #include <gpxe/init.h> +#include <gpxe/device.h> #include <gpxe/netdevice.h> /** @file @@ -36,8 +37,10 @@ */ /** Registered network-layer protocols */ -static struct net_protocol net_protocols[0] __table_start ( net_protocols ); -static struct net_protocol net_protocols_end[0] __table_end ( net_protocols ); +static struct net_protocol net_protocols[0] + __table_start ( struct net_protocol, net_protocols ); +static struct net_protocol net_protocols_end[0] + __table_end ( struct net_protocol, net_protocols ); /** List of network devices */ struct list_head net_devices = LIST_HEAD_INIT ( net_devices ); @@ -200,8 +203,9 @@ int register_netdev ( struct net_device *netdev ) { /* Add to device list */ list_add_tail ( &netdev->list, &net_devices ); - DBGC ( netdev, "NETDEV %p registered as %s (%s)\n", - netdev, netdev->name, netdev_hwaddr ( netdev ) ); + DBGC ( netdev, "NETDEV %p registered as %s (phys %s hwaddr %s)\n", + netdev, netdev->name, netdev->dev->name, + netdev_hwaddr ( netdev ) ); return 0; } |