diff options
author | Stefan Hajnoczi <stefanha@redhat.com> | 2013-03-01 16:32:15 +0100 |
---|---|---|
committer | Michael Brown <mcb30@ipxe.org> | 2013-03-01 16:11:40 +0000 |
commit | 7426177d631c0fd8b2ef3ffae4449637d5bca32a (patch) | |
tree | 5d1fd4375b0b51ebcf4278be7974ad2268ba6748 /src/net/netdevice.c | |
parent | 09c5109b8585178172c7608de8d52e9d9af0b680 (diff) | |
download | ipxe-7426177d631c0fd8b2ef3ffae4449637d5bca32a.tar.gz |
[netdevice] Add vlan_tag() to get the VLAN tag of a network device
The iBFT has a VLAN field that should be filled in. Add the
vlan_tag() function to extract the VLAN tag of a network device.
Since VLAN support is optional, define a weak function that returns 0
when iPXE is built without VLAN support.
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Modified-by: Michael Brown <mcb30@ipxe.org>
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/net/netdevice.c')
-rw-r--r-- | src/net/netdevice.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/net/netdevice.c b/src/net/netdevice.c index ec3456a93..a71666304 100644 --- a/src/net/netdevice.c +++ b/src/net/netdevice.c @@ -33,6 +33,7 @@ FILE_LICENCE ( GPL2_OR_LATER ); #include <ipxe/init.h> #include <ipxe/device.h> #include <ipxe/errortab.h> +#include <ipxe/vlan.h> #include <ipxe/netdevice.h> /** @file @@ -783,5 +784,15 @@ static void net_step ( struct process *process __unused ) { net_poll(); } +/** + * Get the VLAN tag (when VLAN support is not present) + * + * @v netdev Network device + * @ret tag 0, indicating that device is not a VLAN device + */ +__weak unsigned int vlan_tag ( struct net_device *netdev __unused ) { + return 0; +} + /** Networking stack process */ PERMANENT_PROCESS ( net_process, net_step ); |