*/
#include "etherboot.h"
#include "init.h"
-#include "pci.h"
+#include <gpxe/pci.h>
#include "pci_io.h"
#ifdef KEEP_IT_REAL
#include "realmode.h"
/* to get the interface to the body of the program */
#include "nic.h"
/* to get the PCI support functions, if this is a PCI NIC */
-#include "pci.h"
+#include <gpxe/pci.h>
/* UNDI and PXE defines. Includes pxe.h. */
#include "undi.h"
/* 8259 PIC defines */
/* relocate() is conceptually impossible with KEEP_IT_REAL */
#ifndef KEEP_IT_REAL
-#include "tables.h"
+#include <gpxe/tables.h>
/* An entry in the post-relocation function table */
struct post_reloc_fn {
#include "dev.h"
-#include "pci.h"
+#include <gpxe/pci.h>
#include "registers.h"
/*
#include "etherboot.h"
#include "console.h"
#include "init.h"
-#include "pci.h"
+#include <gpxe/pci.h>
#ifdef CONFIG_FILO
#include <lib.h>
ip = (struct iphdr *)buf;
destip = ip->dest.s_addr;
- if (destip == IP_BROADCAST) {
+ if (destip == INADDR_BROADCAST) {
eth_transmit(broadcast, ETH_P_IP, len, buf);
} else if ((destip & htonl(MULTICAST_MASK)) == htonl(MULTICAST_NETWORK)) {
unsigned char multicast[6];
memset ( arptable, 0, sizeof(arptable) );
memcpy ( arptable[ARP_CLIENT].node, my_hwaddr, ETH_ALEN );
- udp_transmit(IP_BROADCAST, BOOTP_CLIENT, BOOTP_SERVER,
+ udp_transmit(INADDR_BROADCAST, BOOTP_CLIENT, BOOTP_SERVER,
sizeof(struct bootpip_t), &ip);
remaining_time = rfc2131_sleep_interval(BOOTP_TIMEOUT, retry++);
stop_time = currticks() + remaining_time;
for (reqretry = 0; reqretry < MAX_BOOTP_RETRIES; ) {
unsigned long timeout;
- udp_transmit(IP_BROADCAST, BOOTP_CLIENT, BOOTP_SERVER,
- sizeof(struct bootpip_t), &ip);
+ udp_transmit(INADDR_BROADCAST, BOOTP_CLIENT,
+ BOOTP_SERVER, sizeof(struct bootpip_t),
+ &ip);
dhcp_reply=0;
timeout = rfc2131_sleep_interval(TIMEOUT, reqretry++);
if (!await_reply(await_bootp, 0, NULL, timeout))
#include "string.h"
#include "console.h"
#include "nic.h"
-#include "pci.h"
+#include <gpxe/pci.h>
/*
* pci_io.c may know how many buses we have, in which case it can
#include "etherboot.h"
#include "nic.h"
-#include "pci.h"
+#include <gpxe/pci.h>
#include "3c595.h"
#include "timer.h"
#include "etherboot.h"
#include "nic.h"
-#include "pci.h"
+#include <gpxe/pci.h>
#include "timer.h"
static struct nic_operations a3c90x_operations;
#include "etherboot.h"
#include "nic.h"
#include "mii.h"
-#include "pci.h"
+#include <gpxe/pci.h>
#include "timer.h"
#include "string.h"
#include "stdint.h"
#include "etherboot.h"
#include "nic.h"
-#include "pci.h"
+#include <gpxe/pci.h>
#undef DAVICOM_DEBUG
#undef DAVICOM_DEBUG_WHERE
/* to get the interface to the body of the program */
#include "nic.h"
/* to get the PCI support functions, if this is a PCI NIC */
-#include "pci.h"
+#include <gpxe/pci.h>
#include "timer.h"
/* #define EDEBUG 1 */
/* to get the interface to the body of the program */
#include "nic.h"
/* to get the PCI support functions, if this is a PCI NIC */
-#include "pci.h"
+#include <gpxe/pci.h>
#include "timer.h"
typedef unsigned char *dma_addr_t;
#include "etherboot.h"
#include "nic.h"
-#include "pci.h"
+#include <gpxe/pci.h>
#include "timer.h"
static int ioaddr;
#define LINUX_OUT_MACROS
#include "etherboot.h"
-#include "pci.h"
+#include <gpxe/pci.h>
#include "nic.h"
#include "timer.h"
#include "console.h"
#include "etherboot.h"
#include "nic.h"
-#include "pci.h"
+#include <gpxe/pci.h>
#include "timer.h"
#define dma_addr_t unsigned long
#include "etherfabric.h"
/* to get the interface to the body of the program */
#include "nic.h"
/* to get the PCI support functions, if this is a PCI NIC */
-#include "pci.h"
+#include <gpxe/pci.h>
/* Include timer support functions */
#include "timer.h"
#include "mii.h"
#include "mt23108.h"
#include "ib_driver.h"
-#include "pci.h"
+#include <gpxe/pci.h>
struct device_buffers_st {
union recv_wqe_u mads_qp_rcv_queue[NUM_MADS_RCV_WQES]
#include "mt25218.h"
#include "ib_driver.h"
-#include "pci.h"
+#include <gpxe/pci.h>
#define MOD_INC(counter, max_count) (counter) = ((counter)+1) & ((max_count) - 1)
/* to get the interface to the body of the program */
#include "nic.h"
/* to get the PCI support functions, if this is a PCI NIC */
-#include "pci.h"
+#include <gpxe/pci.h>
/* to get the ISA support functions, if this is an ISA NIC */
#include "isa.h"
/* to get the interface to the body of the program */
#include "nic.h"
/* to get the PCI support functions, if this is a PCI NIC */
-#include "pci.h"
+#include <gpxe/pci.h>
/* to get the ISA support functions, if this is an ISA NIC */
#include "isa.h"
/* to get the interface to the body of the program */
#include "nic.h"
/* to get the PCI support functions, if this is a PCI NIC */
-#include "pci.h"
+#include <gpxe/pci.h>
/* Condensed operations for readability. */
#define virt_to_le32desc(addr) cpu_to_le32(virt_to_bus(addr))
#include "etherboot.h"
#include "nic.h"
-#include "pci.h"
+#include <gpxe/pci.h>
/* defines */
/* to get the interface to the body of the program */
#include "nic.h"
/* to get the PCI support functions, if this is a PCI NIC */
-#include "pci.h"
+#include <gpxe/pci.h>
#if ARCH == ia64 /* Support 64-bit addressing */
#define USE_64BIT_ADDR
#include "nic.h"
#include "ns8390.h"
#ifdef INCLUDE_NS8390
-#include "pci.h"
+#include <gpxe/pci.h>
#else
#include "isa.h"
#endif
/* to get the interface to the body of the program */
#include "nic.h"
/* to get the PCI support functions, if this is a PCI NIC */
-#include "pci.h"
+#include <gpxe/pci.h>
/* Include the time functions */
#include "timer.h"
#include "mii.h"
/* to get the interface to the body of the program */
#include "nic.h"
/* to get the PCI support functions, if this is a PCI NIC */
-#include "pci.h"
+#include <gpxe/pci.h>
/*
* Hard-coded SSID
* your option) any later version.
*/
-#include "pci.h"
+#include <gpxe/pci.h>
#include "nic.h"
#define WLAN_HOSTIF WLAN_PCI
* your option) any later version.
*/
-#include "pci.h"
+#include <gpxe/pci.h>
#include "nic.h"
#define WLAN_HOSTIF WLAN_PLX
/* to get the interface to the body of the program */
#include "nic.h"
/* to get the PCI support functions, if this is a PCI NIC */
-#include "pci.h"
+#include <gpxe/pci.h>
#include "timer.h"
#define drv_version "v1.6"
#include "etherboot.h"
#include "nic.h"
-#include "pci.h"
+#include <gpxe/pci.h>
#include "timer.h"
#define RTL_TIMEOUT (1*TICKS_PER_SEC)
#include "etherboot.h"
#include "nic.h"
-#include "pci.h"
+#include <gpxe/pci.h>
#include "timer.h"
#include "sis900.h"
/* to get the interface to the body of the program */
#include "nic.h"
/* Drag in support for whichever bus(es) we want for this NIC */
-#include "pci.h"
+#include <gpxe/pci.h>
#include "isa.h"
#include "eisa.h"
#include "isapnp.h"
/* to get the interface to the body of the program */
#include "nic.h"
/* to get the PCI support functions, if this is a PCI NIC */
-#include "pci.h"
+#include <gpxe/pci.h>
#include "timer.h"
#include "mii.h"
#include "etherboot.h"
#include "nic.h"
-#include "pci.h"
+#include <gpxe/pci.h>
#include "timer.h"
#include "string.h"
#include "tg3.h"
/* to get the interface to the body of the program */
#include "nic.h"
/* to get the PCI support functions, if this is a PCI NIC */
-#include "pci.h"
+#include <gpxe/pci.h>
#include "timer.h"
#include "tlan.h"
#include "etherboot.h"
#include "nic.h"
-#include "pci.h"
+#include <gpxe/pci.h>
/* User settable parameters */
#include "etherboot.h"
#include "nic.h"
-#include "pci.h"
+#include <gpxe/pci.h>
#include "timer.h"
/* define all ioaddr */
/* to get the interface to the body of the program */
#include "nic.h"
/* to get the PCI support functions, if this is a PCI NIC */
-#include "pci.h"
+#include <gpxe/pci.h>
#include "via-velocity.h"
#include "etherboot.h"
#include "nic.h"
-#include "pci.h"
+#include <gpxe/pci.h>
#include "timer.h"
static const char *w89c840_version = "driver Version 0.94 - December 12, 2003";
*
*/
-#include "tables.h"
+#include <gpxe/tables.h>
#include "ip.h"
/** A background protocol */
#include "stdint.h"
#include "vsprintf.h"
-#include "tables.h"
+#include <gpxe/tables.h>
/** @file
*
#include "string.h"
#include "buffer.h"
#include "dhcp.h" /* for dhcp_dev_id */
-#include "tables.h"
+#include <gpxe/tables.h>
#include <assert.h>
/*
#define DRIVER(_name,_type_driver,_bus_driver,_bus_info, \
_probe,_disable) \
- static struct device_driver device_ ## _bus_info __device_driver = { \
+ struct device_driver device_ ## _bus_info __device_driver = { \
.name = _name, \
.type_driver = &_type_driver, \
.bus_driver = &_bus_driver, \
#define ENOENT 0xd4
#define EAFNOSUPPORT 0xd5
#define EAGAIN 0xd6
+#define EIO 0xd7
/* Data structures and declarations */
-#include "tables.h"
+#include <gpxe/tables.h>
extern int errno;
-#ifndef _HELLO_H
-#define _HELLO_H
+#ifndef _GPXE_HELLO_H
+#define _GPXE_HELLO_H
/** @file
*
-#ifndef _IF_ARP_H
-#define _IF_ARP_H
+#ifndef _GPXE_IF_ARP_H
+#define _GPXE_IF_ARP_H
/** @file
*
return ( arp_target_ha ( arphdr ) + arphdr->ar_hln );
}
-#endif /* _IF_ARP_H */
+#endif /* _GPXE_IF_ARP_H */
-#ifndef _IF_ETHER_H
-#define _IF_ETHER_H
+#ifndef _GPXE_IF_ETHER_H
+#define _GPXE_IF_ETHER_H
#include <stdint.h>
uint16_t h_protocol;
} __attribute__ ((packed));
-#endif /* _IF_ETHER_H */
+#endif /* _GPXE_IF_ETHER_H */
-#ifndef _IN_H
-#define _IN_H
+#ifndef _GPXE_IN_H
+#define _GPXE_IN_H
#include <stdint.h>
#define IP_TCP 6
#define IP_UDP 17
-/* Same after going through htonl */
-#define IP_BROADCAST 0xFFFFFFFF
+#define INADDR_NONE 0xffffffff
+
+#define INADDR_BROADCAST 0xffffffff
+
+#define IN_MULTICAST(addr) ( ( (addr) & 0xf0000000 ) == 0xe0000000 )
struct in_addr {
uint32_t s_addr;
extern int inet_aton ( const char *cp, struct in_addr *inp );
extern char * inet_ntoa ( struct in_addr in );
-#endif /* _IN_H */
+#endif /* _GPXE_IN_H */
-#ifndef _IP_H
-#define _IP_H
+#ifndef _GPXE_IP_H
+#define _GPXE_IP_H
/** @file
*
extern void init_tcpip ( void );
extern void run_tcpip ( void );
-#endif /* _IP_H */
+#endif /* _GPXE_IP_H */
-#ifndef _ISCSI_H
-#define _ISCSI_H
+#ifndef _GPXE_ISCSI_H
+#define _GPXE_ISCSI_H
/** @file
*
return ( iscsi->state == ISCSI_STATE_FAILED );
}
-#endif /* _ISCSI_H */
+#endif /* _GPXE_ISCSI_H */
-#ifndef PCI_H
-#define PCI_H
+#ifndef _GPXEPCI_H
+#define _GPXEPCI_H
/*
** Support for NE2000 PCI clones added David Monro June 1997
* your option) any later version.
*/
-#include "stdint.h"
-#include "nic.h"
+#include <stdint.h>
#include "pci_ids.h"
#define PCI_BUS_TYPE 1
uint16_t busdevfn;
uint8_t revision;
uint8_t irq;
-} __attribute__ (( packed ));
+ void *priv;
+};
/*
* Useful busdevfn calculations
unsigned int bar );
extern unsigned long pci_bar_size ( struct pci_device *pci, unsigned int bar );
extern int pci_find_capability ( struct pci_device *pci, int capability );
-extern void pci_fill_nic ( struct nic *nic, struct pci_device *pci );
/*
* PCI bus global definition
*/
extern struct bus_driver pci_driver;
-#endif /* PCI_H */
+static inline void pci_set_drvdata ( struct pci_device *pci, void *priv ) {
+ pci->priv = priv;
+}
+
+static inline void * pci_get_drvdata ( struct pci_device *pci ) {
+ return pci->priv;
+}
+
+#endif /* _GPXE_PCI_H */
+#ifndef _GPXE_PCI_IDS_H
+#define _GPXE_PCI_IDS_H
+
/*
* PCI Class, Vendor and Device IDs
*
#define PCI_SUBVENDOR_ID_EXSYS 0xd84d
#define PCI_VENDOR_ID_TIGERJET 0xe159
#define PCI_VENDOR_ID_ARK 0xedd8
+
+#endif /* _GPXE_PCI_IDS_H */
-#ifndef _SCSI_H
-#define _SCSI_H
+#ifndef _GPXE_SCSI_H
+#define _GPXE_SCSI_H
#include <stdint.h>
char bytes[16];
};
-#endif /* _SCSI_H */
+#endif /* _GPXE_SCSI_H */
-#ifndef TABLES_H
-#define TABLES_H
+#ifndef _GPXE_TABLES_H
+#define _GPXE_TABLES_H
/** @page ifdef_harmful #ifdef considered harmful
*
*
*/
-#include "compiler.h" /* for doxygen */
+#ifdef DOXYGEN
+#define __attribute__(x)
+#endif
#define __table_str(x) #x
#define __table_section(table,idx) \
#define __table_end(table) \
__attribute__ (( unused, __table_section_end(table) ))
-#endif /* TABLES_H */
+#endif /* _GPXE_TABLES_H */
-#ifndef _TCP_H
-#define _TCP_H
+#ifndef _GPXE_TCP_H
+#define _GPXE_TCP_H
/** @file
*
size_t len );
extern void tcp_close ( struct tcp_connection *conn );
-#endif /* _TCP_H */
+#endif /* _GPXE_TCP_H */
#include "stdint.h"
#include "io.h"
-#include "tables.h"
+#include <gpxe/tables.h>
#include "dev.h"
struct image {
#define INIT_H
#include "stddef.h" /* for NULL */
-#include "tables.h"
+#include <gpxe/tables.h>
/*
* In order to avoid having objects dragged in just because main()
#ifndef PROTO_H
#define PROTO_H
-#include "tables.h"
+#include <gpxe/tables.h>
#include "buffer.h"
#include <gpxe/in.h>
#define RESOLV_H
#include <gpxe/in.h>
-#include "tables.h"
+#include <gpxe/tables.h>
struct resolver {
const char *name;
DBG ( "NMB resolving %s\n", name );
/* Set up the query data */
- nameserver.sin_addr.s_addr = IP_BROADCAST;
+ nameserver.sin_addr.s_addr = INADDR_BROADCAST;
nameserver.sin_port = NBNS_UDP_PORT;
memset ( &query, 0, sizeof ( query ) );
query.dns.id = htons ( 1 );