| 2002-01-28 Stefan Rompf <srompf@isg.de>, |
| Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * 21142.c (t21142_timer): Use return value of |
| tulip_check_duplex() to indicate to system whether or not |
| carrier is present. Use carrier presence/absence to determine |
| when next the 21142 media timer should check for link beat. |
| |
| * timer (tulip_timer): Un-comment-out calls to |
| netif_carrier_{on,off}, as there is now value in |
| reporting link beta information to userspace. |
| |
| 2002-01-28 Pavel Roskin <proski@gnu.org> |
| |
| * tulip_core.c (tulip_init_one): Use tp->eeprom instead of |
| allocating a buffer for EEPROM copy on the stack. |
| |
| * tulip_core.c: Add support for Conexant RS7112 (a.k.a. CN7112) |
| chip. |
| * tulip.h: Likewise. Increase EEPROM_SIZE to 512 bytes to |
| accomodate EEPROM on Conexant RS7112. |
| |
| 2002-02-07 Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de> |
| |
| * tulip_core (tulip_pci_tbl[]): |
| Add PCI id for comet tulip clone. |
| |
| 2001-12-11 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * eeprom.c, timer.c, media.c, tulip_core.c: |
| Remove 21040 and 21041 chip support. |
| |
| 2001-11-13 David S. Miller <davem@redhat.com> |
| |
| * tulip_core.c (tulip_mwi_config): Kill unused label early_out. |
| |
| 2001-11-06 Richard Mortimer <richm@oldelvet.netscapeonline.co.uk> |
| |
| * tulip_core.c: Correct set of values to mask out of csr0, |
| for DM9102A chips. Limit burst/alignment of DM9102A chips |
| on Sparcs. |
| |
| 2001-11-06 Jun Sun <jsun@mvista.com> |
| |
| * tulip_core.c: Support finding MAC address on |
| two MIPS boards, DDB5476 and DDB5477. |
| |
| 2001-11-06 Kevin B. Hendricks <khendricks@ivey.uwo.ca> |
| |
| * Makefile, tulip.h, tulip_core.c, pnic2.c, 21142.c: |
| Fixes for PNIC II support. |
| |
| 2001-11-06 David S. Miller <davem@redhat.com> |
| |
| * tulip_core.c: Support reading MAC address from |
| Sparc OBP property local-mac-address. |
| |
| 2001-07-17 Erik A. Hendriks <hendriks@lanl.gov> |
| |
| * 21142.c: Merge fix from tulip.c 0.92w which prevents the |
| overwriting of csr6 bits we want to preserve. |
| |
| 2001-07-10 Jeff Golds <jgolds@resilience.com> |
| |
| * tulip_core.c: Fix two comments |
| |
| 2001-07-06 Stephen Degler <sdegler@degler.net> |
| |
| * media.c: |
| The media selection process at the end of NWAY is busted |
| because for the case of MII/SYM it needs to be: |
| |
| csr13 <- 0 |
| csr14 <- 0 |
| csr6 <- the value calculated is okay. |
| |
| In the other media cases csr14 is computed by |
| t21142_csr14val[dev->if_port], which seems ok. The value of |
| zero as opposed to 3FFFFF comes straight from appendix D of the |
| 21143 data book, and it makes logical sense because you're |
| bypassing all the SIA interface when you usa MII or SYM (see |
| figure 1-1 in the data book if your're visually oriented) |
| |
| 2001-07-03 Jeff Golds <jgolds@resilience.com> |
| |
| * tulip_core.c (tulip_clean_tx_ring): |
| Clear status for in-progress Tx's, and count |
| Tx errors for all packets being released. |
| |
| 2001-06-16 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip.h, tulip_core.c: |
| Integrate MMIO support from devel branch, but default |
| it to off for stable kernel and driver series. |
| |
| 2001-06-16 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c (tulip_init_one): |
| Free descriptor rings on error. |
| |
| 2001-06-16 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c (tulip_mwi_config, tulip_init_one): |
| Large update to csr0 bus configuration code. This is not stable |
| yet, so it is only conditionally enabled, via CONFIG_TULIP_MWI. |
| |
| 2001-06-16 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c: |
| Initialize timer in tulip_init_one and tulip_down, |
| not in tulip_up. |
| |
| 2001-06-14 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c: |
| - Update tulip_suspend, tulip_resume for new PCI PM API. |
| - Surround suspend/resume code with CONFIG_PM. |
| |
| 2001-06-12 Jeff Golds <jgolds@resilience.com> |
| |
| * tulip_core.c: |
| - Reset sw ring ptrs in tulip_up. Fixes PM resume case. |
| - Clean rx and tx rings on device down. |
| |
| 2001-06-05 David Miller <davem@redhat.com> |
| |
| * tulip_core (set_rx_mode): Do not use set_bit |
| on an integer variable. Also fix endianness issue. |
| |
| 2001-06-04 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * interrupt.c: |
| Simplify rx processing when CONFIG_NET_HW_FLOWCONTROL is |
| active, and in the process fix a bug where flow control |
| and low load caused rx not to be acknowledged properly. |
| |
| 2001-06-01 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip.h: |
| - Remove tulip_outl_csr helper, redundant. |
| - Add tulip_start_rxtx inline helper. |
| - tulip_stop_rxtx helper: Add synchronization. Always use current |
| csr6 value, instead of tp->csr6 value or value passed as arg. |
| - tulip_restart_rxtx helper: Add synchronization. Always |
| use tp->csr6 for desired mode, not value passed as arg. |
| - New RxOn, TxOn, RxTx constants for csr6 modes. |
| - Remove now-redundant constants csr6_st, csr6_sr. |
| |
| * 21142.c, interrupt.c, media.c, pnic.c, tulip_core.c: |
| Update for above rxtx helper changes. |
| |
| * interrupt.c: |
| - whitespace cleanup around #ifdef CONFIG_NET_HW_FLOWCONTROL, |
| convert tabs to spaces. |
| - Move tp->stats.rx_missed_errors update outside the ifdef. |
| |
| 2001-05-18 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c: Added ethtool support. |
| ETHTOOL_GDRVINFO ioctl only, for now. |
| |
| 2001-05-14 Robert Olsson <Robert.Olsson@data.slu.se> |
| |
| * Restored HW_FLOWCONTROL from Linux 2.1 series tulip (ANK) |
| plus Jamal's NETIF_RX_* feedback control. |
| |
| 2001-05-14 Robert Olsson <Robert.Olsson@data.slu.se> |
| |
| * Added support for 21143's Interrupt Mitigation. |
| Jamal original instigator. |
| |
| 2001-05-14 Robert Olsson <Robert.Olsson@data.slu.se> |
| |
| * tulip_refill_rx prototype added to tulip.h |
| |
| 2001-05-13 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c: Remove HAS_PCI_MWI flag from Comet, untested. |
| |
| 2001-05-12 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c, tulip.h: Remove Conexant PCI id, no chip |
| docs are available to fix problems with support. |
| |
| 2001-05-12 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c (tulip_init_one): Do not call |
| unregister_netdev in error cleanup. Remnant of old |
| usage of init_etherdev. |
| |
| 2001-05-12 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * media.c (tulip_find_mii): Simple write the updated BMCR |
| twice, as it seems the best thing to do for both broken and |
| sane chips. |
| If the mii_advert value, as read from MII_ADVERTISE, is zero, |
| then generate a value we should advertise from the capability |
| bits in BMSR. |
| Fill in tp->advertising for all cases. |
| Just to be safe, clear all unwanted bits. |
| |
| 2001-05-12 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c (private_ioctl): Fill in tp->advertising |
| when advertising value is changed by the user. |
| |
| 2001-05-12 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c: Mark Comet chips as needed the updated MWI |
| csr0 configuration. |
| |
| 2001-05-12 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * media.c, tulip_core.c: Move MII scan into |
| from inlined inside tulip_init_one to new function |
| tulip_find_mii in media.c. |
| |
| 2001-05-12 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * media.c (tulip_check_duplex): |
| Only restart Rx/Tx engines if they are active |
| (and csr6 changes) |
| |
| 2001-05-12 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c (tulip_mwi_config): |
| Clamp values read from PCI cache line size register to |
| values acceptable to tulip chip. Done for safety and |
| -almost- certainly unneeded. |
| |
| 2001-05-11 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c (tulip_init_one): |
| Instead of unconditionally enabling autonegotiation, disable |
| autonegotiation if not using the default port. Further, |
| flip the nway bit immediately, and then update the |
| speed/duplex in a separate MII transaction. We do this |
| because some boards require that nway be disabled separately, |
| before media selection is forced. |
| |
| TODO: Investigate if we can simply write the same value |
| to BMCR twice, to avoid setting unnecessarily changing |
| phy settings. |
| |
| 2001-05-11 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip.h, tulip_core.c: If HAS_PCI_MWI is set for a |
| given chip, adjust the csr0 values not according to |
| provided values but according to system cache line size. |
| Currently cache alignment is matched as closely to cache |
| line size as possible. Currently programmable burst limit |
| is set (ie. never unlimited), and always equal to cache |
| alignment and system cache size. Currently MWI bit is set |
| only if the MWI bit is present in the PCI command register. |
| |
| 2001-05-11 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * media.c (tulip_select_media): |
| For media types 1 and 3, only use the provided eeprom |
| advertising value if it is non-zero. |
| (tulip_check_duplex): |
| Do not exit ASAP if full_duplex_lock is set. This |
| ensures that the csr6 value is written if an update |
| is needed. |
| |
| 2001-05-10 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| Merge PNIC-II-specific stuff from Becker's tulip.c: |
| |
| * tulip.h, 21142.c (pnic2_lnk_change): new function |
| * tulip_core.c (tulip_init_one): use it |
| |
| * tulip_core.c (tulip_tx_timeout): Add specific |
| debugging for PNIC2. |
| |
| 2001-05-10 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c (tulip_init_one): Print out |
| tulip%d instead of PCI device number, for |
| consistency. |
| |
| 2001-05-10 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * Merge changes from Becker's tulip.c: |
| Fix bugs in ioctl. |
| Fix several bugs by distinguishing between MII |
| and SYM advertising values. |
| Set CSR14 autonegotiation bit for media types 2 and 4, |
| where the SIA CSR setup values are not provided. |
| |
| 2001-05-10 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * media.c (tulip_select_media): Only update MII |
| advertising value if startup arg < 2. |
| |
| * tulip.h: Do not enable CSR13/14/15 autoconfiguration |
| for 21041. |
| |
| * tulip_core.c: |
| 21041: add specific code for reset, and do not set CAC bit |
| When resetting media, for media table type 11 media, pass |
| value 2 as 'startup' arg to select_media, to avoid updating |
| MII advertising value. |
| |
| 2001-05-10 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * pnic.c (pnic_check_duplex): remove |
| pnic.c (pnic_lnk_change, pnic_timer): use |
| tulip_check_duplex not pnic_check_duplex. |
| |
| * media.c (tulip_check_duplex): |
| Clean up to use symbolic names instead of numeric constants. |
| Set TxThreshold mode as necessary as well as clearing it. |
| Update csr6 if csr6 changes, not simply if duplex changes. |
| |
| (found by Manfred Spraul) |
| |
| 2001-05-10 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * 21142.c, eeprom.c, tulip.h, tulip_core.c: |
| Remove DPRINTK as another, better method of |
| debug message printing is available. |
| |
| 2001-05-09 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * 21142.c (t21142_lnk_change): Pass arg startup==1 |
| to tulip_select_media, in order to force csr13 to be |
| zeroed out prior to going to full duplex mode. Fixes |
| autonegotiation on a quad-port Znyx card. |
| (from Stephen Dengler) |
| |
| 2001-05-09 Russell King <rmk@arm.linux.org.uk> |
| |
| * interrupt.c: Better PCI bus error reporting. |
| |
| 2001-04-03 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c: Now that dev->name is only available late |
| in the probe, insert a hack to replace a not-evaluated |
| "eth%d" string with an evaluated "tulip%d" string. |
| Also, remove obvious comment and an indentation cleanup. |
| |
| 2001-04-03 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c: If we are a module, always print out the |
| version string. If we are built into the kernel, only print |
| the version string if at least one tulip is detected. |
| |
| 2001-04-03 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| Merged from Becker's tulip.c 0.92t: |
| |
| * tulip_core.c: Add support for Conexant LANfinity. |
| |
| 2001-04-03 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c: Only suspend/resume if the interface |
| is up and running. Use alloc_etherdev and pci_request_regions. |
| Spelling fix. |
| |
| 2001-04-03 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c: Remove code that existed when one or more of |
| the following defines existed. These defines were never used |
| by normal users in practice: TULIP_FULL_DUPLEX, |
| TULIP_DEFAULT_MEDIA, and TULIP_NO_MEDIA_SWITCH. |
| |
| * tulip.h, eeprom.c: Move EE_* constants from tulip.h to eeprom.c. |
| * tulip.h, media.c: Move MDIO_* constants from tulip.h to media.c. |
| |
| * media.c: Add barrier() to mdio_read/write's PNIC status check |
| loops. |
| |
| 2001-04-03 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| Merged from Becker's tulip.c 0.92t: |
| |
| * tulip.h: Add MEDIA_MASK constant for bounding medianame[] |
| array lookups. |
| * eeprom.c, media.c, timer.c, tulip_core.c: Use it. |
| |
| * media.c, tulip_core.c: mdio_{read,write} cleanup. Since this |
| is called [pretty much] directly from ioctl, we mask |
| read/write arguments to limit the values passed. |
| Added mii_lock. Added comet_miireg2offset and better |
| Comet-specific mdio_read/write code. Pay closer attention |
| to the bits we set in ioctl. Remove spinlocks from ioctl, |
| they are in mdio_read/write now. Use mask to limit |
| phy number in tulip_init_one's MII scan. |
| |
| 2001-04-03 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| Merged from Becker's tulip.c 0.92t: |
| |
| * 21142.c, tulip_core.c: PNIC2 MAC address and NWay fixes. |
| * tulip.h: Add FullDuplex constant, used in above change. |
| |
| 2001-04-03 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * timer.c: Do not call netif_carrier_{on,off}, it is not used in |
| the main tree. Leave code in, disabled, as markers for future |
| carrier notification. |
| |
| 2001-04-03 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| Merged from Becker's tulip.c 0.92t, except for the tulip.h |
| whitespace cleanup: |
| |
| * interrupt.c: If Rx stops, make sure to update the |
| multicast filter before restarting. |
| * tulip.h: Add COMET_MAC_ADDR feature flag, clean up flags. |
| Add Accept* Rx mode bit constants. |
| Add mc_filter[] to driver private struct. |
| * tulip_core.c: Add new Comet PCI id 0x1113:0x9511. |
| Add COMET_MAC_ADDR feature flag to comet entry in board info array. |
| Prefer to test COMET_MAC_ADDR flag to testing chip_id for COMET, |
| when dealing with the Comet's MAC address. |
| Enable Tx underrun recovery for Comet chips. |
| Use new Accept* constants in set_rx_mode. |
| Prefer COMET_MAC_ADDR flag test to chip_id test in set_rx_mode. |
| Store built mc_filter for later use in intr handler by Comets. |
| |
| 2001-04-03 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c: Use tp->cur_tx when building the |
| setup frame, instead of assuming that the setup |
| frame is always built in slot zero. This case is |
| hit during PM resume. |
| |
| 2001-04-03 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * *.c: Update file headers (copyright, urls, etc.) |
| * Makefile: re-order to that chip-specific modules on own line |
| * eeprom.c: BSS/zero-init cleanup (Andrey Panin) |
| * tulip_core.c: merge medianame[] update from tulip.c. |
| Additional arch-specific rx_copybreak, csr0 values. (various) |
| |
| 2001-02-20 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * media.c (tulip_select_media): No need to initialize |
| new_csr6, all cases initialize it properly. |
| |
| 2001-02-18 Manfred Spraul <manfred@colorfullife.com> |
| |
| * interrupt.c (tulip_refill_rx): Make public. |
| If PNIC chip stops due to lack of Rx buffers, restart it. |
| (tulip_interrupt): PNIC doesn't have a h/w timer, emulate |
| with software timers. |
| * pnic.c (pnic_check_duplex): New function, PNIC-specific |
| version of tulip_check_duplex. |
| (pnic_lnk_change): Call pnic_check_duplex. If we use an |
| external MII, then we mustn't use the internal negotiation. |
| (pnic_timer): Support Rx refilling on work overflow in |
| interrupt handler, as PNIC doesn't support a h/w timer. |
| * tulip_core.c (tulip_tbl[]): Modify default csr6 |
| |
| 2001-02-11 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c (tulip_init_one): Call pci_enable_device |
| to ensure wakeup/resource assignment before checking those |
| values. |
| (tulip_init_one): Replace PCI ids with constants from pci_id.h. |
| (tulip_suspend, tulip_resume, tulip_remove_one): Call |
| pci_power_on/off (commented out for now). |
| |
| 2001-02-10 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip.h: Add CFDD_xxx bits for Tulip power management |
| * tulip_core.c (tulip_set_power_state): New function, |
| manipulating Tulip chip power state where supported. |
| (tulip_up, tulip_down, tulip_init_one): Use it. |
| |
| 2001-02-10 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c (tulip_tx_timeout): Call netif_wake_queue |
| to ensure the next Tx is always sent to us. |
| |
| 2001-01-27 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c (tulip_remove_one): Fix mem leak by freeing |
| tp->media_tbl. Add check for !dev, reformat code appropriately. |
| |
| 2001-01-27 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_tbl[]: Comment all entries to make order and chip_id |
| relationship more clear. |
| * tulip_pci_tbl[]: Add new Accton PCI id (COMET chipset). |
| |
| 2001-01-16 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c: static vars no longer explicitly |
| initialized to zero. |
| * eeprom.c (tulip_read_eeprom): Make sure to delay between |
| EE_ENB and EE_ENB|EE_SHIFT_CLK. Merged from becker tulip.c. |
| |
| 2001-01-05 Peter De Schrijver <p2@mind.be> |
| |
| * eeprom.c (tulip_parse_eeprom): Interpret a bit more of 21142 |
| extended format type 3 info blocks in a tulip SROM. |
| |
| 2001-01-03 Matti Aarnio <matti.aarnio@zmailer.org> |
| |
| * media.c (tulip_select_media): Support media types 5 and 6 |
| |
| 2001-??-?? ?? |
| |
| * tulip_core.c: Add comment about LanMedia needing |
| a different driver. |
| Enable workarounds for early PCI chipsets. |
| Add IA64 csr0 support, update HPPA csr0 support. |
| |
| 2000-12-17 Alan Cox <alan@redhat.com> |
| |
| * eeprom.c, timer.c, tulip.h, tulip_core.c: Merge support |
| for the Davicom's quirks into the main tulip. |
| Patch by Tobias Ringstrom |
| |
| 2000-11-08 Jim Studt <jim@federated.com> |
| |
| * eeprom.c (tulip_parse_eeprom): Check array bounds for |
| medianame[] and block_name[] arrays to avoid oops due |
| to bad values returned from hardware. |
| |
| 2000-11-02 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c (set_rx_mode): This is synchronized via |
| dev->xmit_lock, so only the queueing of the setup frame needs to |
| be locked, against tulip_interrupt. |
| |
| 2000-11-02 Alexey Kuznetov <kuznet@ms2.inr.ac.ru> |
| |
| * timer.c (tulip_timer): Call netif_carrier_{on,off} to report |
| link state to the rest of the kernel, and userspace. |
| * interrupt.c (tulip_interrupt): Remove tx_full. |
| * tulip.h: Likewise. |
| * tulip_core.c (tulip_init_ring, tulip_start_xmit, set_rx_mode): |
| Likewise. |
| |
| 2000-10-18 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * tulip_core.c: (tulip_init_one) Print out ethernet interface |
| on error. Print out a message when pci_enable_device fails. |
| Handle DMA alloc failure. |
| |
| 2000-10-18 Jeff Garzik <jgarzik@mandrakesoft.com> |
| |
| * Makefile: New file. |
| * tulip_core.c (tulip_init_one): Correct error messages |
| on PIO/MMIO region reserve failure. |
| (tulip_init_one) Add new check to ensure that PIO region is |
| sufficient for our needs. |
| |