mirror of
https://github.com/ipxe/ipxe
synced 2025-12-25 00:17:57 +03:00
Synced across updates from Etherboot 5.4 tree
This commit is contained in:
@@ -61,10 +61,6 @@ static void t3c515_wait(unsigned int nticks)
|
||||
|
||||
/* TJL definations */
|
||||
#define HZ 100
|
||||
#define u16 unsigned short
|
||||
#define u32 unsigned long
|
||||
#define s16 signed short
|
||||
#define s32 signed long
|
||||
static int if_port;
|
||||
static struct corkscrew_private *vp;
|
||||
/* Brought directly from 3c515.c by Becker */
|
||||
|
||||
@@ -50,13 +50,6 @@
|
||||
|
||||
#define TX_TIME_OUT 2*TICKS_PER_SEC
|
||||
|
||||
typedef unsigned char u8;
|
||||
typedef signed char s8;
|
||||
typedef unsigned short u16;
|
||||
typedef signed short s16;
|
||||
typedef unsigned int u32;
|
||||
typedef signed int s32;
|
||||
|
||||
/* Register offsets for davicom device */
|
||||
enum davicom_offsets {
|
||||
CSR0=0, CSR1=0x08, CSR2=0x10, CSR3=0x18, CSR4=0x20, CSR5=0x28,
|
||||
|
||||
@@ -413,13 +413,6 @@ static char *adapter_name[] = {
|
||||
#define ALIGN8 ((u32)8 - 1) /* 2 longword (quadword) align */
|
||||
#define ALIGN ALIGN8 /* Keep the LANCE happy... */
|
||||
|
||||
typedef long s32;
|
||||
typedef unsigned long u32;
|
||||
typedef short s16;
|
||||
typedef unsigned short u16;
|
||||
typedef char s8;
|
||||
typedef unsigned char u8;
|
||||
|
||||
/*
|
||||
** The DEPCA Rx and Tx ring descriptors.
|
||||
*/
|
||||
|
||||
@@ -51,13 +51,6 @@
|
||||
#define dprintf(x)
|
||||
#endif
|
||||
|
||||
typedef unsigned char u8;
|
||||
typedef signed char s8;
|
||||
typedef unsigned short u16;
|
||||
typedef signed short s16;
|
||||
typedef unsigned int u32;
|
||||
typedef signed int s32;
|
||||
|
||||
/* Condensed operations for readability. */
|
||||
#define virt_to_le32desc(addr) cpu_to_le32(virt_to_bus(addr))
|
||||
#define le32desc_to_virt(addr) bus_to_virt(le32_to_cpu(addr))
|
||||
|
||||
@@ -18,6 +18,12 @@ Be careful with seating the EPROM as the socket on my board actually
|
||||
has 34 pins, the top row of 2 are not used.
|
||||
***************************************************************************/
|
||||
|
||||
/*
|
||||
|
||||
timlegge 2005-05-18 remove the relocation changes cards that
|
||||
write directly to the hardware don't need it
|
||||
*/
|
||||
|
||||
/*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
@@ -257,8 +263,8 @@ static unsigned eeprom_reg = EEPROM_REG_PRO;
|
||||
#define eeprom_delay() { udelay(40); }
|
||||
#define EE_READ_CMD (6 << 6)
|
||||
|
||||
/* do a full reset */
|
||||
#define eepro_full_reset(ioaddr) outb(RESET_CMD, ioaddr); udelay(40);
|
||||
/* do a full reset; data sheet asks for 250us delay */
|
||||
#define eepro_full_reset(ioaddr) outb(RESET_CMD, ioaddr); udelay(255);
|
||||
|
||||
/* do a nice reset */
|
||||
#define eepro_sel_reset(ioaddr) { \
|
||||
@@ -320,13 +326,15 @@ static void eepro_reset(struct nic *nic)
|
||||
eepro_sw2bank0(nic->ioaddr); /* Switch back to bank 0 */
|
||||
eepro_clear_int(nic->ioaddr);
|
||||
/* Initialise RCV */
|
||||
rx_start = (unsigned int)bus_to_virt(RCV_LOWER_LIMIT << 8);
|
||||
outw(RCV_LOWER_LIMIT << 8, nic->ioaddr + RCV_BAR);
|
||||
outw(rx_start = (RCV_LOWER_LIMIT << 8), nic->ioaddr + RCV_BAR);
|
||||
outw(((RCV_UPPER_LIMIT << 8) | 0xFE), nic->ioaddr + RCV_STOP);
|
||||
/* Make sure 1st poll won't find a valid packet header */
|
||||
outw((RCV_LOWER_LIMIT << 8), nic->ioaddr + HOST_ADDRESS_REG);
|
||||
outw(0, nic->ioaddr + IO_PORT);
|
||||
/* Intialise XMT */
|
||||
outw((XMT_LOWER_LIMIT << 8), nic->ioaddr + xmt_bar);
|
||||
eepro_sel_reset(nic->ioaddr);
|
||||
tx_start = tx_end = (unsigned int)bus_to_virt(XMT_LOWER_LIMIT << 8);
|
||||
tx_start = tx_end = (XMT_LOWER_LIMIT << 8);
|
||||
tx_last = 0;
|
||||
eepro_en_rx(nic->ioaddr);
|
||||
}
|
||||
@@ -336,7 +344,7 @@ POLL - Wait for a frame
|
||||
***************************************************************************/
|
||||
static int eepro_poll(struct nic *nic, int retrieve)
|
||||
{
|
||||
unsigned int rcv_car = virt_to_bus((void *)rx_start);
|
||||
unsigned int rcv_car = rx_start;
|
||||
unsigned int rcv_event, rcv_status, rcv_next_frame, rcv_size;
|
||||
|
||||
/* return true if there's an ethernet packet ready to read */
|
||||
@@ -380,8 +388,12 @@ static int eepro_poll(struct nic *nic, int retrieve)
|
||||
}
|
||||
#endif
|
||||
nic->packetlen = rcv_size;
|
||||
rcv_car = virt_to_bus((void *) (rx_start + RCV_HEADER + rcv_size));
|
||||
rx_start = (unsigned int)bus_to_virt(rcv_next_frame << 8);
|
||||
rcv_car = (rx_start + RCV_HEADER + rcv_size);
|
||||
rx_start = rcv_next_frame;
|
||||
/*
|
||||
hex_dump(rcv_car, nic->packetlen);
|
||||
*/
|
||||
|
||||
if (rcv_car == 0)
|
||||
rcv_car = ((RCV_UPPER_LIMIT << 8) | 0xff);
|
||||
outw(rcv_car - 1, nic->ioaddr + RCV_STOP);
|
||||
@@ -455,7 +467,7 @@ static void eepro_disable ( struct nic *nic, struct isa_device *isa __unused ) {
|
||||
eepro_sw2bank0(nic->ioaddr); /* Switch to bank 0 */
|
||||
/* Flush the Tx and disable Rx */
|
||||
outb(STOP_RCV_CMD, nic->ioaddr);
|
||||
tx_start = tx_end = (unsigned int) (bus_to_virt(XMT_LOWER_LIMIT << 8));
|
||||
tx_start = tx_end = (XMT_LOWER_LIMIT << 8);
|
||||
tx_last = 0;
|
||||
/* Reset the 82595 */
|
||||
eepro_full_reset(nic->ioaddr);
|
||||
|
||||
@@ -110,13 +110,6 @@
|
||||
|
||||
static int ioaddr;
|
||||
|
||||
typedef unsigned char u8;
|
||||
typedef signed char s8;
|
||||
typedef unsigned short u16;
|
||||
typedef signed short s16;
|
||||
typedef unsigned int u32;
|
||||
typedef signed int s32;
|
||||
|
||||
enum speedo_offsets {
|
||||
SCBStatus = 0, SCBCmd = 2, /* Rx/Command Unit command and status. */
|
||||
SCBPointer = 4, /* General purpose pointer. */
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -30,13 +30,6 @@
|
||||
/* to get the PCI support functions, if this is a PCI NIC */
|
||||
#include "pci.h"
|
||||
|
||||
typedef unsigned char u8;
|
||||
typedef signed char s8;
|
||||
typedef unsigned short u16;
|
||||
typedef signed short s16;
|
||||
typedef unsigned int u32;
|
||||
typedef signed int s32;
|
||||
|
||||
/* Condensed operations for readability. */
|
||||
#define virt_to_le32desc(addr) cpu_to_le32(virt_to_bus(addr))
|
||||
#define le32desc_to_virt(addr) bus_to_virt(le32_to_cpu(addr))
|
||||
|
||||
@@ -71,13 +71,6 @@
|
||||
|
||||
#define NUM_RX_DESC 4 /* Number of Rx descriptor registers. */
|
||||
|
||||
typedef uint8_t u8;
|
||||
typedef int8_t s8;
|
||||
typedef uint16_t u16;
|
||||
typedef int16_t s16;
|
||||
typedef uint32_t u32;
|
||||
typedef int32_t s32;
|
||||
|
||||
/* helpful macroes if on a big_endian machine for changing byte order.
|
||||
not strictly needed on Intel */
|
||||
#define get_unaligned(ptr) (*(ptr))
|
||||
|
||||
@@ -53,13 +53,6 @@
|
||||
#define dprintf(x)
|
||||
#endif
|
||||
|
||||
typedef unsigned char u8;
|
||||
typedef signed char s8;
|
||||
typedef unsigned short u16;
|
||||
typedef signed short s16;
|
||||
typedef unsigned int u32;
|
||||
typedef signed int s32;
|
||||
|
||||
#define HZ 100
|
||||
|
||||
/* Condensed operations for readability. */
|
||||
|
||||
@@ -54,13 +54,6 @@
|
||||
#define drv_version "v1.3"
|
||||
#define drv_date "03-29-2004"
|
||||
|
||||
typedef unsigned char u8;
|
||||
typedef signed char s8;
|
||||
typedef unsigned short u16;
|
||||
typedef signed short s16;
|
||||
typedef unsigned int u32;
|
||||
typedef signed int s32;
|
||||
|
||||
static u32 ioaddr; /* Globally used for the card's io address */
|
||||
static struct nic_operations pcnet32_operations;
|
||||
static struct pci_driver pcnet32_driver;
|
||||
|
||||
@@ -52,13 +52,6 @@
|
||||
#define drv_version "v1.6"
|
||||
#define drv_date "03-27-2004"
|
||||
|
||||
typedef unsigned char u8;
|
||||
typedef signed char s8;
|
||||
typedef unsigned short u16;
|
||||
typedef signed short s16;
|
||||
typedef unsigned int u32;
|
||||
typedef signed int s32;
|
||||
|
||||
#define HZ 1000
|
||||
|
||||
static u32 ioaddr;
|
||||
|
||||
@@ -363,13 +363,6 @@ enum sis630_revision_id {
|
||||
|
||||
#define NUM_RX_DESC 4 /* Number of Rx descriptor registers. */
|
||||
|
||||
typedef unsigned char u8;
|
||||
typedef signed char s8;
|
||||
typedef unsigned short u16;
|
||||
typedef signed short s16;
|
||||
typedef unsigned int u32;
|
||||
typedef signed int s32;
|
||||
|
||||
/* Time in ticks before concluding the transmitter is hung. */
|
||||
#define TX_TIMEOUT (4*TICKS_PER_SEC)
|
||||
|
||||
|
||||
@@ -52,13 +52,6 @@
|
||||
#define drv_version "v1.12"
|
||||
#define drv_date "2004-03-21"
|
||||
|
||||
typedef unsigned char u8;
|
||||
typedef signed char s8;
|
||||
typedef unsigned short u16;
|
||||
typedef signed short s16;
|
||||
typedef unsigned int u32;
|
||||
typedef signed int s32;
|
||||
|
||||
#define HZ 100
|
||||
|
||||
/* Condensed operations for readability. */
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
/* 11-13-2003 timlegge Fix Issue with NetGear GA302T
|
||||
* 11-18-2003 ebiederm Generalize NetGear Fix to what the code was supposed to be.
|
||||
* 01-06-2005 Alf (Frederic Olivie) Add Dell bcm 5751 (0x1677) support
|
||||
* 04-15-2005 Martin Vogt Add Fujitsu Siemens Computer (FSC) 0x1734 bcm 5751 0x105d support
|
||||
*/
|
||||
|
||||
#include "etherboot.h"
|
||||
@@ -2413,6 +2414,9 @@ static struct subsys_tbl_ent subsys_id_to_phy_id[] = {
|
||||
{ PCI_VENDOR_ID_DELL, 0x0109, PHY_ID_BCM5411 }, /* MERLOT */
|
||||
{ PCI_VENDOR_ID_DELL, 0x010a, PHY_ID_BCM5411 }, /* SLIM_MERLOT */
|
||||
{ PCI_VENDOR_ID_DELL, 0x0179, PHY_ID_BCM5751 }, /* EtherXpress */
|
||||
|
||||
/* Fujitsu Siemens Computer */
|
||||
{ PCI_VENDOR_ID_FSC, 0x105d, PHY_ID_BCM5751 }, /* Futro C200 */
|
||||
|
||||
/* Compaq boards. */
|
||||
{ PCI_VENDOR_ID_COMPAQ, 0x007c, PHY_ID_BCM5701 }, /* BANSHEE */
|
||||
|
||||
@@ -2156,7 +2156,7 @@ struct tg3 {
|
||||
((X) == PHY_ID_BCM5400 || (X) == PHY_ID_BCM5401 || \
|
||||
(X) == PHY_ID_BCM5411 || (X) == PHY_ID_BCM5701 || \
|
||||
(X) == PHY_ID_BCM5703 || (X) == PHY_ID_BCM5704 || \
|
||||
(X) == PHY_ID_BCM5705 || (X) == PHY_ID_BCM5751 || \
|
||||
(X) == PHY_ID_BCM5705 || (X) == PHY_ID_BCM5750 || (X) == PHY_ID_BCM5751 || \
|
||||
(X) == PHY_ID_BCM8002 || (X) == PHY_ID_SERDES)
|
||||
|
||||
unsigned long regs;
|
||||
|
||||
@@ -34,22 +34,10 @@
|
||||
* Indent Style: indent -kr -i8
|
||||
***************************************************************************/
|
||||
|
||||
/*
|
||||
#include <asm/io.h>
|
||||
#include <asm/types.h>
|
||||
#include <linux/netdevice.h>
|
||||
*/
|
||||
|
||||
typedef unsigned char u8;
|
||||
typedef signed char s8;
|
||||
typedef unsigned short u16;
|
||||
typedef signed short s16;
|
||||
typedef unsigned int u32;
|
||||
typedef signed int s32;
|
||||
/*****************************************************************
|
||||
* TLan Definitions
|
||||
*
|
||||
****************************************************************/
|
||||
/*****************************************************************
|
||||
* TLan Definitions
|
||||
*
|
||||
****************************************************************/
|
||||
|
||||
#define FALSE 0
|
||||
#define TRUE 1
|
||||
|
||||
@@ -48,6 +48,8 @@
|
||||
/*********************************************************************/
|
||||
|
||||
/*
|
||||
08 Feb 2005 Ramesh Chander chhabaramesh at yahoo.co.in added table entries
|
||||
for SGThomson STE10/100A
|
||||
07 Sep 2003 timlegge Multicast Support Added
|
||||
11 Apr 2001 mdc [patch to etherboot 4.7.24]
|
||||
Major rewrite to include Linux tulip driver media detection
|
||||
@@ -118,13 +120,6 @@ static int tulip_debug = 2; /* 1 normal messages, 0 quiet .. 7 verbo
|
||||
|
||||
#define TX_TIME_OUT 2*TICKS_PER_SEC
|
||||
|
||||
typedef uint8_t u8;
|
||||
typedef int8_t s8;
|
||||
typedef uint16_t u16;
|
||||
typedef int16_t s16;
|
||||
typedef uint32_t u32;
|
||||
typedef int32_t s32;
|
||||
|
||||
/* helpful macros if on a big_endian machine for changing byte order.
|
||||
not strictly needed on Intel */
|
||||
#define get_unaligned(ptr) (*(ptr))
|
||||
@@ -157,7 +152,7 @@ static const char * const medianame[32] = {
|
||||
enum tulip_chips {
|
||||
DC21040=0, DC21041=1, DC21140=2, DC21142=3, DC21143=3,
|
||||
LC82C168, MX98713, MX98715, MX98725, AX88141, AX88140, PNIC2, COMET,
|
||||
COMPEX9881, I21145, XIRCOM
|
||||
COMPEX9881, I21145, XIRCOM, SGThomson, /*Ramesh Chander*/
|
||||
};
|
||||
|
||||
enum pci_id_flags_bits {
|
||||
@@ -233,6 +228,8 @@ static const struct pci_id_info pci_id_tbl[] = {
|
||||
TULIP_IOTYPE, 256, MX98715 },
|
||||
{ "3Com 3cSOHO100B-TX (ADMtek Centuar)", { 0x930010b7, 0xffffffff, 0, 0, 0, 0 },
|
||||
TULIP_IOTYPE, TULIP_SIZE, COMET },
|
||||
{ "SG Thomson STE10/100A", { 0x2774104a, 0xffffffff, 0, 0, 0, 0 },
|
||||
TULIP_IOTYPE, 256, COMET }, /*Ramesh Chander*/
|
||||
{ 0, { 0, 0, 0, 0, 0, 0 }, 0, 0, 0 },
|
||||
};
|
||||
|
||||
@@ -268,6 +265,7 @@ static struct tulip_chip_table {
|
||||
| HAS_PWRDWN | HAS_NWAY },
|
||||
{ "Xircom tulip work-alike", HAS_MII | HAS_MEDIA_TABLE | ALWAYS_CHECK_MII
|
||||
| HAS_PWRDWN | HAS_NWAY },
|
||||
{ "SGThomson STE10/100A", HAS_MII | MC_HASH_ONLY }, /*Ramesh Chander*/
|
||||
{ 0, 0 },
|
||||
};
|
||||
|
||||
@@ -2068,7 +2066,7 @@ PCI_ROM(0x125b, 0x1400, "ax88140", "ASIX AX88140"),
|
||||
PCI_ROM(0x11f6, 0x9881, "rl100tx", "Compex RL100-TX"),
|
||||
PCI_ROM(0x115d, 0x0003, "xircomtulip", "Xircom Tulip"),
|
||||
PCI_ROM(0x104a, 0x0981, "tulip-0981", "Tulip 0x104a 0x0981"),
|
||||
PCI_ROM(0x104a, 0x2774, "tulip-2774", "Tulip 0x104a 0x2774"),
|
||||
PCI_ROM(0x104a, 0x2774, "SGThomson-STE10100A", "Tulip 0x104a 0x2774"), /*Modified by Ramesh Chander*/
|
||||
PCI_ROM(0x1113, 0x9511, "tulip-9511", "Tulip 0x1113 0x9511"),
|
||||
PCI_ROM(0x1186, 0x1561, "tulip-1561", "Tulip 0x1186 0x1561"),
|
||||
PCI_ROM(0x1259, 0xa120, "tulip-a120", "Tulip 0x1259 0xa120"),
|
||||
|
||||
@@ -84,13 +84,6 @@
|
||||
|
||||
static const char *w89c840_version = "driver Version 0.94 - December 12, 2003";
|
||||
|
||||
typedef unsigned char u8;
|
||||
typedef signed char s8;
|
||||
typedef unsigned short u16;
|
||||
typedef signed short s16;
|
||||
typedef unsigned int u32;
|
||||
typedef signed int s32;
|
||||
|
||||
/* Linux support functions */
|
||||
#define virt_to_le32desc(addr) virt_to_bus(addr)
|
||||
#define le32desc_to_virt(addr) bus_to_virt(addr)
|
||||
|
||||
Reference in New Issue
Block a user