changelog
来自「eCos操作系统源码」· 代码 · 共 828 行 · 第 1/3 页
TXT
828 行
2004-01-15 Jeff Daly <jeffrey.daly@intel.com> * src/if_i82559.c: support for large EEPROMs2004-01-05 Gary Thomas <gary@mlbassoc.com> * src/if_i82559.c: Names of FLASH config types changed.2003-02-27 Mark Salter <msalter@redhat.com> * src/if_i82559.c (eth_set_mac_address): Correct writing of wrong address to EEPROM.2003-02-22 Mark Salter <msalter@redhat.com> * src/if_i82559.c: Fix endian issues with EEPROM writing. Use read-modify-write to set EEPROM mac address. Support writing to EEPROM the mac address obtained from CYGHWR_DEVS_ETH_INTEL_I82559_GET_ESA.2003-02-12 Mark Salter <msalter@redhat.com> * src/if_i82559.c: Remove restriction preventing combination of *_GET_ESA and *_HAS_EEPROM.2003-01-03 Gary Thomas <gary@mlbassoc.com> * src/if_i82559.c: * cdl/intel_i82559_eth_drivers.cdl: Allow finer control over debug (chatter) by making control booldata.2002-12-17 Mark Salter <msalter@redhat.com> * src/if_i82559.c (CYGHWR_DEVS_ETH_INTEL_I82559_ENDIAN_NEUTRAL_IO): New flag to support systems where PCI IO operations are not affected by CPU endianess.2002-10-06 Andrew Lunn <andrew.lunn@ascom.ch> * src/if_i82559.c (pci_init_find_82559s): Changed scope of max_interrupt_handle since its needed in other places. * src/if_i82559.c (i82559_stop): Corrected wrong name of variable in a diag_printf function.2002-07-24 Gary Thomas <gary@mlbassoc.com> * src/if_i82559.c (pci_init_find_82559s): Allow platform to define CYGHWR_DEVS_ETH_INTEL_I82559_USE_MEMORY which forces use of memory instead of I/O space for device access.2002-06-14 Gary Thomas <gary@chez-thomas.org> * src/if_i82559.c: Need to include <pkgconf/io_eth_drivers.h> for proper configuration of stand-alone (polled) vs. system (interrupt driven) mode.2002-04-09 Hugo Tyson <hmt@redhat.com> * src/if_i82559.c (i82559_stop): Free up any pending transmissions to prevent MBUF store leaks if the calling thread - the one that's shutting down the interface - priority ends up higher than (or same as) the network service threads.2002-03-26 Jonathan Larmour <jlarmour@redhat.com> * src/if_i82559.c (wait_for_cmd_done): Don't assert if RUC_ADDR_LOAD command doesn't clear - on some chips it never does.2002-03-18 Hugo Tyson <hmt@redhat.com> * src/if_i82559.c (pci_init_find_82559s): Move allocation of statistics pointer for each device to here, out of i82559_start(). It used to leak PCI window store every time the interface cycled down/up. [Case 107110]2002-02-25 Mark Salter <msalter@redhat.com> * src/if_i82559.c: Don't call PacketRxReady in standalone configuration unless ready to accept a packet. Limit packet delivery to one packet at a time in standalone configuration.2002-02-20 Hugo Tyson <hmt@redhat.com> * include/i82559_info.h: New fields to record/control multicast all reception, oversized packet reception and promiscuous mode neatly. * src/if_i82559.c: Initial support for multicast address reception filtering. (i82559_restart): New routine to restart the device after fiddling with its setup - a tail recursion from i82559_start(). (i82559_configure): More generic flags passed in and handled. (i82559_set_multicast): Routine to pass a set of addresses into the device; it works out the bitmap et al for us! (i82559_ioctl): Handle new case arms ETH_DRV_SET_MC_LIST and ETH_DRV_SET_MC_ALL if defined. Reset and restart the device, diddling its status between. 2002-02-19 Mark Salter <msalter@redhat.com> * src/if_i82559.c (pci_init_find_82559s): Don't use IRQ support if CYGPKG_IO_ETH_DRIVERS_STAND_ALONE.2002-01-28 Mark Salter <msalter@redhat.com> * src/if_i82559.c (pci_init_find_82559s): Removed CYG_ASSERT which assumed system PCI window exists.2002-01-10 Jonathan Larmour <jlarmour@redhat.com> * src/if_i82559.c (find_82559s_match_func): Add some more compatible PCI ids.2002-01-03 Mark Salter <msalter@redhat.com> * src/if_i82559.c (pci_init_find_82559s): Remove check that assumes driver owns entire PCI window. * cdl/intel_i82559_eth_drivers.cdl: Add CYGNUM_DEVS_ETH_INTEL_I82559_MAX_TX_DESCRIPTORS and CYGNUM_DEVS_ETH_INTEL_I82559_MAX_RX_DESCRIPTORS.2001-11-19 Hugo Tyson <hmt@redhat.com>2001-11-19 Anssi Pulkkinen <Anssi.Pulkkinen@ascom.ch> * src/if_i82559.c (TxMachine): The test to see if there is a new tx to start must also say "go" if the tx queue is full. Normally, if the txqueue is full, a tx will be occurring at all times - so one will complete soon, so the tx queue full flag will soon be cleared, and this condition will recover. I suspect a subtle race which effectively means a new tx is queued and fills the queue in between two tx's, so no TxDone() follows, causes the hang which we get without this extra test under high load. [CASE 106686]2001-09-20 Gary Thomas <gthomas@redhat.com> * src/if_i82559.c: Add declaration of 'i82559_stop' to quiet warning.2001-09-13 Hugo Tyson <hmt@redhat.com> * cdl/intel_i82559_eth_drivers.cdl: * src/if_i82559.c: Remove the tickle thread from this driver. The functionality is now in the network timeout functionality which handles the "deliver" calls. So it's only called if the net is quiet.2001-09-12 Hugo Tyson <hmt@redhat.com> * src/if_i82559.c (TxDone): Defensive programming; zero the Tx key in the global data before making the callback. This change appeared useful in our forebear, the EBSA-specific driver.2001-08-29 Hugo Tyson <hmt@redhat.com> * cdl/intel_i82559_eth_drivers.cdl: New CDL options called CYGPKG_DEVS_ETH_INTEL_I82559_TICKLE_THREAD, .._PRIORITY and .._DELAY to control the thread. By default this is all disabled because it is not needed for a real network application which itself proactively tries to use the net - it's only needed when the app is totally passive, so the driver otherwise does not get CPU time at all. * src/if_i82559.c (starti82559ticklethread): New code to start a thread (!) to catch lost interrupts and thus restart jammed hardware. It's only possible if KERNEL and NET - RedBoot is unaffected, and it's not needed for RedBoot 'cos RedBoot polls. (TxMachine): An assert about the CU idle status sometimes fired; made the code more conservative wrt timing here. (comments): more documentation on the possible external configury by .inl file, described the two TIMEOUT macros that can be set, and indeed must be to use the tickling thread meaningfully.2001-08-22 Gary Thomas <gthomas@redhat.com> * src/if_i82559.c: printf() is no longer a part of RedBoot. Thus all programs must use diag_printf() and related functions instead.2001-06-22 Jesper Skov <jskov@redhat.com> * src/if_i82559.c (i82559_init): Handle EEPROMS without CRC.2001-05-16 Jonathan Larmour <jlarmour@redhat.com> * src/if_i82559.c (udelay): Use virtual vector rather than assuming hal_delay_us() exists.2001-04-09 Hugo Tyson <hmt@redhat.com> * src/if_i82559.c (pciwindow_mem_alloc): If asked, by CYGHWR_DEVS_ETH_INTEL_I82559_PCIMEM_DISCONTIGUOUS, check for breaks in the physical address of PCI window memory, and discard any block with a break in it, then redo the alloc. This is for targets where smaller SDRAM chips are fitted than the address width, so they end up with gaps in (physical) memory.2001-04-09 Hugo Tyson <hmt@redhat.com> * src/if_i82559.c (i82559_init): Support hardware with only one serial EEPROM attached to one device, but multiple devices. This generally involves moving some decisions for eg. programming EEPROM or not, optionally from compiletime to runtime. Improved the diagnostics a bit also, and fixed some bugs. (eth_set_mac_address): now takes an arg to say whether we want to program the EEPROM, or are just setting up the chip. (i82559_ioctl): This is the only place we set that arg to write the EEPROM, startup never tries to write EEPROM from any external source such as configured ESA or RedBoot params.2001-04-09 Hugo Tyson <hmt@redhat.com> * src/if_i82559.c (i82559_start): Warnings fixed; unused vars following previous change.2001-04-09 Hugo Tyson <hmt@redhat.com> * src/if_i82559.c (i82559_start): Do not wait for command completion after the initial DUMPSTATS operation. The code to wait was bogus; it was looking at the structure in the wrong way. In any case, there is no need to wait, the wait_for_cmd_done() in any following activity is good enough.2001-03-28 Hugo Tyson <hmt@redhat.com> * src/if_i82559.c (update_statistics): Fix warning - only declare op_i82559 if we use it - from previous change.2001-03-23 Hugo Tyson <hmt@redhat.com> * src/if_i82559.c (i82559_can_send, i82559_send): Count up and down entries into these routines, and always say "no" to can_send() if we are recursing, ie. within_send != 0. This is a good idea because it limits stack usage. The recursion happens because of the very neccessary polling of rx state within the tx routines - which can deliver packets up into the stack, which can trigger a response tx and so on... Also fixed a harmless bug where, after polling, the p_i82559 current device state pointer pointer to the wrong device, if we polled both devs regardless; it only caused problems with the within_send recursion count. * include/i82559_info.h (I82559): Add within_send field.2001-03-15 Hugo Tyson <hmt@redhat.com> * src/if_i82559.c (i82559_init): Support external macro CYGHWR_DEVS_ETH_INTEL_I82559_GET_ESA(...), which if defined, is used to acquire a MAC address, on the assumption that there is no EEPROM present. CYGHWR_DEVS_ETH_INTEL_I82559_HAS_NO_EEPROM confirms that there is no EEPROM attached to the 82559(s) so we can omit all that code. It's in the negative sense because it's the unusual case.2001-03-13 Hugo Tyson <hmt@redhat.com> * src/if_i82559.c (CYGHWR_DEVS_ETH_INTEL_I82559_DEMUX_ALL): Fully enable "DEMUX_ALL" option; all devices are scanned for activity/wedging/interrupts at every opportunity. Multiple devices on the same interrupts are now supported.2001-03-12 Hugo Tyson <hmt@redhat.com> * src/if_i82559.c (i82559_configure): New routine combines actions of eth_set_promiscuous_mode() and eth_set_config() both of which disappear. Thus the device is always configured correctly from the start. [from a patch from Martin Buck <martin.buck@ascom.ch> via the EBSA285 driver] (eth_dsr): Do not call upper layer unless we are in a networked [non-RedBoot, non-polled] environment. This is necessary because we call our own DSR from foreground to unstick after a lost interrupt. (find_82559s_match_func): New routine to discover disparate devices on the PCI bus. Used in pci_init_find_82559s(). (dump_txcb): Various junk debug functions removed.2001-03-12 Hugo Tyson <hmt@redhat.com>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?