mirror of
https://github.com/xcat2/xNBA.git
synced 2024-12-14 23:31:39 +00:00
Almost all information in this file is now obsolete. Writing a new driver
should, with the new build system, just be a case of writing the .c file and dropping it in place in drivers/net. :)
This commit is contained in:
parent
34a0b5f16f
commit
b9237160ad
@ -1,91 +0,0 @@
|
||||
How I added the SIS900 card to Etherboot
|
||||
|
||||
Author: Marty Connor (mdc@thinguin.org)
|
||||
|
||||
Date: 25 Febrary 2001
|
||||
|
||||
Description:
|
||||
|
||||
This file is intended to help people who want to write an Etherboot
|
||||
driver or port another driver to Etherboot. It is a starting point.
|
||||
Perhaps someday I may write a more detailed description of writing an
|
||||
Etherboot driver. This text should help get people started, and
|
||||
studying sis900.[ch] should help show the basic structure and
|
||||
techniques involved in writing and Etherboot driver.
|
||||
|
||||
***********************************************************************
|
||||
|
||||
0. Back up all the files I need to modify:
|
||||
|
||||
cd etherboot-4.7.20/src
|
||||
cp Makefile Makefile.orig
|
||||
cp config.c config.c.orig
|
||||
cp pci.h pci.h.orig
|
||||
cp NIC NIC.orig
|
||||
cp cards.h cards.h.orig
|
||||
|
||||
1. Edit src/Makefile to add SIS900FLAGS to defines
|
||||
|
||||
SIS900FLAGS= -DINCLUDE_SIS900
|
||||
|
||||
2. edit src/pci.h to add PCI signatures for card
|
||||
|
||||
#define PCI_VENDOR_ID_SIS 0x1039
|
||||
#define PCI_DEVICE_ID_SIS900 0x0900
|
||||
#define PCI_DEVICE_ID_SIS7016 0x7016
|
||||
|
||||
3. Edit src/config.c to add the card to the card probe list
|
||||
|
||||
#if defined(INCLUDE_NS8390) || defined(INCLUDE_EEPRO100) ||
|
||||
defined(INCLUDE_LANCE) || defined(INCLUDE_EPIC100) ||
|
||||
defined(INCLUDE_TULIP) || defined(INCLUDE_OTULIP) ||
|
||||
defined(INCLUDE_3C90X) || defined(INCLUDE_3C595) ||
|
||||
defined(INCLUDE_RTL8139) || defined(INCLUDE_VIA_RHINE) ||
|
||||
defined(INCLUDE_SIS900) || defined(INCLUDE_W89C840)
|
||||
|
||||
... and ...
|
||||
|
||||
#ifdef INCLUDE_SIS900
|
||||
{ PCI_VENDOR_ID_SIS, PCI_DEVICE_ID_SIS900,
|
||||
"SIS900", 0, 0, 0, 0},
|
||||
{ PCI_VENDOR_ID_SIS, PCI_DEVICE_ID_SIS7016,
|
||||
"SIS7016", 0, 0, 0, 0},
|
||||
#endif
|
||||
|
||||
... and ...
|
||||
|
||||
#ifdef INCLUDE_SIS900
|
||||
{ "SIS900", sis900_probe, pci_ioaddrs },
|
||||
#endif
|
||||
|
||||
4. Edit NIC to add sis900 and sis7016 to NIC list
|
||||
|
||||
# SIS 900 and SIS 7016
|
||||
sis900 sis900 0x1039,0x0900
|
||||
sis7016 sis900 0x1039,0x7016
|
||||
|
||||
5. Edit cards.h to add sis900 probe routine declaration
|
||||
|
||||
#ifdef INCLUDE_SIS900
|
||||
extern struct nic *sis900_probe(struct nic *, unsigned short *
|
||||
PCI_ARG(struct pci_device *));
|
||||
#endif
|
||||
|
||||
***********************************************************************
|
||||
|
||||
At this point, you can begin creating your driver source file. See
|
||||
the "Writing an Etherboot Driver" section of the Etherboot
|
||||
documentation for some hints. See the skel.c file for a starting
|
||||
point. If there is a Linux driver for the card, you may be able to
|
||||
use that. Copy and learn from existing Etherboot drivers (this is GPL
|
||||
/ Open Source software!).
|
||||
|
||||
Join the etherboot-developers and etherboot-users mailing lists
|
||||
(information is on http://etherboot.sourceforge.net) for information and
|
||||
assistance. We invite more developers to help improve Etherboot.
|
||||
|
||||
Visit the http://etherboot.sourceforge.net, http://thinguin.org,
|
||||
http://rom-o-matic.net, and http://ltsp.org sites for information and
|
||||
assistance.
|
||||
|
||||
Enjoy.
|
Loading…
Reference in New Issue
Block a user