Michael Brown
dad5274522
Add "name" field to struct device to allow human-readable hardware device
names.
Add "dev" pointer in struct net_device to tie network interfaces back to a
hardware device.
Force natural alignment of data types in __table() macros. This seems to
prevent gcc from taking the unilateral decision to occasionally increase
their alignment (which screws up the table packing).
18 years ago
Michael Brown
c65fae2475
Add RX quotas to the net device poll() method. This avoids the problem
of alloc_pkb() exhaustion when e.g. an iSCSI-booted DOS session is left
idle for a long time at the C:\ prompt and builds up a huge packet
backlog.
18 years ago
Michael Brown
e822bc2a90
Autopadding was sometimes overwriting the struct list_head at the end
of the packet buffer. Although pkbuffs are guaranteed to be at least
PKB_ZLEN bytes long, there's no guarantee that the data starts at the
start of the packet buffer.
Since we have to align data for rtl8139 anyway, and since the start of
the packet buffer is guaranteed to be aligned to PKB_ALIGN, we may as
well just shuffle the packet down so that it starts at the start of
the packet buffer. This simultaneously aligns the packet and ensures
that there is enough room for the zero-padding.
18 years ago
Michael Brown
b7fcfe8ece
Added net device TX queue; this will be needed to support the PXE UNDI API
(which will need us to wait for TX completions).
Added debug autocolourisation to netdevice.c
18 years ago
Michael Brown
5af4918356
Added support for wildcard device/vendor ID matches
18 years ago
Michael Brown
7b9617f5df
Add device to hierarchy before calling the driver's probe() function; this
way everything remains consistent if the probe() ends up creating child
devices.
18 years ago
Michael Brown
0c03bb5a9a
Make open() and close() an official part of the netdevice API.
Call netdevice's poll() and transmit() methods only when device is open.
18 years ago
Michael Brown
61ed298bc7
Merge changes from mcb-tcp-fixes branch.
18 years ago
Michael Brown
ab242a760d
Add ability to shut down iSCSI connection
18 years ago
Michael Brown
7ce3df65c2
Default to port 0 (sic).
18 years ago
Michael Brown
6ceaa158da
Return -EIO when verification fails, instead of -EINVAL.
18 years ago
Michael Brown
9f953322a1
Remove warning (at least on platforms with uint32_t == unsigned long).
18 years ago
Michael Brown
a646e38f03
Use stdlib.h for malloc() instead of malloc.h.
18 years ago
Michael Brown
a497e16767
The "increment MAC address by port number" hack applies only to EF1.
18 years ago
Michael Brown
a39b111684
Automatically select between the "10" and "16" variants of command set,
based on the device size.
18 years ago
Michael Brown
3bd7e479a2
Catch SCSI errors, and work around the start-of-day CHECK CONDITION
that some targets send.
18 years ago
Michael Brown
29db66fb51
Add support for non-volatile stored options in the RTL8139 EEPROM.
18 years ago
Michael Brown
d2bf7abe75
Added write support for three-wire devices (e.g. the RTL8139 EEPROM)
18 years ago
Michael Brown
ac401f481d
Verify data after writing
18 years ago
Michael Brown
a128b33b8b
The VPD engine is broken and can't actually handle placing VPD
anywhere other than offset 0 within the EEPROM, so we have to put our
settings at 0x100 instead.
18 years ago
Michael Brown
4c3e0fede5
Adjust EEPROM/flash detection to fit expected manufacturing practice.
18 years ago
Michael Brown
cb883b3faf
Change some debugging messages to use DBG()
18 years ago
Michael Brown
6b45947a59
Added debug statements
18 years ago
Michael Brown
052ef6dc5a
Added nvs_write(). This shares a lot of code in common with nvs_read();
this can probably be optimised down quite a lot.
18 years ago
Michael Brown
cc9bcb99a0
Add the concept of a fragment list for non-volatile stored options.
18 years ago
Michael Brown
f944737045
Fixed two logic errors that were cancelling each other out.
18 years ago
Michael Brown
d62c83a350
Migrated etherfabric driver to using generic SPI layer.
18 years ago
Michael Brown
2d8d21fe74
Added the generic block-splitting code to nvs.c
18 years ago
Michael Brown
1961ba44e1
Added generic SPI protocol handler with read and write support.
18 years ago
Michael Brown
946967f09c
Abstracted out part of the concept of an SPI device to a generalised NVS
device.
Separated the mechanisms of non-volatile storage access and non-volatile
stored options.
18 years ago
Michael Brown
dc06c895fc
Changed length parameter in SPI methods to be a byte length, rather than
a word length.
18 years ago
Michael Brown
931f94dca3
Generalised the SPI abstraction layer to also be able to handle interfaces
that don't provide the full flexibility of a bit-bashing interface.
Temporarily hacked rtl8139.c to use the new interface.
18 years ago
Michael Brown
4cd56820ea
Basic non-volatile storage support
18 years ago
Michael Brown
3234ef1b0b
Merged changes from Solarflare
18 years ago
Michael Brown
3f0b4d9ed8
Updated to use asynchronous operation model for iSCSI requests
Added CHAP authentication
18 years ago
Michael Brown
88e38fa148
We don't actually have a stdio.h header file. Our printf() functions are
defined in vsprintf.h. (This may change, since vsprintf.h is a
non-standard name, but for now it's the one to use.)
There should be no need to include vsprintf.h just for DBG() statements,
since include/compiler.h forces it in for a debug build anyway.
18 years ago
Marty Connor
6ac78f6aff
added stdio.h to includes for DBG compilation
18 years ago
Marty Connor
757618edea
eth_ntoa and warnings cleanup
18 years ago
Marty Connor
cd8168b071
eth_ntoa cleanup. still has warnings. needs work.
18 years ago
Marty Connor
727a88709e
eth_ntoa and warnings cleanup
18 years ago
Marty Connor
0d1087a5de
eth_ntoa and warnings cleanup
18 years ago
Marty Connor
859cc71158
compilation warnings cleanup
18 years ago
Marty Connor
a02dccdafa
eth_ntoa cleanup
18 years ago
Marty Connor
b88aa51b07
warnings cleanup (still gives lots of compilation warnings from unused functions and missing legacy support)
18 years ago
Marty Connor
9588e20828
warnings cleanup
18 years ago
Marty Connor
e753444e04
compilation warnings cleanup
18 years ago
Marty Connor
cf84605271
eth_ntoa and compilation warnings fixes
18 years ago
Marty Connor
097c1b341d
eth_ntoa fixes
18 years ago
Michael Brown
7952bb76ec
Minor fix
18 years ago
Marty Connor
cce8755fb8
eth_ntoa and warnings fixups, memcpy compilation fix
18 years ago