X-Git-Url: http://git.joshuawise.com/netwatch.git/blobdiff_plain/748534f490f9da36041ad8e2ecc046c6a8238d81..2745bcf912e2230ef948b3e0d636bbd16e3fefb6:/net/etherboot-compat.h diff --git a/net/etherboot-compat.h b/net/etherboot-compat.h index 6c96458..d56dce5 100644 --- a/net/etherboot-compat.h +++ b/net/etherboot-compat.h @@ -1,3 +1,20 @@ +/* etherboot-compat.h + * EtherBoot driver compatibility routines + * NetWatch system management mode administration console + * + * Copyright (c) 2008 Jacob Potter and Joshua Wise. All rights reserved. + * This program is free software; you can redistribute and/or modify it under + * the terms found in the file LICENSE in the root of this source tree. + * + */ + + +#ifndef _ETHERBOOT_COMPAT_H +#define _ETHERBOOT_COMPAT_H + +#include +#include "lwip/pbuf.h" + #define ETH_ALEN 6 struct dev { @@ -10,9 +27,13 @@ struct nic { unsigned int ioaddr; unsigned int irqno; + + unsigned char hwaddr[6]; - int (*poll) (struct nic *nic, int retrieve); - void (*transmit) (const char *dest_addr, unsigned int proto, unsigned int size, const char *pkt); + int (*recv) (struct nic *nic); + void (*transmit) (struct nic *nic, struct pbuf *p); }; -#define virt_to_bus(x) ((unsigned long)x) +#define virt_to_bus(x) memory_v2p((void *)(x)) + +#endif