summaryrefslogtreecommitdiffstats
path: root/src/drivers/net/etherfabric.c
Commit message (Collapse)AuthorAgeFilesLines
* [etherfabric] Avoid use of sleep() in driver codeMichael Brown2016-03-221-1/+1
| | | | Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [pci] Rewrite unrelicensable portions of pci.hMichael Brown2015-03-031-1/+1
| | | | Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [build] Fix uses of literal 0 as a NULL pointerMichael Brown2013-04-281-1/+2
| | | | | | Detected using sparse. Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [src] Fix spelling in comments, debug messages and local variable namesStefan Weil2013-01-031-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes in comments and debug messages: existance -> existence unecessary -> unnecessary occured -> occurred decriptor -> descriptor neccessary -> necessary addres, adress -> address initilize -> initialize sucessfully -> successfully paramter -> parameter acess -> access upto -> up to likelyhood ->likelihood thru -> through substracting -> subtracting lenght -> length isnt -> isn't interupt -> interrupt publically -> publicly (this one was not wrong, but unusual) recieve -> receive accessable -> accessible seperately -> separately pacet -> packet controled -> controlled dectect -> detect indicies -> indices extremly -> extremely boundry -> boundary usefull -> useful unuseable -> unusable auxilliary -> auxiliary embeded -> embedded enviroment -> environment sturcture -> structure complier -> compiler constructes -> constructs supress -> suppress intruduced -> introduced compatability -> compatibility verfication -> verification ths -> the reponse -> response Fixes in local variable names: retreive -> retrieve Most of these fixes were made using codespell. Signed-off-by: Stefan Weil <sw@weilnetz.de> Modified-by: Michael Brown <mcb30@ipxe.org> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [mii] Synchronise constants with current Linux include/linux/mii.hMichael Brown2012-04-181-1/+0Star
| | | | Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [console] Move putchar() and getchar() declarations to stdio.hMichael Brown2012-03-261-1/+1
| | | | Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [etherfabric] Avoid unused variable warning in gcc 4.6Michael Brown2011-03-161-6/+1Star
| | | | | | Reported-by: Ralph Giles <giles@thaumas.net> Tested-by: Ralph Giles <giles@thaumas.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [console] Move include/console.h to include/ipxe/console.hMichael Brown2011-03-091-1/+1
| | | | Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [pci] Make driver PCI ID a property of the PCI deviceMichael Brown2011-02-171-3/+2Star
| | | | Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [nvo] Allow resizing of non-volatile stored option blocksMichael Brown2011-01-191-1/+1
| | | | Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [nvo] Remove the non-volatile options fragment listMichael Brown2011-01-111-8/+3Star
| | | | | | | | | Since its implementation several years ago, no driver has used a fragment list containing more than a single fragment. Simplify the NVO core and the drivers that use it by removing the whole concept of the fragment list, and using a simple (address,length) pair instead. Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [netdevice] Call netdev_link_[up|down|err]() only while registeredMichael Brown2010-09-051-1/+1
| | | | Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [build] Rename gPXE to iPXEMichael Brown2010-04-201-7/+7
| | | | | | | | | | | Access to the gpxe.org and etherboot.org domains and associated resources has been revoked by the registrant of the domain. Work around this problem by renaming project from gPXE to iPXE, and updating URLs to match. Also update README, LOG and COPYRIGHTS to remove obsolete information. Signed-off-by: Michael Brown <mcb30@ipxe.org>
* [netdevice] Separate out the concept of hardware and link-layer addressesMichael Brown2009-08-121-1/+1
| | | | | | | | | | | The hardware address is an intrinsic property of the hardware, while the link-layer address can be changed at runtime. This separation is exposed via APIs such as PXE and EFI, but is currently elided by gPXE. Expose the hardware and link-layer addresses as separate properties within a net device. Drivers should now fill in hw_addr, which will be used to initialise ll_addr at the time of calling register_netdev().
* [ethernet] Update mii.h and use it in drivers that had a private copyDaniel Verkamp2009-05-261-49/+34Star
| | | | Signed-off-by: Michael Brown <mcb30@etherboot.org>
* [legal] Add a selection of FILE_LICENCE declarationsMichael Brown2009-05-181-0/+3
| | | | | Add FILE_LICENCE declarations to almost all files that make up the various standard builds of gPXE.
* [pci] Add driver_data field to struct pci_device_idThomas Miletich2009-03-261-2/+2
| | | | | Modified-by: Michael Brown <mcb30@etherboot.org> Signed-off-by: Michael Brown <mcb30@etherboot.org>
* [etherfabric] Make use of pci_bar_start() 64-bit cleanMichael Brown2008-12-121-2/+3
| | | | | | | | Driver was storing the result of pci_bar_start() and pci_bar_size() in an int, rather than an unsigned long. (Bug was introduced in the vendor's tree in commit eac85cd "Port etherfabric driver to net_device api".)
* [x86_64] Fix assorted 64-bit compilation errors and warningsMichael Brown2008-11-191-3/+4
| | | | | | Remove various 32-bit assumptions scattered throughout the codebase. The code is still not necessarily 64-bit clean, but will at least compile.
* [etherfabric] Merge changes from vendor treeMichael Brown2008-10-171-2337/+3147
| | | | Also clean up minor errors in the use of debug macros.
* [i2c] Generalise i2c bit-bashing support to addressless devicesMichael Brown2008-10-011-3/+3
| | | | | | | | | | | | | | | | | | | | | | Some devices (e.g. the Atmel AT24C11) have no concept of a device address; they respond to every device address and use this value as the word address. Some other devices use part of the device address field to extend the word address field. Generalise the i2c bit-bashing support to handle this by defining the device address length and word address length as properties of an i2c device. The word address is assumed to overflow into the device address field if the address used exceeds the width of the word address field. Also add a bus reset mechanism. i2c chips don't usually have a reset line, so rebooting the host will not clear any bizarre state that the chip may be in. We reset the bus by clocking SCL until we see SDA high, at which point we know we can generate a start condition and have it seen by all devices. We then generate a stop condition to leave the bus in a known state prior to use. Finally, add some extra debugging messages to i2c_bit.c.
* [Settings] Migrate DHCP and NVO code to the new settings API (untested)Michael Brown2008-03-211-3/+3
|
* Modify gPXE core and drivers to work with the new timer subsystemAlexey Zaytsev2008-03-021-1/+0Star
| | | | Signed-off-by: Alexey Zaytsev <alexey.zaytsev@gmail.com>
* Default to port 0 (sic).Michael Brown2006-12-211-1/+1
|
* The "increment MAC address by port number" hack applies only to EF1.Michael Brown2006-12-181-3/+7
|
* The VPD engine is broken and can't actually handle placing VPDMichael Brown2006-12-051-1/+1
| | | | | anywhere other than offset 0 within the EEPROM, so we have to put our settings at 0x100 instead.
* Adjust EEPROM/flash detection to fit expected manufacturing practice.Michael Brown2006-12-051-8/+31
|
* Change some debugging messages to use DBG()Michael Brown2006-12-051-7/+7
|
* Add the concept of a fragment list for non-volatile stored options.Michael Brown2006-12-041-5/+12
|
* Fixed two logic errors that were cancelling each other out.Michael Brown2006-12-041-3/+3
|
* Migrated etherfabric driver to using generic SPI layer.Michael Brown2006-12-041-127/+58Star
|
* Abstracted out part of the concept of an SPI device to a generalised NVSMichael Brown2006-12-041-5/+2Star
| | | | | | | device. Separated the mechanisms of non-volatile storage access and non-volatile stored options.
* Generalised the SPI abstraction layer to also be able to handle interfacesMichael Brown2006-12-041-2/+6
| | | | | | that don't provide the full flexibility of a bit-bashing interface. Temporarily hacked rtl8139.c to use the new interface.
* Basic non-volatile storage supportMichael Brown2006-11-291-11/+107
|
* Merged changes from SolarflareMichael Brown2006-11-281-241/+713
|
* Temporary hack to work around the "TX overflow" problem in the interimMichael Brown2006-06-161-20/+3Star
| | | | | period before updating to the new driver API (which can cope with having TX packets in progress).
* Add 4 bytes to maximum frame length to allow for the frame checksum.Michael Brown2006-06-161-1/+1
| | | | | (This actually matters once you try using TCP, because you *will* receive full-sized frames.)
* Forward-port event queue fixes from 5.4 tree.Michael Brown2006-06-161-0/+27
|
* Forward-port start-of-day fixes from 5.4 treeMichael Brown2006-06-161-3/+31
|
* Forward-port reset-related changes from 5.4 tree.Michael Brown2006-06-161-46/+26Star
|
* Translate between "0 = success" and "0 = failure" call standards.Michael Brown2006-06-141-2/+2
|
* Update to use the generic i2c bit-bashing code.Michael Brown2006-06-111-223/+68Star
|
* Restructured PCI subsystem to fit the new device model.Michael Brown2006-05-161-2/+2
| | | | | | | | | | | | | | Generic PCI code now handles 64-bit BARs correctly when setting "membase"; drivers should need to call pci_bar_start() only if they want to use BARs other than the first memory or I/O BAR. Split rarely-used PCI functions out into pciextra.c. Core PCI code is now 662 bytes (down from 1308 bytes in Etherboot 5.4). 284 bytes of this saving comes from the pci/pciextra split. Cosmetic changes to lots of drivers (e.g. vendor_id->vendor in order to match the names used in Linux).
* Header rearrangement.Michael Brown2006-04-241-1/+1
| | | | | | | | | I want to get to the point where any header in include/ reflects a standard user-level header (e.g. a POSIX header), while everything that's specific to gPXE lives in include/gpxe/. Headers that reflect a Linux header (e.g. if_ether.h) should also be in include/gpxe/, with the same name as the Linux header and, preferably, the same names used for the definitions.
* Build under gpxeMichael Brown2006-03-161-17/+15Star
|
* Merge from Etherboot 5.4Michael Brown2006-03-161-0/+3042