The NetBSD Project

CVS log for src/sys/dev/pci/if_bgereg.h

[BACK] Up to [cvs.NetBSD.org] / src / sys / dev / pci

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.98 / (download) - annotate - [select for diffs], Fri Feb 9 22:08:35 2024 UTC (3 weeks ago) by andvar
Branch: MAIN
CVS Tags: HEAD
Changes since 1.97: +2 -2 lines
Diff to previous 1.97 (colored)

fix spelling mistakes, mainly in comments and log messages.

Revision 1.97 / (download) - annotate - [select for diffs], Sat Jul 2 07:26:53 2022 UTC (20 months ago) by skrll
Branch: MAIN
CVS Tags: thorpej-ifq-base, thorpej-ifq, thorpej-altq-separation-base, thorpej-altq-separation, netbsd-10-base, netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1, netbsd-10, bouyer-sunxi-drm-base, bouyer-sunxi-drm
Changes since 1.96: +84 -84 lines
Diff to previous 1.96 (colored)

Use C99 types.  same code before and after.

Revision 1.93.12.1 / (download) - annotate - [select for diffs], Mon Jun 10 22:07:16 2019 UTC (4 years, 8 months ago) by christos
Branch: phil-wifi
Changes since 1.93: +31 -6 lines
Diff to previous 1.93 (colored) next main 1.94 (colored)

Sync with HEAD

Revision 1.93.4.2 / (download) - annotate - [select for diffs], Thu Mar 7 17:38:59 2019 UTC (4 years, 11 months ago) by martin
Branch: netbsd-8
CVS Tags: netbsd-8-2-RELEASE, netbsd-8-1-RELEASE, netbsd-8-1-RC1
Changes since 1.93.4.1: +26 -4 lines
Diff to previous 1.93.4.1 (colored) to branchpoint 1.93 (colored) next main 1.94 (colored)

Pull up the following, requested by msaitoh in ticket #1209:

	sys/dev/pci/if_bge.c			1.323-1.327
	sys/dev/pci/if_bgereg.h 		1.95
	sys/dev/mii/brgphy.c			1.80
	share/man/man4/bge.4			1.16

- Add BCM5717's another device ID support.
- Add BCM5702FE, another BCM5704S and SysKonnect SK-9Mxx support.
- Add support for BCM5762 ASIC devices.
- Add BCM5762, BCM5725, BCM5727, BCM57764, BCM57767 and BCM57787.
- Simplify PCI device table.
- Add /* FALLTHROUGH */

Revision 1.96 / (download) - annotate - [select for diffs], Tue Mar 5 08:25:02 2019 UTC (4 years, 11 months ago) by msaitoh
Branch: MAIN
CVS Tags: thorpej-i2c-spi-conf2-base, thorpej-i2c-spi-conf2, thorpej-i2c-spi-conf-base, thorpej-i2c-spi-conf, thorpej-futex2-base, thorpej-futex2, thorpej-futex-base, thorpej-futex, thorpej-cfargs2-base, thorpej-cfargs2, thorpej-cfargs-base, thorpej-cfargs, phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, phil-wifi-20191119, phil-wifi-20190609, netbsd-9-base, netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, netbsd-9, isaki-audio2-base, isaki-audio2, is-mlppp-base, is-mlppp, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh, ad-namecache-base3, ad-namecache-base2, ad-namecache-base1, ad-namecache-base, ad-namecache
Changes since 1.95: +1 -3 lines
Diff to previous 1.95 (colored)

 Centralize ETHER_ALIGN into net/if_ether.h. Note that this commit also changes
if_upgt.c's ETHER_ALIGN from 0 to 2.

Revision 1.95 / (download) - annotate - [select for diffs], Wed Feb 20 17:00:20 2019 UTC (5 years ago) by msaitoh
Branch: MAIN
Changes since 1.94: +26 -4 lines
Diff to previous 1.94 (colored)

- Add support for BCM5762 ASIC devices.
- Add BCM5762, BCM5725, BCM5727, BCM57764, BCM57767 and BCM57787.

Revision 1.93.10.1 / (download) - annotate - [select for diffs], Wed Dec 26 14:01:50 2018 UTC (5 years, 2 months ago) by pgoyette
Branch: pgoyette-compat
CVS Tags: pgoyette-compat-merge-20190127
Changes since 1.93: +6 -1 lines
Diff to previous 1.93 (colored) next main 1.94 (colored)

Sync with HEAD, resolve a few conflicts

Revision 1.93.4.1 / (download) - annotate - [select for diffs], Sat Dec 8 12:10:22 2018 UTC (5 years, 2 months ago) by martin
Branch: netbsd-8
Changes since 1.93: +6 -1 lines
Diff to previous 1.93 (colored)

Pull up following revision(s) (requested by bouyer in ticket #1130):

	sys/dev/pci/if_bge.c: revision 1.320
	sys/dev/pci/if_bgevar.h: revision 1.24
	sys/dev/pci/if_bge.c: revision 1.317
	sys/dev/pci/if_bgereg.h: revision 1.94

More TSO4 fixes, from the freebsd driver:
- the chip doens't want the lenght of options, but the complete lenght of
  ip headers (ip + tcp + options). Fix this for the BGE_IS_5717_PLUS()
  and BGE_IS_5705_PLUS() cases; FreeBSD doens't cover the last case so
  leave it as is for now. This fixes checksum failures for heavy transfers.
- It looks like the transmit engine hangs if the TCP segment crosses a 4GB
  boundary. FreeBSD fixes it by mapping everything below 4GB; instead
  try detect when this happens and do the bounce only when needed.

With these fixes I could transfers 3GB images over ftp at gigabit speed
(112MB/s with wget) without problems. Tested on a
bge0 at pci4 dev 0 function 0: Broadcom BCM5720 Gigabit Ethernet
bge0: APE firmware NCSI 1.4.22.0
bge0: interrupting at msi1 vec 0
bge0: HW config 002b1194, 00006014, 0002aa38, 00000000 0000000c
bge0: ASIC BCM5720 A0 (0x5720000), Ethernet address d0:94:66:8b:9c:18
bge0: setting short Tx thresholds
brgphy0 at bge0 phy 1: BCM5720C 1000BASE-T media interface, rev. 0

 -

Don't destroy the dma maps if we're not disabling the adapter, avoids
a KASSERT() when bus_dmamap_destroy() is called from interrupt
context via bge_watchdog()

Set IFF_OACTIVE only when bge_encap() fails on adapter ressource shortage.
Otherwise we may set IFF_OACTIVE while no transmit is in progress, and
nothing will clear it.

If bus_dmamap_load_mbuf() fails with EFBIG, m_defrag() the chain and retry.
Refine the check for the 4GB boundary workaround (a fragment should also
not cross the boundary), and do it only for TSO.

If bge_encap() fails and didn't set IFF_OACTIVE, drop the packet.

Bring in more hardware bug workarounds from freebsd.

With these it seems that a BCM5720 A0 can survive a few hours of internet
load with TSO4 enabled.

Revision 1.94 / (download) - annotate - [select for diffs], Sun Dec 2 17:02:04 2018 UTC (5 years, 3 months ago) by bouyer
Branch: MAIN
CVS Tags: pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226
Changes since 1.93: +6 -1 lines
Diff to previous 1.93 (colored)

Don't destroy the dma maps if we're not disabling the adapter, avoids
a KASSERT() when bus_dmamap_destroy() is called from interrupt
context via bge_watchdog()
Set IFF_OACTIVE only when bge_encap() fails on adapter ressource shortage.
Otherwise we may set IFF_OACTIVE while no transmit is in progress, and
nothing will clear it.
If bus_dmamap_load_mbuf() fails with EFBIG, m_defrag() the chain and retry.
Refine the check for the 4GB boundary workaround (a fragment should also
not cross the boundary), and do it only for TSO.
If bge_encap() fails and didn't set IFF_OACTIVE, drop the packet.
Bring in more hardware bug workarounds from freebsd.

With these it seems that a BCM5720 A0 can survive a few hours of internet
load with TSO4 enabled.

Revision 1.56.22.4 / (download) - annotate - [select for diffs], Sun Dec 3 11:37:07 2017 UTC (6 years, 2 months ago) by jdolecek
Branch: tls-maxphys
Changes since 1.56.22.3: +30 -3 lines
Diff to previous 1.56.22.3 (colored) to branchpoint 1.56 (colored) next main 1.57 (colored)

update from HEAD

Revision 1.88.4.2 / (download) - annotate - [select for diffs], Mon Aug 28 17:52:05 2017 UTC (6 years, 6 months ago) by skrll
Branch: nick-nhusb
Changes since 1.88.4.1: +23 -1 lines
Diff to previous 1.88.4.1 (colored) to branchpoint 1.88 (colored) next main 1.89 (colored)

Sync with HEAD

Revision 1.91.2.1 / (download) - annotate - [select for diffs], Wed Apr 26 02:53:12 2017 UTC (6 years, 10 months ago) by pgoyette
Branch: pgoyette-localcount
Changes since 1.91: +23 -1 lines
Diff to previous 1.91 (colored) next main 1.92 (colored)

Sync with HEAD

Revision 1.91.4.1 / (download) - annotate - [select for diffs], Fri Apr 21 16:53:47 2017 UTC (6 years, 10 months ago) by bouyer
Branch: bouyer-socketcan
Changes since 1.91: +23 -1 lines
Diff to previous 1.91 (colored) next main 1.92 (colored)

Sync with HEAD

Revision 1.93 / (download) - annotate - [select for diffs], Thu Apr 13 04:27:46 2017 UTC (6 years, 10 months ago) by msaitoh
Branch: MAIN
CVS Tags: tls-maxphys-base-20171202, prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, phil-wifi-base, pgoyette-localcount-20170426, pgoyette-compat-base, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315, perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825, netbsd-8-base, netbsd-8-0-RELEASE, netbsd-8-0-RC2, netbsd-8-0-RC1, matt-nb8-mediatek-base, matt-nb8-mediatek, jdolecek-ncqfixes-base, jdolecek-ncqfixes, bouyer-socketcan-base1
Branch point for: phil-wifi, pgoyette-compat, netbsd-8
Changes since 1.92: +2 -1 lines
Diff to previous 1.92 (colored)

- Read chip ID correctly on BCM57782 and BCM57786.
- Add BXCM57766 A0 string.
- Add comment for BCM5776[56]'s workaround.

Revision 1.92 / (download) - annotate - [select for diffs], Wed Apr 12 06:22:16 2017 UTC (6 years, 10 months ago) by msaitoh
Branch: MAIN
Changes since 1.91: +22 -1 lines
Diff to previous 1.91 (colored)

 Add a workaround for BCM57780 to prevent device timeout. This change prevent
L1PM feature do wrongy. Tested with Dell latitude 2120.

Revision 1.48.4.3 / (download) - annotate - [select for diffs], Mon Nov 9 12:33:01 2015 UTC (8 years, 3 months ago) by sborrill
Branch: netbsd-5
Changes since 1.48.4.2: +340 -76 lines
Diff to previous 1.48.4.2 (colored) to branchpoint 1.48 (colored) next main 1.49 (colored)

Pull up the following revisions(s) (requested by msaitoh in ticket #1983):
	sys/dev/pci/pcidevs:		revisions 1.1079, 1.1134, 1.1148-1.1149, 1.1151
	sys/dev/pci/pcidevs.h:		regen
	sys/dev/pci/pcidevs_data.h:	regen
	sys/dev/pci/if_bge.c:		revisions 1.183-1.185, 1.187, 1.189-1.193, 1.195-1.199, 1.202-1.226, 1.228-1.237, 1.240-1.264, 1.267-1.276, 1.278-1.280, 1.283-1.287 via patch
	sys/dev/pci/if_bgereg.h:	revisions 1.57-1.74, 1.76-1.90 via patch
	sys/dev/pci/if_bgevar.h:	revisions 1.6, 1.10-1.13, 1.15-1.17 via patch
	sys/dev/pci/if_bnx.c:		revisions 1.32, 1.34-1.43, 1.48-1.49, 1.52
	sys/dev/pci/if_bnxreg.h:	revisions 1.8, 1.11-1.14
	sys/dev/pci/if_bnxvar.h:	revisions 1.1-1.3
	sys/dev/mii/brgphy.c:		revisions 1.53-1.63, 1.65-69, 1.72-1.74 via patch
	sys/dev/mii/brgphyreg.h:	revisions 1.5-1.8
	sys/dev/mii/miivar.h:		revisions 1.61
	sys/dev/pci/pcireg.h:		patch

Sync bge(4) up to if_bge.c rev. 1.287. Sync brgphy(4) up to 1.74.
Fix some bugs on bnx(4).

Common:
- Add device IDs for Broadcom BCM57710, BCM57711(E), BCM57712(E) and
  BCM57766 (pcidevs only).
- Fix BCM5709 PHY detection.
- Fix detection of BGEPHYF_FIBER_{MII|TBI}
- Add BCM5708S support in brgphy(4).
- Don't use the WIRESPEED function for fiber devices.
bge(4):
- Add some Fujitsu's device support from Michael Moll.
- Add BCM57762 support (PR#46961 from Ryo Onodera).
- Add Altima AC1003, APPLE BCM5701, Broadcom BCM5785F. BCM5785G,
  BCM5787F, BCM5719, BCM5720, BCM57766, BCM57782 and BCM57786.
- Fix DMA setting for read/write on conventional PCI bus devices.
  This bug was added in rev. 1.166.
- Fix printing "discarding oversize frame (len=-4)" message and
  crash by NULL pointer dereferencing.
- The BCM5785 is a PCIe chip but does not report PCIe capabilities.
  Check for this chip explicitely and enable PCIe. Fixes
  'firmware handshake timeout'.
- Allow disabling interrupt mitigation.
- Workaround for BCM5906 silicon bug. When auto-negotiation results
  in half-duplex operation, excess collision on the ethernet link may
  cause internal chip delays that may result in subsequent valid
  frames being dropped due to insufficient receive buffer resources.
  (FreeBSD: r214219, r214251, r214292).
- Allow write DMA to request larger DMA burst size to get better
  performance on BCM5785. (FreeBSD r213333: OpenBSD 1.294)
- Enable TX MAC state machine lockup fix for both BCM5755 or higher
  and BCM5906. Publicly available data sheet just says it may happen
  due to corrupted TxMbuf. (FreeBSD r214216)
- Follow Broadcom datasheet:
  Delay 100 microseconds after enabling transmit MAC.
  Delay 10 microseconds after enabling receive MAC. (FreeBSD
  r241220)
- Insert the completion barrier between register write and the
  consecutive delay(). It will fix some device timeout problems we have
  seen before.
- Add DELAY(40) after turning on write DMA state machine.
- Add some workarounds for 5717 A0 and 5776[56] to be stable.
- Check BGE_RXBDFLAG_IPV6 flag for 5717_PLUS case. Note that
  {tcp,udp}6csum flag is currently not added in the capability.
- Add delay after clearing BGE_MACMODE_TBI_SEND_CFGS for the link
  checking.
- Do not touch the jumbo replenish threshold register on chips that do
  not have jumbo support.
- Wait for the bootcode to complete initialization for 5717 and newer
  devices.
- 5718 and 57785 document say we should wait 100us in init.
- Fix a bug that chips which have BCM5906 ASIC touch GPIO wrongly.
- Fix the setting of Tx Random Backoff Register.
- Check the hardware config words and print them.
- Set BGE_MISC_CTL's byte/word swap options before using
  bge_readmem_ind(). Fixes PR#47716.
- For BGE_IS_575X_PLUS() devices, don't set
  BGE_RXLPSTATCONTROL_DACK_FIX bits because these bits are reserved.
- Document says 5717 and newer chips have no
  BGE_PCISTATE_INTR_NOT_ACTIVE bit, so don't use the bit on those
  chips. Same as OpenBSD.
- Fix a bug that the PHY address bits in MI_MODE register is wrongly
  cleard. Set the PHY address correctly.
- Use BGE_SETBIT() instead of CSR_WRITE_4() for the BGE_MISC_LOCAL_CTL
  register to not to modify some GPIO bits.
- Set DMA watermark depend on the PCI max payload size.
- Set BGE_JUMBO_CAPABLE correctly.
- Fix a link detect bug on non-autopoll systems.
- Change the TX ring size for 5717 series and 57764 series.
- Set maximum read byte count to 2048 for PCI-X BCM5703/5704 devices.
- For PCI-X BCM5704, set maximum outstanding split transactions to 0.
- Add 40bit DMA bug workaround(BGEF_40BIT_BUG) from FreeBSD.
  This workaround is for 5714/5715 controllers and is not actually a
  MAC controller bug but an issue with the embedded PCIe to PCI-X
  bridge in the device. This change uses bus_dmatag_subregion(),
  so this workaround won't work on some archs which doesn't support
  bus_dmatag_subregion().
- Add 2500SX support (not tested).
- Don't use the PHY Auto Poll Mode on many chips. This fixes a bug
  that MII Fiber NIC drop packet about 50%. Tested on HP Moonshot.
- Add workaround for PR#48451. Some BCM5717-5720 based systems getNMI
  on boot. This problem doesn't occur when we don't use prefetchable
  memory in the APE area. Tested with HP MicroServer Gen8.
- In the BCM5703, the DMA read watermark should be set to less than
  or equal to the maximum memory read byte count of the PCI-X command
  register.
- Fix a bug that BGE_PHY_TEST_CTRL_REG isn't set correctly on some
  PCIe devices.
- Use another firmware command in bge_asf_driver_up(). Same as Linux.
  This change fixes a bug that watchdog timeout occurs every 25-30
  minutes on HP ML110 G6 reported enami@ in PR#49657.
- Fix mbuf leak on failure.
- Remove PCI_PRODUCT_BROADCOM_BCM5724 and
  PCI_PRODUCT_BROADCOM_BCM5750M. These devices have not released to
  public.
- Add some workaround code for BGE_ASICREV_BCM5784 from Linux.
- Change some printf() to aprint_*().
- Fix typo in comments.
- Cleanup.
brgphy(4):
- Fix bit definition of BRGPHY_MRBE_MSG_PG5_NP_T2 from FreeBSD.
- Add BCM5481, BCM5709S, BCM5756, BCM5717C, BCM5720C, BCM5785,
  BCM57765(PR#46961), BCM57780
- In brgphyattach(), set sc_isbge, sc_isbnx and sc_phyflags before
  PHY_RESET() because brgphy_reset() refers those flags.
- Call brgpy specific autonego function in MII_TICK. Before this
  commit, only MII_MEDIACHG calls brgphy_mii_phy_auto() and MII_TICK
  calls MI mii_phy_auto(). That was not intended.
- Remove extra delay in brgphy_mii_phy_auto. Same as {Free,Open}BSD.
bnx(4):
- Add missing ifmedia_delete_instance() in bnx_detach().
- Fix a bug that BNX_NO_WOL_FLAG isn't correctly set on some chips.
  Reported by From Henning Petersen in PR#44151.
- Fix SERDES initialization.
- Get out of the interrupt handler early if !IFF_RUNNING.

Revision 1.88.4.1 / (download) - annotate - [select for diffs], Sat Jun 6 14:40:09 2015 UTC (8 years, 8 months ago) by skrll
Branch: nick-nhusb
Changes since 1.88: +9 -4 lines
Diff to previous 1.88 (colored)

Sync with HEAD

Revision 1.91 / (download) - annotate - [select for diffs], Sun May 17 12:06:26 2015 UTC (8 years, 9 months ago) by msaitoh
Branch: MAIN
CVS Tags: pgoyette-localcount-base, pgoyette-localcount-20170320, pgoyette-localcount-20170107, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, nick-nhusb-base-20170204, nick-nhusb-base-20161204, nick-nhusb-base-20161004, nick-nhusb-base-20160907, nick-nhusb-base-20160529, nick-nhusb-base-20160422, nick-nhusb-base-20160319, nick-nhusb-base-20151226, nick-nhusb-base-20150921, nick-nhusb-base-20150606, localcount-20160914, jdolecek-ncq-base, jdolecek-ncq, bouyer-socketcan-base
Branch point for: pgoyette-localcount, bouyer-socketcan
Changes since 1.90: +5 -3 lines
Diff to previous 1.90 (colored)

- Add MSI support.
- Use tagged status function for 5717 and newer devices. All controllers
  except BCM5700 support tagged status but we use tagged status only for MSI
  case on BCM5717. Otherwise MSI on BCM5717 does not work. Same as other *BSDs.

Revision 1.88.2.1 / (download) - annotate - [select for diffs], Sat May 9 08:37:53 2015 UTC (8 years, 9 months ago) by snj
Branch: netbsd-7
CVS Tags: netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-2-RELEASE, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0
Changes since 1.88: +2 -1 lines
Diff to previous 1.88 (colored) next main 1.89 (colored)

Pull up following revision(s) (requested by msaitoh in ticket #740):
	sys/dev/pci/if_bge.c: revision 1.285
	sys/dev/pci/if_bgereg.h: revision 1.90
Use another firmware command in bge_asf_driver_up(). Same as Lunux.
This change fixes a bug that watchdog timeout occurs every 25-30 minutes
on HP ML110 G6 reported enami@ in PR#49657.

Revision 1.90 / (download) - annotate - [select for diffs], Thu Apr 30 16:09:06 2015 UTC (8 years, 10 months ago) by msaitoh
Branch: MAIN
Changes since 1.89: +2 -1 lines
Diff to previous 1.89 (colored)

 Use another firmware command in bge_asf_driver_up(). Same as Linux.
This change fixes a bug that watchdog timeout occurs every 25-30 minutes
on HP ML110 G6 reported enami@ in PR#49657.

Revision 1.89 / (download) - annotate - [select for diffs], Thu Apr 30 15:48:47 2015 UTC (8 years, 10 months ago) by msaitoh
Branch: MAIN
Changes since 1.88: +4 -2 lines
Diff to previous 1.88 (colored)

- BGE_CHIPID_BCM5784_A1 is not 0x5784100 but 0x5784001. Only dmesg output
  is affected.
- Add BGE_CHIPREV_5784_AX and BGE_CHIPID_BCM5784_B0.

Revision 1.56.18.4 / (download) - annotate - [select for diffs], Sun Dec 7 16:39:55 2014 UTC (9 years, 2 months ago) by martin
Branch: netbsd-6
Changes since 1.56.18.3: +3 -2 lines
Diff to previous 1.56.18.3 (colored) to branchpoint 1.56 (colored) next main 1.57 (colored)

Pull up the following, requested by msaitoh in #1207:

sys/dev/mii/brgphy.c				1.69, 1.71-1.76 via patch
sys/dev/mii/brgphyreg.h				1.6-1.7, 1.9
sys/dev/pci/if_bge.c				1.259,1.267-1.276 via patch
sys/dev/pci/if_bgereg.h				1.87-1.88
sys/dev/pci/if_bnx.c				1.48, 1.49, 1.52-1.57 via patch
sys/dev/pci/if_bnxreg.h				1.15-1.18
sys/dev/pci/if_bnxvar.h				1.4-1.6

	Changes for bge(4), bnx(4) and brgphy(4):
	- Add device IDs for Broadcom BCM57710, BCM57711(E), BCM57712(E) and
	  BCM5719 into pcidevs.
	- Change BCM5720's device ID from 0x1658 to 0x165f. 0x1658 is only for
	  the pre-product and not released to public.
	- Fix detection of BGEPHYF_FIBER_{MII|TBI}
	- Fix typo in comment.
	- KNF
	- brgphy(4):
	  - Add BCM5708S support.
	  - Add 2500SX support.
	  - Fix bit definition of BRGPHY_MRBE_MSG_PG5_NP_T2 from FreeBSD.
	  - Remove extra delay in brgphy_mii_phy_auto. Same as {Free,Open}BSD.
	  - Fix media detect on some Fiber chips.
	  - Add BCM5706.
	- bge(4):
	  - Print yet another hardware config word in SRAM(BGE_SRAM_DATA_CFG_5)
	    for BCM5717 and newer devices.
	  - Fix a trivial bug in #ifdef NOTYET.
	  - Add BGEPHYF_NO_WIRESPEED flag for fiber devices.
	  - Print APE firmware correctly.
	  - Don't use the PHY Auto Poll Mode on many chips. This fixes a bug
	    that MII Fiber NIC drop packets about 50%. Same as {Free,Open}BSD.
	    Tested on HP Moonshot.
	  - Add workaround for PR#48451. Some BCM5717-5720 based systems get
	    NMI on boot. This problem doesn't occur when we don't use
	    prefetchable memory in the APE area. I don't know the reason...
	    Tested with HP MicroServer Gen8.
	  - Fix a bug that bge can't be initialized correctly on some sparc64
	    systems (PR#49018).
	  - Change initializaton order as the same as the document, Linux tg3
	    and FreeBSD (part of r241436).
	  - In the BCM5703, the DMA read watermark should be set to less than
	    or equal to the maximum memory read byte count of the PCI-X command
	    register. Same as FreeBSD r204978 and Linux tg3 driver.
	- bnx(4):
	  - Enclose #ifdef BNX_DEBUG correctly.
	  - Add 2500SX support.
	  - Print some information (ASCI revision, PCI status, etc).
	    From FreeBSD.

Revision 1.56.22.3 / (download) - annotate - [select for diffs], Wed Aug 20 00:03:42 2014 UTC (9 years, 6 months ago) by tls
Branch: tls-maxphys
Changes since 1.56.22.2: +42 -33 lines
Diff to previous 1.56.22.2 (colored) to branchpoint 1.56 (colored)

Rebase to HEAD as of a few days ago.

Revision 1.86.2.1 / (download) - annotate - [select for diffs], Sun Aug 10 06:54:54 2014 UTC (9 years, 6 months ago) by tls
Branch: tls-earlyentropy
Changes since 1.86: +3 -2 lines
Diff to previous 1.86 (colored) next main 1.87 (colored)

Rebase.

Revision 1.88 / (download) - annotate - [select for diffs], Tue Jun 17 17:37:08 2014 UTC (9 years, 8 months ago) by msaitoh
Branch: MAIN
CVS Tags: tls-maxphys-base, tls-earlyentropy-base, nick-nhusb-base-20150406, nick-nhusb-base, netbsd-7-base
Branch point for: nick-nhusb, netbsd-7
Changes since 1.87: +2 -1 lines
Diff to previous 1.87 (colored)

- Print yet another hardware config word in SRAM(BGE_SRAM_DATA_CFG_5) for
  BCM5717 and newer devices.
- Fix a trivial bug in #ifdef NOTYET.

Revision 1.87 / (download) - annotate - [select for diffs], Tue May 27 16:17:55 2014 UTC (9 years, 9 months ago) by msaitoh
Branch: MAIN
Changes since 1.86: +2 -2 lines
Diff to previous 1.86 (colored)

Fix typo in a comment.

Revision 1.56.12.2 / (download) - annotate - [select for diffs], Thu May 22 11:40:25 2014 UTC (9 years, 9 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.56.12.1: +334 -76 lines
Diff to previous 1.56.12.1 (colored) to branchpoint 1.56 (colored) next main 1.57 (colored)

sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs.  ("Protocol error: too many arguments")

Revision 1.81.2.2 / (download) - annotate - [select for diffs], Sun May 18 17:45:40 2014 UTC (9 years, 9 months ago) by rmind
Branch: rmind-smpnet
Changes since 1.81.2.1: +37 -33 lines
Diff to previous 1.81.2.1 (colored) next main 1.82 (colored)

sync with head

Revision 1.56.18.3 / (download) - annotate - [select for diffs], Sun Nov 17 18:24:05 2013 UTC (10 years, 3 months ago) by bouyer
Branch: netbsd-6
Changes since 1.56.18.2: +37 -33 lines
Diff to previous 1.56.18.2 (colored) to branchpoint 1.56 (colored)

Apply patch, requested by msaitoh in ticket #983:
	sys/dev/mii/brgphy.c			1.68 via patch
	sys/dev/pci/if_bge.c			1.260-1.262 via patch
	sys/dev/pci/if_bgereg.h			1.85-1.86 via patch
	sys/dev/pci/if_bgevar.h			1.17 via patch

Set maximum read byte count to 2048 for PCI-X BCM5703/5704 devices.
For PCI-X BCM5704, set maximum outstanding split transactions to 0.
Same as Linux tg3 and FreeBSD (part of FreeBSD r204978).
Add 40bit DMA bug workaround(BGEF_40BIT_BUG) from FreeBSD
(part of r199670). This workaround is for 5714/5715 controllers and
is not actually a MAC controller bug but an issue with the embedded
PCIe to PCI-X bridge in the device.  This change
uses bus_dmatag_subregion(), so this workaround won't work on some
archs which doesn't support bus_dmatag_subregion().

Revision 1.86 / (download) - annotate - [select for diffs], Thu Oct 31 06:01:39 2013 UTC (10 years, 4 months ago) by msaitoh
Branch: MAIN
CVS Tags: yamt-pagecache-base9, rmind-smpnet-nbase, rmind-smpnet-base, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3
Branch point for: tls-earlyentropy
Changes since 1.85: +2 -1 lines
Diff to previous 1.85 (colored)

 Add 40bit DMA bug workaround(BGEF_40BIT_BUG) from FreeBSD (part of r199670).
This workaround is for 5714/5715 controllers and is not actually a MAC
controller bug but an issue with the embedded PCIe to PCI-X bridge in the
device.
 This change uses bus_dmatag_subregion(), so this workaround won't work on some
archs which doesn't support bus_dmatag_subregion().

Revision 1.85 / (download) - annotate - [select for diffs], Thu Oct 31 04:26:40 2013 UTC (10 years, 4 months ago) by msaitoh
Branch: MAIN
Changes since 1.84: +36 -33 lines
Diff to previous 1.84 (colored)

Cleanup flag setting. No functional change.
- Split flags into bge_flags and bge_phy_flags.
- Rename flags. PHY related flags are prefixed with BGEPHYF_*.
  Other flags are prefixed with BGEF_*.

Revision 1.56.18.2 / (download) - annotate - [select for diffs], Sat Sep 7 16:39:32 2013 UTC (10 years, 5 months ago) by bouyer
Branch: netbsd-6
Changes since 1.56.18.1: +305 -51 lines
Diff to previous 1.56.18.1 (colored) to branchpoint 1.56 (colored)

sys/dev/pci/if_bge.c		1.203-1.237, 1.239-1.241, 1.243-1.258 via patch
sys/dev/pci/if_bgereg.h		1.58-1.74, 1.76-1.83 via patch
sys/dev/pci/if_bgevar.h		1.10-1.16 via patch
sys/dev/pci/pcidevs		1.1149 via patch
sys/dev/pci/pcidevs.h		regen
sys/dev/pci/pcidevs_data.h	regen
sys/dev/mii/brgphy.c		1.61-1.63, 1.65, 1.67 via patch
sys/dev/mii/miivar.h		1.61 via patch
sys/dev/mii/miidevs		1.112-1.113 via patch
sys/dev/mii/miidevs.h		regen
sys/dev/mii/miidevs_data.h	regen
share/man/man4/bge.4		1.13-1.15 via patch

	Add some device support, fix a lot of bugs and add some enahcements.
	- Add Altima AC1003, APPLE BCM5701, Broadcom BCM5785F,
	  BCM5785G, BCM5787F, BCM5719, BCM5720, BCM57766, BCM57782 and BCM57786.
	- brgphy(4): Add BCM5756, BCM5717C, BCM5719C, BCM5720C and BCM57780.
	- Add some bugfixes and enhancement from FreeBSD:
	  - Workaround for BCM5906 silicon bug. When auto-negotiation results in
	   half-duplex operation, excess collision on the ethernet link may
	   cause internal chip delays that may result in subsequent valid
	   frames being dropped due to insufficient receive buffer resources.
	   (FreeBSD: r214219, r214251, r214292)
	  - Allow write DMA to request larger DMA burst size to get better
	   performance on BCM5785.
	   (FreeBSD r213333: OpenBSD 1.294)
	  - Enable TX MAC state machine lockup fix for both BCM5755 or higher
	   and BCM5906. Publicly available data sheet just says it may happen
	   due to corrupted TxMbuf.
	   (FreeBSD r214216)
	  - Follow Broadcom datasheet:
	   Delay 100 microseconds after enabling transmit MAC.
	   Delay 10 microseconds after enabling receive MAC.
	   (FreeBSD r241220)
	- Insert the completion barrier between register write and the
	  consecutive delay(). It will fix some device timeout problems
	  we have seen before.
	- Add DELAY(40) after turning on write DMA state machine.
	- Add some workarounds for 5717 A0 and 5776[56] to be stable.
	  From Linux tg3 driver.
	- Sync with *BSD. No functional change:
	  - make bge_chipid() and use it.
	  - use switch() instead of a lot of if()s.
	- Check BGE_RXBDFLAG_IPV6 flag for 5717_PLUS case.
	  Note that {tcp,udp}6csum flag is currently not added in the
	  capability.
	- Add delay after clearing BGE_MACMODE_TBI_SEND_CFGS for the link
	  checking.  FreeBSD has the same delay().
	- Rename PHY related flags for the consistency. It's the same as
	  FreeBSD.
	- Remove BGE_10_100_ONLY flag because this was not used.
	  For 10/100 devices, when calling mii_attach(), mask BMSR_EXTSTAT
	  flag to not to check Gigabit flags. It's the same as FreeBSD.
	- In brgphyattach(), set sc_isbge, sc_isbnx and sc_phyflags before
	  PHY_RESET() because brgphy_reset() refers those flags.
	- Call brgpy specific autonego function in MII_TICK. Before this commit,
	  only MII_MEDIACHG calls brgphy_mii_phy_auto() and MII_TICK calls MI
	  mii_phy_auto(). That was not intended.
	- Sync with FreeBSD and OpenBSD. Almost the same as OpenBSD rev. 1.325:
	  - Sync the ring setup code closer to FreeBSD's driver
	  - Do not touch the jumbo replenish threshold register on chips that
	    do not have jumbo support
	- Wait for the bootcode to complete initialization for 5717 and newer
	  devices.  See BCM5718 programmer's guide's "step 13,
	  Device reset Procedure, Section7".
	  57781's document has the same note.
	- 5718 and 57785 document say we should wait 100us.
	- Change the order of register settings a little to match both
	  Broadcom's document and Linux tg3.
	- Add detach function.
	- Fix a bug that chips which have BCM5906 ASIC touch GPIO wrongly.
	- Fix a bug that the NVRAM lock timeout occured on sparc64 onboard bge.
	- Check BGE_SGDIG_STS when the chip is NOT a 5717 A0, like freebsd
	  (OpenBSD rev. 1.327).
	- Fix the setting of Tx Random Backoff Register.
	- Add BGE_PCIMISCCTL_PCISTATE_RW in BGE_INIT. It's required to set the
	  PCISTATE register correctly.
	- Update comments from 57XX-PG105-R.pdf and 5718-PG106-R.pdf.
	- Add missing bus_dmamap_sync() in bge_intr(). The status word is
	  in DMAed area. Same as other *BSDs.
	- Check the hardware config words and print them. This change only
	  read them and print the values.
	- Set BGE_MISC_CTL's byte/word swap options before using
	  bge_readmem_ind().
	- For BGE_IS_575X_PLUS() devices, don't set
	  BGE_RXLPSTATCONTROL_DACK_FIX bits because these bits are reserved.
	- bge_init_tx_ring() uses BGE_RSLOTS (==256) but bge_free_tx_ring() uses
	  BGE_TX_RING_CNT (== 512). Delete BGE_RSLOTS and use BGE_TX_RING_CNT.
	  Same as OpenBSD's if_bge.c rev. 1.86.
	- Document says 5717 and newer chips have no
	  BGE_PCISTATE_INTR_NOT_ACTIVE bit, so don't use the bit on those
	  chips. Same as OpenBSD.
	- Fix a bug that the PHY address bits in MI_MODE register is wrongly
	  cleard.  Set the PHY address correctly.
	- Use BGE_SETBIT() instead of CSR_WRITE_4() for the BGE_MISC_LOCAL_CTL
	  register to not to modify some GPIO bits.
	- Call bge_poll_fw() before writing BGE_MODE_CTL register like the
	  latest linux tg3 dirver.
	- Set DMA watermark depend on the PCI max payload size.
	- Add BGE_JUMBO_CAPABLE flag to some chips. With this commit, 5714,
	  5780, 5717, 5718, 5719 (exclude rev. A0), 5720, 57765 and 57766 are
	  added to support jumbo frame.
	- Fix the setting of sc->bge_flags for 5717 and newer devices.
	- Fix a link detect bug on non-autopoll systems. Same as OpenBSD
	  (rev.1.329 and 1.336) and FreeBSD (r213710).
	- 57765 series is not based on 5717 series. 5717 series is based on
	  57765 series.
	- Set the TX DMA segment size based on the MTU size.
	- Change the TX ring size for 5717 series and 57764 series.
	- For 57766, set BGE_RDMAMODE_JMB_2K_MMRR for non-jumbo frame.
	  Same as Linux tg3.
	- For 57765 and newer devices, set BGE_MAX_RX_FRAME_LOWAT to 1.
	  This value is recommended by the document.
	- Change sysctl related functions for consistency.
	- Style change.
	- Use macro. Remove duplicated macro. Remove unused variable.
	- Fix comments. Add comments.
	- Remove extra semicolon. Remove unused code.
	[msaitoh, ticket #939]

Revision 1.81.2.1 / (download) - annotate - [select for diffs], Wed Aug 28 23:59:25 2013 UTC (10 years, 6 months ago) by rmind
Branch: rmind-smpnet
Changes since 1.81: +10 -6 lines
Diff to previous 1.81 (colored)

sync with head

Revision 1.56.18.1 / (download) - annotate - [select for diffs], Mon Aug 26 04:00:16 2013 UTC (10 years, 6 months ago) by msaitoh
Branch: netbsd-6
Changes since 1.56: +4 -2 lines
Diff to previous 1.56 (colored)

Pull up following revision(s) (requested by tsutsui in ticket #652):
	sys/dev/mii/brgphy.c                            1.60
	sys/dev/pci/if_bge.c                            1.202
	sys/dev/pci/if_bgereg.h                         1.57
Add support for BCM57762 and BCM57765, found in Apple's Thunderbolt
to Gigabit Ethernet adapter.  PR kern/46961.

Revision 1.84 / (download) - annotate - [select for diffs], Sat Jul 13 07:53:53 2013 UTC (10 years, 7 months ago) by msaitoh
Branch: MAIN
CVS Tags: riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2
Changes since 1.83: +2 -2 lines
Diff to previous 1.83 (colored)

 Fix the chip revision of 57765_AX.

Revision 1.83 / (download) - annotate - [select for diffs], Mon Jul 8 05:36:23 2013 UTC (10 years, 7 months ago) by msaitoh
Branch: MAIN
Changes since 1.82: +4 -1 lines
Diff to previous 1.82 (colored)

- Set the TX DMA segment size based on the MTU size.
- Change the TX ring size for 5717 series and 57764 series.
- For 57766, set BGE_RDMAMODE_JMB_2K_MMRR for non-jumbo frame.
  Same as Linux tg3.
- For 57765 and newer devices, set BGE_MAX_RX_FRAME_LOWAT to 1.
  This value is recommended by the document.

Revision 1.82 / (download) - annotate - [select for diffs], Mon Jul 8 05:24:34 2013 UTC (10 years, 7 months ago) by msaitoh
Branch: MAIN
Changes since 1.81: +5 -4 lines
Diff to previous 1.81 (colored)

 57765 series is not based on 5717 series. 5717 series is based on 57765
series.

Revision 1.56.22.2 / (download) - annotate - [select for diffs], Sun Jun 23 06:20:18 2013 UTC (10 years, 8 months ago) by tls
Branch: tls-maxphys
Changes since 1.56.22.1: +302 -52 lines
Diff to previous 1.56.22.1 (colored) to branchpoint 1.56 (colored)

resync from head

Revision 1.81 / (download) - annotate - [select for diffs], Fri May 31 17:15:19 2013 UTC (10 years, 9 months ago) by msaitoh
Branch: MAIN
Branch point for: rmind-smpnet
Changes since 1.80: +1 -9 lines
Diff to previous 1.80 (colored)

Remove unused macros.

Revision 1.80 / (download) - annotate - [select for diffs], Thu May 30 05:50:06 2013 UTC (10 years, 9 months ago) by msaitoh
Branch: MAIN
Changes since 1.79: +2 -3 lines
Diff to previous 1.79 (colored)

 0x4B657654(BGE_SRAM_FW_MB_MAGIC) == ~0xB49A89AB(BGE_SRAM_FW_MB_RESET_MAGIC),
so the same code I added in rev. 1.223 exists in bge_poll_fw(), too. Remove it.

 And then, call bge_poll_fw() before writing BGE_MODE_CTL register like the
latest linux tg3 dirver.

Revision 1.79 / (download) - annotate - [select for diffs], Tue May 28 05:55:40 2013 UTC (10 years, 9 months ago) by msaitoh
Branch: MAIN
Changes since 1.78: +4 -1 lines
Diff to previous 1.78 (colored)

 Fix a bug that the PHY address bits in MI_MODE register is wrongly cleard.
Set the PHY address correctly.

Revision 1.78 / (download) - annotate - [select for diffs], Tue May 14 00:27:39 2013 UTC (10 years, 9 months ago) by msaitoh
Branch: MAIN
Changes since 1.77: +5 -1 lines
Diff to previous 1.77 (colored)

Add some definitions.
Fix compile error.

Revision 1.77 / (download) - annotate - [select for diffs], Wed May 8 07:50:28 2013 UTC (10 years, 9 months ago) by msaitoh
Branch: MAIN
Changes since 1.76: +8 -9 lines
Diff to previous 1.76 (colored)

No functional change:
 - Fix typo
 - Add comment
 - Remove duplicated definitions

Revision 1.76 / (download) - annotate - [select for diffs], Wed May 8 04:05:46 2013 UTC (10 years, 9 months ago) by msaitoh
Branch: MAIN
Changes since 1.75: +9 -1 lines
Diff to previous 1.75 (colored)

 Check the hardware config words and print them. This change only read them
and print the values.

Revision 1.75 / (download) - annotate - [select for diffs], Sun Apr 21 19:59:40 2013 UTC (10 years, 10 months ago) by msaitoh
Branch: MAIN
CVS Tags: khorben-n900
Changes since 1.74: +3 -3 lines
Diff to previous 1.74 (colored)

Delete "PCI_" from PCIX and PICE capability registers.

Revision 1.74 / (download) - annotate - [select for diffs], Thu Apr 11 10:12:48 2013 UTC (10 years, 10 months ago) by msaitoh
Branch: MAIN
Changes since 1.73: +2 -2 lines
Diff to previous 1.73 (colored)

Fix typo in comment.

Revision 1.73 / (download) - annotate - [select for diffs], Thu Apr 11 10:10:41 2013 UTC (10 years, 10 months ago) by msaitoh
Branch: MAIN
Changes since 1.72: +3 -2 lines
Diff to previous 1.72 (colored)

Add BGE_PCIMISCCTL_PCISTATE_RW in BGE_INIT. It's required to set the PCISTATE
register correctly.

Revision 1.72 / (download) - annotate - [select for diffs], Mon Apr 8 15:55:58 2013 UTC (10 years, 10 months ago) by msaitoh
Branch: MAIN
Changes since 1.71: +2 -2 lines
Diff to previous 1.71 (colored)

Fix the setting of Tx Random Backoff Register.

Revision 1.71 / (download) - annotate - [select for diffs], Wed Mar 27 12:11:57 2013 UTC (10 years, 11 months ago) by msaitoh
Branch: MAIN
Changes since 1.70: +2 -1 lines
Diff to previous 1.70 (colored)

Add BGE_SRAM_FW_MB_RESET_MAGIC again.

Revision 1.70 / (download) - annotate - [select for diffs], Wed Mar 27 10:27:58 2013 UTC (10 years, 11 months ago) by msaitoh
Branch: MAIN
Changes since 1.69: +1 -7 lines
Diff to previous 1.69 (colored)

Revert rev. 1.68.

Revision 1.69 / (download) - annotate - [select for diffs], Wed Mar 27 10:26:06 2013 UTC (10 years, 11 months ago) by msaitoh
Branch: MAIN
Changes since 1.68: +6 -1 lines
Diff to previous 1.68 (colored)

Fix a bug that chips which have BCM5906 ASIC touch GPIO wrongly.

Revision 1.68 / (download) - annotate - [select for diffs], Thu Mar 21 12:56:03 2013 UTC (10 years, 11 months ago) by msaitoh
Branch: MAIN
CVS Tags: agc-symver-base, agc-symver
Changes since 1.67: +2 -1 lines
Diff to previous 1.67 (colored)

Wait for the bootcode to complete initialization for 5717 and newer devices.
See BCM5718 programmer's guide's "step 13, Device reset Procedure, Section 7".
57781's document has the same note.

I verified the loop really looped on those chips.

But, I don't know why tg3 doesn't it.

Revision 1.67 / (download) - annotate - [select for diffs], Thu Mar 21 12:33:11 2013 UTC (10 years, 11 months ago) by msaitoh
Branch: MAIN
Changes since 1.66: +2 -1 lines
Diff to previous 1.66 (colored)

- Sync with FreeBSD and OpenBSD. Almost the same as OpenBSD rev. 1.325:
 - Sync the ring setup code closer to FreeBSD's driver
 - Do not touch the jumbo replenish threshold register on chips that do not
   have jumbo support
 - Add/sync some of the comments
- Use macro.
- Remove unused code.

Revision 1.66 / (download) - annotate - [select for diffs], Tue Mar 19 04:10:13 2013 UTC (10 years, 11 months ago) by msaitoh
Branch: MAIN
Changes since 1.65: +3 -3 lines
Diff to previous 1.65 (colored)

- Rename PHY related flags for the consistency. It's the same as FreeBSD.
- Remove BGE_10_100_ONLY flag because this was not used.
  For 10/100 devices, when calling mii_attach(), mask BMSR_EXTSTAT flag to
  not to check Gigabit flags. It's the same as FreeBSD.

Revision 1.65 / (download) - annotate - [select for diffs], Tue Mar 19 03:40:16 2013 UTC (10 years, 11 months ago) by msaitoh
Branch: MAIN
Changes since 1.64: +2 -1 lines
Diff to previous 1.64 (colored)

Fix three bugs:
- An workaround for TX data corruption is only for 5719 "A0".
  Fix the wrong evaluation.
- Check BGE_RXBDFLAG_IPV6 flag for 5717_PLUS case.
  Note that {tcp,udp}6csum flag is currently not added in the capability.
- Add delay after clearing BGE_MACMODE_TBI_SEND_CFGS for the link checking.
  FreeBSD has the same delay().

Revision 1.64 / (download) - annotate - [select for diffs], Sun Mar 17 18:46:10 2013 UTC (10 years, 11 months ago) by msaitoh
Branch: MAIN
Changes since 1.63: +1 -7 lines
Diff to previous 1.63 (colored)

No functional change:
 - Fix comment
 - Use macro
 - Remove unused macro

Revision 1.63 / (download) - annotate - [select for diffs], Sun Mar 17 04:06:39 2013 UTC (10 years, 11 months ago) by msaitoh
Branch: MAIN
Changes since 1.62: +185 -15 lines
Diff to previous 1.62 (colored)

- ADD support for BCM5719, BCM5720, BCM57766, BCM57782 and BCM57786.
- Use macros.
- Remove unused code.
- Sync with the latest {Free,Open}BSD's bge.

Revision 1.62 / (download) - annotate - [select for diffs], Wed Mar 13 09:44:20 2013 UTC (10 years, 11 months ago) by msaitoh
Branch: MAIN
Changes since 1.61: +79 -5 lines
Diff to previous 1.61 (colored)

- Add some workarounds for 5717 A0 and 5776[56] to be stable.
  From Linux tg3 driver.
- Use macro.

Revision 1.61 / (download) - annotate - [select for diffs], Wed Feb 27 14:19:38 2013 UTC (11 years ago) by msaitoh
Branch: MAIN
Changes since 1.60: +2 -2 lines
Diff to previous 1.60 (colored)

No functional change:
- Fix comments.
- Change macro name.
- Change sysctl related functions for consistency.

Revision 1.60 / (download) - annotate - [select for diffs], Tue Feb 26 11:06:23 2013 UTC (11 years ago) by msaitoh
Branch: MAIN
Changes since 1.59: +5 -1 lines
Diff to previous 1.59 (colored)

Add some bugfixes and enhancement from FreeBSD:

- Workaround for BCM5906 silicon bug. When auto-negotiation results in
 half-duplex operation, excess collision on the ethernet link may cause
 internal chip delays that may result in subsequent valid frames being
 dropped due to insufficient receive buffer resources.
 (FreeBSD: r214219, r214251, r214292)

- Allow write DMA to request larger DMA burst size to get better
 performance on BCM5785.
 (FreeBSD r213333: OpenBSD 1.294)

- Enable TX MAC state machine lockup fix for both BCM5755 or higher
 and BCM5906. Publicly available data sheet just says it may happen
 due to corrupted TxMbuf.
 (FreeBSD r214216)

- Follow Broadcom datasheet:
 Delay 100 microseconds after enabling transmit MAC.
 Delay 10 microseconds after enabling receive MAC.
 (FreeBSD r241220)

Revision 1.59 / (download) - annotate - [select for diffs], Tue Feb 26 11:03:17 2013 UTC (11 years ago) by msaitoh
Branch: MAIN
Changes since 1.58: +3 -1 lines
Diff to previous 1.58 (colored)

Use macro. Remove extra semicolon. No functional change.

Revision 1.58 / (download) - annotate - [select for diffs], Mon Feb 25 00:36:22 2013 UTC (11 years ago) by msaitoh
Branch: MAIN
Changes since 1.57: +6 -9 lines
Diff to previous 1.57 (colored)

Use macro. Remove duplicated macro. Remove unused variable.
No functional Change.

Revision 1.56.22.1 / (download) - annotate - [select for diffs], Tue Nov 20 03:02:15 2012 UTC (11 years, 3 months ago) by tls
Branch: tls-maxphys
Changes since 1.56: +4 -2 lines
Diff to previous 1.56 (colored)

Resync to 2012-11-19 00:00:00 UTC

Revision 1.56.12.1 / (download) - annotate - [select for diffs], Tue Oct 30 17:21:27 2012 UTC (11 years, 4 months ago) by yamt
Branch: yamt-pagecache
CVS Tags: yamt-pagecache-tag8
Changes since 1.56: +4 -2 lines
Diff to previous 1.56 (colored)

sync with head

Revision 1.57 / (download) - annotate - [select for diffs], Mon Sep 17 11:54:36 2012 UTC (11 years, 5 months ago) by tsutsui
Branch: MAIN
CVS Tags: yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6
Changes since 1.56: +4 -2 lines
Diff to previous 1.56 (colored)

Add support for BCM57762, found in Apple's Thunderbolt to Gigabit Ethernet
Adapter.  PR kern/46961 from Ryo ONODERA.

Also revert weird BGE_MAX_FRAMELEN macro definition to sync its usage
with the original FreeBSD's bge.

Revision 1.48.4.2 / (download) - annotate - [select for diffs], Fri Nov 19 23:58:40 2010 UTC (13 years, 3 months ago) by riz
Branch: netbsd-5
CVS Tags: netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-3-RELEASE, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2, matt-nb5-pq3-base, matt-nb5-pq3
Changes since 1.48.4.1: +132 -71 lines
Diff to previous 1.48.4.1 (colored) to branchpoint 1.48 (colored)

Pull up revisions (requested by msaitoh in ticket #1359):
sys/dev/pci/if_bge.c		1.170-1.181
sys/dev/pci/if_bgereg.h		1.53-1.56
sys/dev/pci/if_bgevar.h		1.2-1.5
sys/dev/pci/pcidevs		1.1017, 1.1021
sys/dev/pci/pcidevs.h		regen
sys/dev/pci/pcidevs_data.h	regen
sys/dev/mii/miidevs		1.89, 1.93
sys/dev/mii/miidevs.h		regen
sys/dev/mii/miidevs_data.h	regen
sys/dev/mii/brgphy.c		1.49, 1.52

- Fix a bug of BGE_RDMA_MODE_FIFO_LONG_BURST definition.
- Fix the bug that both BGE_PCIE and BGE_PCIX are set on PCI-Express devices.
- Add support for BCM5705F,BCM5714,SBCM5715S,BCM5717,BCM5718,BCM5720,BCM5723,
  BCM5724,BCM5751F,BCM5753F,BCM5756,BCM5761,BCM5761E,BCM5761S,BCM5761SE,
  BCM5764,BCM5781,BCM5784M,BCM5903M,BCM57760,BCM57761,BCM57765,BCM57780,
  BCM57781,BCM57785,BCM57788,BCM57790,BCM57791 and BCM57795. Fixes PR#41694.
- Fix misunderstanding the capability for TSO4 on some chips.
- Use proplib for no EEPROM systems (e.g. sparc64 with onboard bge).
- Add debug function to show some flags.
- (brgphy(4)) Add support for BCM5461, BCM5464, BCM5784 and BCM5761.
- (brgphy(4)) Enable brgphy_jumbo_settings().
- (brgphy(4)) Enable the Ethernet@Wirespeed function.
- Add support for device properties to override the mac address and set
  the BGE_NO_EEPROM flag if we have an onboard device w/o SEEPROM.
- Introduce IPMI and ASF related code from FreeBSD. It fixes some problems
  which occured in netboot on sparc64 and PR#32767
- move the code of disabling host interrput in bge_stop() like linux tg3
  driver.
- fix the return value of bge_eeprom_getbyte().
- Fixes the bug that error bits arent cleard because these bit are W2C
  (in other words W1C).
- Many other bugfixes from FreeBSD and OpenBSD.
- remove an unused structure.
- ANSI C, KNF and tabify
- fix typo in comment.

Revision 1.48.12.1 / (download) - annotate - [select for diffs], Wed Apr 21 00:27:40 2010 UTC (13 years, 10 months ago) by matt
Branch: matt-nb5-mips64
CVS Tags: matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-k15
Changes since 1.48: +36 -230 lines
Diff to previous 1.48 (colored) next main 1.49 (colored)

sync to netbsd-5

Revision 1.45.14.3 / (download) - annotate - [select for diffs], Thu Mar 11 15:03:44 2010 UTC (13 years, 11 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.45.14.2: +131 -70 lines
Diff to previous 1.45.14.2 (colored) to branchpoint 1.45 (colored) next main 1.46 (colored)

sync with head

Revision 1.56 / (download) - annotate - [select for diffs], Wed Feb 3 15:36:36 2010 UTC (14 years, 1 month ago) by msaitoh
Branch: MAIN
CVS Tags: yamt-pagecache-base5, yamt-pagecache-base4, yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, yamt-nfs-mp-base9, yamt-nfs-mp-base11, yamt-nfs-mp-base10, uebayasi-xip-base4, uebayasi-xip-base3, uebayasi-xip-base2, uebayasi-xip-base1, uebayasi-xip-base, uebayasi-xip, rmind-uvmplock-nbase, rmind-uvmplock-base, rmind-uvmplock, netbsd-6-base, netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1, netbsd-6-1-5-RELEASE, netbsd-6-1-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-1, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-6-RELEASE, netbsd-6-0-5-RELEASE, netbsd-6-0-4-RELEASE, netbsd-6-0-3-RELEASE, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, netbsd-6-0, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, matt-mips64-premerge-20101231, jruoho-x86intr-base, jruoho-x86intr, jmcneill-usbmp-pre-base2, jmcneill-usbmp-base9, jmcneill-usbmp-base8, jmcneill-usbmp-base7, jmcneill-usbmp-base6, jmcneill-usbmp-base5, jmcneill-usbmp-base4, jmcneill-usbmp-base3, jmcneill-usbmp-base2, jmcneill-usbmp-base10, jmcneill-usbmp-base, jmcneill-usbmp, jmcneill-audiomp3-base, jmcneill-audiomp3, cherry-xenmp-base, cherry-xenmp, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Branch point for: yamt-pagecache, tls-maxphys, netbsd-6
Changes since 1.55: +2 -1 lines
Diff to previous 1.55 (colored)

- Make the initialize sequence close to the document.
- Fix ASF heartbeat sending bug (FreeBSD rev. 1.271 (r202821))
- Use new handshake command for BCM5750 or new controllers (FreeBSD rev. 1.272
  (r202822))

Revision 1.55 / (download) - annotate - [select for diffs], Thu Jan 28 03:09:13 2010 UTC (14 years, 1 month ago) by msaitoh
Branch: MAIN
Changes since 1.54: +30 -12 lines
Diff to previous 1.54 (colored)

- Introduce IPMI and ASF related code from FreeBSD. It fixes some problems
  which occured in netboot on sparc64 and PR#32767
- move the code of disabling host interrput in bge_stop() like linux tg3
  driver.
- fix the return value of bge_eeprom_getbyte().
- remove an unused structure.
- KNF

Revision 1.54 / (download) - annotate - [select for diffs], Sun Jan 24 16:21:09 2010 UTC (14 years, 1 month ago) by msaitoh
Branch: MAIN
Changes since 1.53: +101 -59 lines
Diff to previous 1.53 (colored)

Many changes from FreeBSD and OpenBSD:
 - Add support for BCM5705F,BCM5714,SBCM5715S,BCM5717,BCM5718,BCM5720,BCM5723,
   BCM5724,BCM5751F,BCM5753F,BCM5756,BCM5761,BCM5761E,BCM5761S,BCM5761SE,
   BCM5764,BCM5781,BCM5784M,BCM5903M,BCM57760,BCM57761,BCM57765,BCM57780,
   BCM57781,BCM57785,BCM57788,BCM57790,BCM57791 and BCM57795. Fixes PR#41694.
 - Fix misunderstanding the capability for TSO4 on some chips.
 - Many other bugfixes.
 - Use proplib for no EEPROM systems (e.g. sparc64 with onboard bge).
 - Add debug function to show some flags.

Revision 1.45.14.2 / (download) - annotate - [select for diffs], Wed Aug 19 18:47:11 2009 UTC (14 years, 6 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.45.14.1: +2 -2 lines
Diff to previous 1.45.14.1 (colored) to branchpoint 1.45 (colored)

sync with head.

Revision 1.39.2.5 / (download) - annotate - [select for diffs], Tue Aug 18 10:10:19 2009 UTC (14 years, 6 months ago) by bouyer
Branch: netbsd-4
Changes since 1.39.2.4: +101 -224 lines
Diff to previous 1.39.2.4 (colored) to branchpoint 1.39 (colored) next main 1.40 (colored)

Pull up following revision(s) (requested by msaitoh in ticket #1342):
	sys/dev/pci/if_bge.c: revisions 1.135, 1.146, 1.151-1.152,
					1.155-1.167 via patch
	sys/dev/pci/if_bgereg.h: revisions 1.43, 1.48-1.52
	sys/dev/pci/if_bgevar.h: revision 1.1
	sys/dev/mii/brgphy.c: revisions 1.36, 1.40, 1.43-1.44 and
					1.47-1.48 via patch
	sys/dev/mii/brgphyreg.h: revisions 1.3-1.4
	sys/dev/mii/miidevs: revisions 1.75, 1.77, 1.85
	sys/dev/mii/miidevs.h: regen
	sys/dev/mii/miidevs_data.h: regen
	sys/dev/mii/miivar.h: revision 1.54
For bge:
  - Really set Tx threshold.
  - Fix the case of setting a flag in BGE_PCI_DMA_RW_CTL on
    conventional PCI.
  - Fix some bugs that the driver unable to detect link loss
    (OpenBSD 1.135, FreeBSD 1.102)
  - bge_tick(): fix some extra input error (OpenBSD 1.221 FreeBSD 1.212)
  - Acknowledge link change interrupts by setting the "link changed" bit
    in the status register (used to have no effect). FreeBSD 1.44
    (OpenBSD 1.21)
  - Add some fiber support (OpenBSD 1.220)
  - Set BGE_MISCCFG_KEEP_GPHY_POWER as {Open,Free}BSD and linux.
  - Add special case code to fix a problem with the BCM5704 in TBI
    mode (FreeBSD rev. 1.71, OpenBSD rev. 1.35)
  - Force an interrupt in bge_ifmedia_upd (FreeBSD rev. 1.205, OpenBSD
    rev. 1.242)
  - Add missing workaround for 5705 (FreeBSD rev. 1.44, OpenBSD rev.
    1.21)
  - Don't print error message only when the register is BGE_SRS_MODE.
    It occurs on some environment (and once after boot?). Other *BSDs
    and Linux don't print the error message for all registers.
  - Fix comments.
  - Remove obsolete codes.
  - Add BCM5786 support.
for brgphy:
  - Add some quirk codes.
  - Add support for BCM5462, BCM54K2, BCM5708C, BCM5722, and BCM5906.

Revision 1.48.4.1 / (download) - annotate - [select for diffs], Tue Aug 4 19:46:20 2009 UTC (14 years, 7 months ago) by snj
Branch: netbsd-5
CVS Tags: netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1
Changes since 1.48: +36 -230 lines
Diff to previous 1.48 (colored)

Apply patch (requested by msaitoh in ticket #866):
For bge:
  - Fix the case of setting a flag in BGE_PCI_DMA_RW_CTL on
    conventional PCI.
  - Fix some bugs that the driver unable to detect link loss
    (OpenBSD 1.135, FreeBSD 1.102)
  - bge_tick(): fix some extra input error (OpenBSD 1.221 FreeBSD 1.212)
  - Acknowledge link change interrupts by setting the 'link changed' bit
    in the status register (used to have no effect). FreeBSD 1.44
    (OpenBSD 1.21)
  - Add some fiber support (OpenBSD 1.220)
  - Set BGE_MISCCFG_KEEP_GPHY_POWER as {Open,Free}BSD and linux.
  - Add special case code to fix a problem with the BCM5704 in TBI
    mode (FreeBSD rev. 1.71, OpenBSD rev. 1.35)
  - Force an interrupt in bge_ifmedia_upd (FreeBSD rev. 1.205, OpenBSD
    rev. 1.242)
  - Add missing workaround for 5705 (FreeBSD rev. 1.44, OpenBSD rev.
    1.21)
  - Don't print error message only when the register is BGE_SRS_MODE.
    It occurs on some environment (and once after boot?). Other *BSDs
    and Linux don't print the error message for all registers.
  - Fix comments.
  - Remove obsolete codes.
For brgphy:
  - Add some quirk codes.
  - Add support for BCM5462, BCM54K2 and BCM5722.

Revision 1.53 / (download) - annotate - [select for diffs], Tue Aug 4 08:49:02 2009 UTC (14 years, 7 months ago) by taca
Branch: MAIN
CVS Tags: yamt-nfs-mp-base8, yamt-nfs-mp-base7, matt-premerge-20091211, jym-xensuspend-nbase
Changes since 1.52: +2 -2 lines
Diff to previous 1.52 (colored)

Fix a bug of BGE_RDMA_MODE_FIFO_LONG_BURST definition.

Confirmed by msaito@.

Revision 1.48.8.1 / (download) - annotate - [select for diffs], Wed May 13 17:20:24 2009 UTC (14 years, 9 months ago) by jym
Branch: jym-xensuspend
Changes since 1.48: +36 -230 lines
Diff to previous 1.48 (colored) next main 1.49 (colored)

Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.

Revision 1.45.14.1 / (download) - annotate - [select for diffs], Mon May 4 08:12:56 2009 UTC (14 years, 10 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.45: +106 -224 lines
Diff to previous 1.45 (colored)

sync with head.

Revision 1.48.2.1 / (download) - annotate - [select for diffs], Tue Apr 28 07:35:56 2009 UTC (14 years, 10 months ago) by skrll
Branch: nick-hppapmap
Changes since 1.48: +36 -230 lines
Diff to previous 1.48 (colored) next main 1.49 (colored)

Sync with HEAD.

Revision 1.52 / (download) - annotate - [select for diffs], Thu Apr 23 10:47:44 2009 UTC (14 years, 10 months ago) by msaitoh
Branch: MAIN
CVS Tags: yamt-nfs-mp-base6, yamt-nfs-mp-base5, yamt-nfs-mp-base4, yamt-nfs-mp-base3, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base, jymxensuspend-base, jym-xensuspend-base
Changes since 1.51: +2 -226 lines
Diff to previous 1.51 (colored)

use proplib

Revision 1.51 / (download) - annotate - [select for diffs], Sun Apr 19 11:10:36 2009 UTC (14 years, 10 months ago) by msaitoh
Branch: MAIN
Changes since 1.50: +12 -1 lines
Diff to previous 1.50 (colored)

Some fixes and enhancements:

  Both if_bge* and brgphy.[ch]:
    Check the parent's MAC and use the quirk code for the bug like OpenBSD and
    FreeBSD. Some bugs can't identify the PHY ID. For example, 5704 Ax has the
    ADC bug, but 5704 A3 and 5704 B0 have the same PHY ID and revision. Add
    BGE_PHY_CRC_BUG, BGE_PHY_ADC_BUG, BGE_PHY_5704_A0_BUG, BGE_PHY_JITTER_BUG,
    BGE_PHY_ADJUST_TRIM and BGE_PHY_BER_BUG for this flag. Some of the DSP
    patches are newly taken from OpenBSD and FreeBSD.

  if_bge*:
    Remove duplicated BGE_CHIPID_BCM5714_A0 entry in the known CHIPID table.
    Fix obsolete comments.

  brgphy.[ch]:
    Add some PHY IDs.

TODO:
  Add more three quirk code into bge and brgphy (the brgphy side's are
  currently #if0'ed).
  Add support for bnx into brgphy (currently #if0'ed)

Revision 1.50 / (download) - annotate - [select for diffs], Thu Apr 16 01:38:34 2009 UTC (14 years, 10 months ago) by msaitoh
Branch: MAIN
Changes since 1.49: +28 -9 lines
Diff to previous 1.49 (colored)

Take some code from FreeBSD and OpenBSD:

  Fix some bugs that the driver unable to detect link loss (OpenBSD 1.135,
  FreeBSD 1.102)

  bge_tick(): fix some extra input error (OpenBSD 1.221 FreeBSD 1.212)

  Acknowledge link change interrupts by setting the 'link changed' bit
  in the status register (used to have no effect). FreeBSD 1.44 (OpenBSD 1.21)

  Add some fiber support (OpenBSD 1.220)

  Set BGE_MISCCFG_KEEP_GPHY_POWER as {Open,Free}BSD and linux.

  Add special case code to fix a problem with the BCM5704 in TBI mode
  (FreeBSD rev. 1.71, OpenBSD rev. 1.35)

  Force an interrupt in bge_ifmedia_upd (FreeBSD rev. 1.205, OpenBSD rev.
  1.242)

  Add missing workaround for 5705 (FreeBSD rev. 1.44, OpenBSD rev. 1.21)

  Add some known CHIPID entries.

Revision 1.49 / (download) - annotate - [select for diffs], Sun Mar 22 16:20:06 2009 UTC (14 years, 11 months ago) by msaitoh
Branch: MAIN
Changes since 1.48: +8 -8 lines
Diff to previous 1.48 (colored)

Make bge(4) close to FreBSD and OpenBSD.

NO FUNCTIONAL CHANGE BY THIS COMMIT.

Revision 1.46.2.1 / (download) - annotate - [select for diffs], Sun Oct 19 22:16:38 2008 UTC (15 years, 4 months ago) by haad
Branch: haad-dm
Changes since 1.46: +73 -1 lines
Diff to previous 1.46 (colored) next main 1.47 (colored)

Sync with HEAD.

Revision 1.45.10.2 / (download) - annotate - [select for diffs], Sun Sep 28 10:40:26 2008 UTC (15 years, 5 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.45.10.1: +72 -0 lines
Diff to previous 1.45.10.1 (colored) to branchpoint 1.45 (colored) next main 1.46 (colored)

Sync with HEAD.

Revision 1.45.16.2 / (download) - annotate - [select for diffs], Thu Sep 18 04:35:06 2008 UTC (15 years, 5 months ago) by wrstuden
Branch: wrstuden-revivesa
Changes since 1.45.16.1: +73 -1 lines
Diff to previous 1.45.16.1 (colored) to branchpoint 1.45 (colored) next main 1.46 (colored)

Sync with wrstuden-revivesa-base-2.

Revision 1.39.2.1.2.3 / (download) - annotate - [select for diffs], Thu Sep 4 08:46:45 2008 UTC (15 years, 6 months ago) by skrll
Branch: wrstuden-fixsa
Changes since 1.39.2.1.2.2: +6 -1 lines
Diff to previous 1.39.2.1.2.2 (colored) next main 1.39.2.2 (colored)

Sync with netbsd-4.

Revision 1.48 / (download) - annotate - [select for diffs], Mon Aug 25 08:15:05 2008 UTC (15 years, 6 months ago) by cegger
Branch: MAIN
CVS Tags: wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, nick-hppapmap-base2, netbsd-5-base, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, mjf-devfs2-base, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20091211, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-base2, haad-nbase2, haad-dm-base2, haad-dm-base1, haad-dm-base, ad-audiomp2-base, ad-audiomp2
Branch point for: nick-hppapmap, netbsd-5, matt-nb5-mips64, jym-xensuspend
Changes since 1.47: +68 -1 lines
Diff to previous 1.47 (colored)

PR 39241: Add support for Broadcom BCM5906(M) from Karl Uwe Lockhoff

Revision 1.39.2.4 / (download) - annotate - [select for diffs], Wed Aug 20 19:33:49 2008 UTC (15 years, 6 months ago) by bouyer
Branch: netbsd-4
CVS Tags: wrstuden-fixsa-newbase, wrstuden-fixsa-base
Changes since 1.39.2.3: +5 -0 lines
Diff to previous 1.39.2.3 (colored) to branchpoint 1.39 (colored)

Pull up following revision(s) (requested by sborrill in ticket #1172):
	sys/dev/pci/if_bge.c: revision 1.149
	sys/dev/pci/if_bgereg.h: revision 1.47
Add support for Broadcom 5722 and identify 5755 ASICs.

Revision 1.45.18.2 / (download) - annotate - [select for diffs], Mon Jul 28 14:37:27 2008 UTC (15 years, 7 months ago) by simonb
Branch: simonb-wapbl
Changes since 1.45.18.1: +6 -1 lines
Diff to previous 1.45.18.1 (colored) to branchpoint 1.45 (colored) next main 1.46 (colored)

Sync with head.

Revision 1.47 / (download) - annotate - [select for diffs], Thu Jul 24 08:14:49 2008 UTC (15 years, 7 months ago) by sborrill
Branch: MAIN
CVS Tags: simonb-wapbl-nbase, simonb-wapbl-base
Changes since 1.46: +6 -1 lines
Diff to previous 1.46 (colored)

Add support for Broadcom 5722 and identify 5755 ASICs.

Revision 1.45.10.1 / (download) - annotate - [select for diffs], Sun Jun 29 09:33:09 2008 UTC (15 years, 8 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.45: +5 -1 lines
Diff to previous 1.45 (colored)

Sync with HEAD.

Revision 1.45.16.1 / (download) - annotate - [select for diffs], Mon Jun 23 04:31:11 2008 UTC (15 years, 8 months ago) by wrstuden
Branch: wrstuden-revivesa
Changes since 1.45: +5 -1 lines
Diff to previous 1.45 (colored)

Sync w/ -current. 34 merge conflicts to follow.

Revision 1.45.18.1 / (download) - annotate - [select for diffs], Wed Jun 18 16:33:18 2008 UTC (15 years, 8 months ago) by simonb
Branch: simonb-wapbl
Changes since 1.45: +5 -1 lines
Diff to previous 1.45 (colored)

Sync with head.

Revision 1.45.12.1 / (download) - annotate - [select for diffs], Tue Jun 17 09:14:41 2008 UTC (15 years, 8 months ago) by yamt
Branch: yamt-pf42
Changes since 1.45: +5 -1 lines
Diff to previous 1.45 (colored) next main 1.46 (colored)

sync with head.

Revision 1.46 / (download) - annotate - [select for diffs], Tue Jun 17 06:12:10 2008 UTC (15 years, 8 months ago) by mlelstv
Branch: MAIN
CVS Tags: yamt-pf42-base4, wrstuden-revivesa-base-1, wrstuden-revivesa-base
Branch point for: haad-dm
Changes since 1.45: +5 -1 lines
Diff to previous 1.45 (colored)

add rnd(4) hooks. Note that interrupts on bge hardware may occur
with certain patterns, especially when the interrupt mitigation
logic kicks in. So this might be a very weak entropy source.

Revision 1.24.4.6 / (download) - annotate - [select for diffs], Mon Jan 21 09:43:52 2008 UTC (16 years, 1 month ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.24.4.5: +4 -4 lines
Diff to previous 1.24.4.5 (colored) to branchpoint 1.24 (colored) next main 1.25 (colored)

sync with head

Revision 1.43.2.2 / (download) - annotate - [select for diffs], Wed Jan 9 01:53:43 2008 UTC (16 years, 1 month ago) by matt
Branch: matt-armv6
Changes since 1.43.2.1: +4 -4 lines
Diff to previous 1.43.2.1 (colored) to branchpoint 1.43 (colored) next main 1.44 (colored)

sync with HEAD

Revision 1.44.6.1 / (download) - annotate - [select for diffs], Wed Dec 26 19:46:50 2007 UTC (16 years, 2 months ago) by ad
Branch: vmlocking2
Changes since 1.44: +4 -4 lines
Diff to previous 1.44 (colored) next main 1.45 (colored)

Sync with head.

Revision 1.44.8.1 / (download) - annotate - [select for diffs], Tue Dec 11 15:32:05 2007 UTC (16 years, 2 months ago) by yamt
Branch: yamt-kmem
Changes since 1.44: +4 -4 lines
Diff to previous 1.44 (colored) next main 1.45 (colored)

sync with head.

Revision 1.45 / (download) - annotate - [select for diffs], Sun Dec 9 20:28:08 2007 UTC (16 years, 2 months ago) by jmcneill
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base3, yamt-pf42-base2, yamt-pf42-base, yamt-nfs-mp-base2, yamt-nfs-mp-base, yamt-lazymbuf-base15, yamt-lazymbuf-base14, yamt-kmem-base3, yamt-kmem-base2, vmlocking2-base3, nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, matt-armv6-nbase, matt-armv6-base, keiichi-mipv6-nbase, keiichi-mipv6-base, keiichi-mipv6, hpcarm-cleanup-nbase, hpcarm-cleanup-base, cube-autoconf-base, cube-autoconf, bouyer-xeni386-nbase, bouyer-xeni386-merge1, bouyer-xeni386-base, bouyer-xeni386, ad-socklock-base1
Branch point for: yamt-pf42, yamt-nfs-mp, wrstuden-revivesa, simonb-wapbl, mjf-devfs2
Changes since 1.44: +4 -4 lines
Diff to previous 1.44 (colored)

Merge jmcneill-pm branch.

Revision 1.24.2.6 / (download) - annotate - [select for diffs], Mon Nov 19 21:18:09 2007 UTC (16 years, 3 months ago) by bouyer
Branch: netbsd-3
Changes since 1.24.2.5: +124 -84 lines
Diff to previous 1.24.2.5 (colored) to branchpoint 1.24 (colored) next main 1.25 (colored)

Pull up following revision(s) via patch (requested by msaitoh in ticket #1862):
	sys/dev/pci/if_bge.c		   	1.89,1.95,1.97,1.101,1.103,
						1.105,1.107,1.117-1.122,
						1.128-1.131,1.133-1.135,1.139
						via patch
	sys/dev/pci/if_bgereg.h		 	1.31,1.34-1.39,1.42-1.43
	sys/dev/pci/pcidevs		   	patch

Some cleanups(typo, whitespace, debug message).
Add TSO support to bge(4)
Add support for BCM5715, BCM5752M, BCM5754, BCM5755, BCM5786 and 5787.
Add support for BCM5789. Fixes PR/33828 from Pawel Chwalowskibg.
Add support for BCM5753 and BCM5753M Fixes PR kern/36139 from Mustafa Dogan.
Add and fix some BGE_CHIPIDs. From FreeBSD and OpenBSD.
In bge_ioctl(), don't call bge_init() if the interface is already up
(Makes ifwatchd work on this interface).
BCM5701 B2 requires BGE_QUIRK_ONLY_PHY_1 quirk. From Brian Baird in kern/23778.
Move TX ring full sanity check further up and check the number of DMA
segments from the DMA map, instead of counting the DMA segments in the
for loop and breaking out later.
Unload the DMA map if encountering an error condition.
Fix a NULL reference on failing mbuf allocation.
In bge_start return if IFF_OACTIVE is set in combination with
IFF_RUNNING, drop obscure check for length of interface queue.
Remove message about failing bge_encap, it can happen just too easily
because of full descriptor rings.
Fix some watchdog timeout and "block failed to stop" problems on
some cards.
Fix "pcistate failed to revert" problem on many cards.

Revision 1.43.2.1 / (download) - annotate - [select for diffs], Tue Nov 6 23:28:55 2007 UTC (16 years, 3 months ago) by matt
Branch: matt-armv6
CVS Tags: matt-armv6-prevmlocking
Changes since 1.43: +2 -2 lines
Diff to previous 1.43 (colored)

sync with HEAD

Revision 1.24.4.5 / (download) - annotate - [select for diffs], Sat Oct 27 11:32:49 2007 UTC (16 years, 4 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.24.4.4: +2 -2 lines
Diff to previous 1.24.4.4 (colored) to branchpoint 1.24 (colored)

sync with head.

Revision 1.41.2.3 / (download) - annotate - [select for diffs], Tue Oct 9 13:41:43 2007 UTC (16 years, 4 months ago) by ad
Branch: vmlocking
Changes since 1.41.2.2: +2 -2 lines
Diff to previous 1.41.2.2 (colored) to branchpoint 1.41 (colored) next main 1.42 (colored)

Sync with head.

Revision 1.43.4.1 / (download) - annotate - [select for diffs], Sat Oct 6 15:31:24 2007 UTC (16 years, 4 months ago) by yamt
Branch: yamt-x86pmap
Changes since 1.43: +2 -2 lines
Diff to previous 1.43 (colored) next main 1.44 (colored)

sync with head.

Revision 1.42.6.4 / (download) - annotate - [select for diffs], Tue Oct 2 18:28:32 2007 UTC (16 years, 5 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.42.6.3: +2 -2 lines
Diff to previous 1.42.6.3 (colored) to branchpoint 1.42 (colored) next main 1.43 (colored)

Sync with HEAD.

Revision 1.42.6.3 / (download) - annotate - [select for diffs], Mon Oct 1 05:37:40 2007 UTC (16 years, 5 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.42.6.2: +1 -2 lines
Diff to previous 1.42.6.2 (colored) to branchpoint 1.42 (colored)

Extend device API by device_power_private and device_power_set_private.
The latter is a temporary mean until the pnp_register API itself is
overhault. This functions allow a generic power handler to store its
state independent of the driver.

Use this and revamp the PCI power handling. Pretty much all PCI devices
had power handlers that did the same thing, generalize this in
pci_generic_power_register/deregister and the handler. This interface
offers callbacks for the drivers to save and restore state on
transistions. After a long discussion with jmcneill@ it was considered
to be powerful enough until evidence is shown that devices can handle
D1/D2 with less code and higher speed than without the full
save/restore. The generic code is carefully written to handle device
without PCI-PM support and ensure that the correct registers are written
to when D3 loses all state.

Reimplement the generic PCI network device handling on
top of PCI generic power handling.

Introduce pci_disable_retry as used and implemented locally at least by
ath(4) and iwi(4). Use it in this drivers to restore behaviour from
before the introduction of generic PCI network handling.

Convert all PCI drivers that were using pnp_register to the new
framework. The only exception is vga(4) as it is commonly used as
console device. Add a note therein that this should be fixed later.

Revision 1.44 / (download) - annotate - [select for diffs], Mon Sep 24 21:25:45 2007 UTC (16 years, 5 months ago) by joerg
Branch: MAIN
CVS Tags: yamt-x86pmap-base4, yamt-x86pmap-base3, yamt-x86pmap-base2, yamt-kmem-base, vmlocking2-base2, vmlocking2-base1, vmlocking-nbase, vmlocking-base, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base, mjf-devfs, jmcneill-pm-base, jmcneill-base, bouyer-xenamd64-base2, bouyer-xenamd64-base, bouyer-xenamd64
Branch point for: yamt-kmem, vmlocking2
Changes since 1.43: +2 -2 lines
Diff to previous 1.43 (colored)

Convert bge(4) to device/softc separation. Use aprint_* instead of
printf all over the place. Only the debug macros are kept. Place the TSO
message about the hard case under debug.

Revision 1.24.4.4 / (download) - annotate - [select for diffs], Mon Sep 3 14:36:53 2007 UTC (16 years, 6 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.24.4.3: +6 -4 lines
Diff to previous 1.24.4.3 (colored) to branchpoint 1.24 (colored)

sync with head.

Revision 1.39.2.1.2.2 / (download) - annotate - [select for diffs], Mon Sep 3 07:04:30 2007 UTC (16 years, 6 months ago) by wrstuden
Branch: wrstuden-fixsa
Changes since 1.39.2.1.2.1: +3 -1 lines
Diff to previous 1.39.2.1.2.1 (colored)

Sync w/ NetBSD-4-RC_1

Revision 1.39.2.3 / (download) - annotate - [select for diffs], Fri Aug 31 21:52:41 2007 UTC (16 years, 6 months ago) by xtraeme
Branch: netbsd-4
CVS Tags: wrstuden-fixsa-base-1, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-RC1, netbsd-4-0-1-RELEASE, netbsd-4-0, matt-nb4-arm-base, matt-nb4-arm
Changes since 1.39.2.2: +3 -1 lines
Diff to previous 1.39.2.2 (colored) to branchpoint 1.39 (colored)

Pull up following revision(s) (requested by phil in ticket #819):
	sys/dev/mii/miidevs.h: regen
	sys/dev/mii/miidevs: revision 1.71
	sys/dev/pci/if_bge.c: revision 1.133
	sys/dev/pci/if_bge.c: revision 1.134
	sys/dev/pci/if_bgereg.h: revision 1.43
	sys/dev/mii/brgphy.c: revision 1.34
	sys/dev/mii/miidevs_data.h: regen
Add BCM5755 and 5754 Gig-E PHYs.
Regen for BCM5755 and 5754.
Add support for BCM5754 and BCM5755.  From suggestions from Jonathan
Stone.
Add a couple more BGE_CHIPIDs
Add support for BCM5755 and BCM5754/5787.  Suggestions from Jonathan
Stone and fixes from OpenBSD for various hardware bugs/errata.
Disable firmware fastboot on 5754 and 5755.  From FreeBSD by way of Phil
Nelson.

Revision 1.42.6.2 / (download) - annotate - [select for diffs], Tue Aug 21 06:56:49 2007 UTC (16 years, 6 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.42.6.1: +5 -4 lines
Diff to previous 1.42.6.1 (colored) to branchpoint 1.42 (colored)

Make bge(4) a bit more like other drivers in the tree with regard to
the data stored in the softc. Convert to pnp_register.

Revision 1.41.2.2 / (download) - annotate - [select for diffs], Mon Aug 20 18:37:12 2007 UTC (16 years, 6 months ago) by ad
Branch: vmlocking
Changes since 1.41.2.1: +3 -1 lines
Diff to previous 1.41.2.1 (colored) to branchpoint 1.41 (colored)

Sync with HEAD.

Revision 1.42.2.1 / (download) - annotate - [select for diffs], Wed Aug 15 13:48:31 2007 UTC (16 years, 6 months ago) by skrll
Branch: nick-csl-alignment
Changes since 1.42: +3 -1 lines
Diff to previous 1.42 (colored) next main 1.43 (colored)

Sync with HEAD.

Revision 1.42.6.1 / (download) - annotate - [select for diffs], Thu Aug 9 02:37:11 2007 UTC (16 years, 6 months ago) by jmcneill
Branch: jmcneill-pm
Changes since 1.42: +3 -1 lines
Diff to previous 1.42 (colored)

Sync with HEAD.

Revision 1.43.6.2 / (download) - annotate - [select for diffs], Mon Aug 6 12:23:09 2007 UTC (16 years, 7 months ago) by markd
Branch: matt-mips64
Changes since 1.43.6.1: +2442 -0 lines
Diff to previous 1.43.6.1 (colored) to branchpoint 1.43 (colored) next main 1.44 (colored)

Add a couple more BGE_CHIPIDs

Revision 1.43.6.1, Mon Aug 6 12:23:08 2007 UTC (16 years, 7 months ago) by markd
Branch: matt-mips64
Changes since 1.43: +0 -2442 lines
FILE REMOVED

file if_bgereg.h was added on branch matt-mips64 on 2007-08-06 12:23:09 +0000

Revision 1.43 / (download) - annotate - [select for diffs], Mon Aug 6 12:23:08 2007 UTC (16 years, 7 months ago) by markd
Branch: MAIN
CVS Tags: yamt-x86pmap-base, nick-csl-alignment-base5, matt-mips64-base
Branch point for: yamt-x86pmap, matt-mips64, matt-armv6
Changes since 1.42: +3 -1 lines
Diff to previous 1.42 (colored)

Add a couple more BGE_CHIPIDs

Revision 1.41.4.1 / (download) - annotate - [select for diffs], Wed Jul 11 20:07:32 2007 UTC (16 years, 7 months ago) by mjf
Branch: mjf-ufs-trans
Changes since 1.41: +2 -2 lines
Diff to previous 1.41 (colored) next main 1.42 (colored)

Sync with head.

Revision 1.39.2.1.2.1 / (download) - annotate - [select for diffs], Mon Jun 4 01:54:20 2007 UTC (16 years, 9 months ago) by wrstuden
Branch: wrstuden-fixsa
Changes since 1.39.2.1: +2 -2 lines
Diff to previous 1.39.2.1 (colored)

Update to today's netbsd-4.

Revision 1.39.2.2 / (download) - annotate - [select for diffs], Wed May 30 18:00:18 2007 UTC (16 years, 9 months ago) by riz
Branch: netbsd-4
Changes since 1.39.2.1: +2 -2 lines
Diff to previous 1.39.2.1 (colored) to branchpoint 1.39 (colored)

Pull up following revision(s) (requested by pavel in ticket #671):
	sys/dev/pci/if_bgereg.h: revision 1.42
from FreeBSD's src/sys/dev/bge/if_bgereg.h rev 1.22:
Fix a typo. BGE_HCC_TX_MAX_COAL_BDS_INT is at offset 0x3C24, not 0x3C34
Noticed by Patrick Welche on tech-kern@, ok cube.

Revision 1.41.2.1 / (download) - annotate - [select for diffs], Sun May 27 14:30:23 2007 UTC (16 years, 9 months ago) by ad
Branch: vmlocking
Changes since 1.41: +2 -2 lines
Diff to previous 1.41 (colored)

Sync with head.

Revision 1.42 / (download) - annotate - [select for diffs], Fri May 18 22:30:24 2007 UTC (16 years, 9 months ago) by pavel
Branch: MAIN
CVS Tags: nick-csl-alignment-base, mjf-ufs-trans-base, hpcarm-cleanup
Branch point for: nick-csl-alignment, jmcneill-pm
Changes since 1.41: +2 -2 lines
Diff to previous 1.41 (colored)

from FreeBSD's src/sys/dev/bge/if_bgereg.h rev 1.22:
Fix a typo. BGE_HCC_TX_MAX_COAL_BDS_INT is at offset 0x3C24, not 0x3C34
Noticed by Patrick Welche on tech-kern@, ok cube.

Revision 1.39.4.2 / (download) - annotate - [select for diffs], Mon Mar 12 05:55:16 2007 UTC (16 years, 11 months ago) by rmind
Branch: yamt-idlelwp
Changes since 1.39.4.1: +3 -3 lines
Diff to previous 1.39.4.1 (colored) to branchpoint 1.39 (colored) next main 1.40 (colored)

Sync with HEAD.

Revision 1.24.2.5 / (download) - annotate - [select for diffs], Mon Mar 5 15:07:14 2007 UTC (17 years ago) by ghen
Branch: netbsd-3
Changes since 1.24.2.4: +2 -2 lines
Diff to previous 1.24.2.4 (colored) to branchpoint 1.24 (colored)

Pull up following revision(s) (requested by bouyer in ticket #1671):
	sys/dev/pci/if_bgereg.h: revision 1.40
	sys/dev/pci/if_bge.c: revision 1.124
	sys/dev/pci/if_bge.c: revision 1.125
bus_dma fixes for bge(4). It now works on amd64 with more than 4GB physical
RAM (jumbo frames untested yet).
We have to bus_mapmap_load() after m_adj, otherwise the map will point at
the wrong place in the buffer. Fix an issue in the !sc->bge_rx_alignment_bug
case reported by Nicolas Joly.
While there remove a duplicate m_adj(), and add a missing bus_dmamap_unload().

Revision 1.41 / (download) - annotate - [select for diffs], Sun Mar 4 06:02:19 2007 UTC (17 years ago) by christos
Branch: MAIN
CVS Tags: yamt-idlelwp-base8, thorpej-atomic-base, thorpej-atomic, reinoud-bufcleanup
Branch point for: vmlocking, mjf-ufs-trans
Changes since 1.40: +3 -3 lines
Diff to previous 1.40 (colored)

Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.

Revision 1.39.2.1 / (download) - annotate - [select for diffs], Tue Feb 27 23:32:01 2007 UTC (17 years ago) by riz
Branch: netbsd-4
Branch point for: wrstuden-fixsa
Changes since 1.39: +2 -2 lines
Diff to previous 1.39 (colored)

Pull up following revision(s) (requested by bouyer in ticket #466):
	sys/dev/pci/if_bgereg.h: revision 1.40
	sys/dev/pci/if_bge.c: revision 1.124-1.125
bus_dma fixes for bge(4). It now works on amd64 with more than 4GB physical
RAM (jumbo frames untested yet).
We have to bus_mapmap_load() after m_adj, otherwise the map will point at
the wrong place in the buffer. Fix an issue in the !sc->bge_rx_alignment_bug
case reported by Nicolas Joly.
While there remove a duplicate m_adj(), and add a missing bus_dmamap_unload().

Revision 1.39.4.1 / (download) - annotate - [select for diffs], Tue Feb 27 16:53:59 2007 UTC (17 years ago) by yamt
Branch: yamt-idlelwp
Changes since 1.39: +2 -2 lines
Diff to previous 1.39 (colored)

- sync with head.
- move sched_changepri back to kern_synch.c as it doesn't know PPQ anymore.

Revision 1.24.4.3 / (download) - annotate - [select for diffs], Mon Feb 26 09:10:25 2007 UTC (17 years ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.24.4.2: +2 -2 lines
Diff to previous 1.24.4.2 (colored) to branchpoint 1.24 (colored)

sync with head.

Revision 1.40 / (download) - annotate - [select for diffs], Sat Feb 17 19:47:07 2007 UTC (17 years ago) by bouyer
Branch: MAIN
CVS Tags: ad-audiomp-base, ad-audiomp
Changes since 1.39: +2 -2 lines
Diff to previous 1.39 (colored)

bus_dma fixes for bge(4). It now works on amd64 with more than 4GB physical
RAM (jumbo frames untested yet).

Revision 1.34.8.1 / (download) - annotate - [select for diffs], Fri Jan 12 00:57:41 2007 UTC (17 years, 1 month ago) by ad
Branch: newlock2
Changes since 1.34: +104 -78 lines
Diff to previous 1.34 (colored) next main 1.35 (colored)

Sync with head.

Revision 1.24.4.2 / (download) - annotate - [select for diffs], Sat Dec 30 20:48:44 2006 UTC (17 years, 2 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.24.4.1: +104 -78 lines
Diff to previous 1.24.4.1 (colored) to branchpoint 1.24 (colored)

sync with head.

Revision 1.34.10.1 / (download) - annotate - [select for diffs], Sun Dec 10 07:17:43 2006 UTC (17 years, 2 months ago) by yamt
Branch: yamt-splraiseipl
Changes since 1.34: +104 -78 lines
Diff to previous 1.34 (colored) next main 1.35 (colored)

sync with head.

Revision 1.39 / (download) - annotate - [select for diffs], Sun Nov 26 05:52:15 2006 UTC (17 years, 3 months ago) by tsutsui
Branch: MAIN
CVS Tags: yamt-splraiseipl-base5, yamt-splraiseipl-base4, yamt-splraiseipl-base3, post-newlock2-merge, newlock2-nbase, newlock2-base, netbsd-4-base
Branch point for: yamt-idlelwp, netbsd-4
Changes since 1.38: +2 -2 lines
Diff to previous 1.38 (colored)

Revert a CHIPID entry in the previous:
In OpenBSD's if_bgereg.h, CHIPID 0x4101000 is defined as BCM5750_B1
but our PR kern/31028 says it's BCM5751_A1 on BCM5751M on IBM T43p,
and the value seems reasonable.

Revision 1.38 / (download) - annotate - [select for diffs], Sun Nov 26 04:00:45 2006 UTC (17 years, 3 months ago) by tsutsui
Branch: MAIN
Changes since 1.37: +31 -9 lines
Diff to previous 1.37 (colored)

Add and fix some BGE_CHIPIDs. From FreeBSD and OpenBSD.

Revision 1.37 / (download) - annotate - [select for diffs], Sun Nov 26 03:08:02 2006 UTC (17 years, 3 months ago) by tsutsui
Branch: MAIN
Changes since 1.36: +30 -30 lines
Diff to previous 1.36 (colored)

TAB/space cleanup.

Revision 1.36 / (download) - annotate - [select for diffs], Sun Nov 26 03:02:04 2006 UTC (17 years, 3 months ago) by tsutsui
Branch: MAIN
Changes since 1.35: +5 -1 lines
Diff to previous 1.35 (colored)

Add support for BCM5752M. from Matt Kolb on tech-kern and OpenBSD.

Revision 1.35 / (download) - annotate - [select for diffs], Sun Nov 26 02:39:04 2006 UTC (17 years, 3 months ago) by tsutsui
Branch: MAIN
Changes since 1.34: +45 -45 lines
Diff to previous 1.34 (colored)

make DMA descriptor members volatile.

Revision 1.32.4.1 / (download) - annotate - [select for diffs], Sat Sep 9 02:52:16 2006 UTC (17 years, 5 months ago) by rpaulo
Branch: rpaulo-netinet-merge-pcb
Changes since 1.32: +3 -2 lines
Diff to previous 1.32 (colored) next main 1.33 (colored)

sync with head

Revision 1.24.4.1 / (download) - annotate - [select for diffs], Wed Jun 21 15:05:04 2006 UTC (17 years, 8 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.24: +55 -16 lines
Diff to previous 1.24 (colored)

sync with head.

Revision 1.24.2.4 / (download) - annotate - [select for diffs], Sun Jun 4 08:59:42 2006 UTC (17 years, 9 months ago) by tron
Branch: netbsd-3
CVS Tags: netbsd-3-1-RELEASE, netbsd-3-1-RC4, netbsd-3-1-RC3, netbsd-3-1-RC2, netbsd-3-1-RC1, netbsd-3-1-1-RELEASE, netbsd-3-1
Changes since 1.24.2.3: +37 -1 lines
Diff to previous 1.24.2.3 (colored) to branchpoint 1.24 (colored)

Apply patch (requested by jonathan in ticket #1351):
Add support to bge(4) for bcm5714, bcm5715, bcm5780/HT-2000 and
bcm5752 chip variants.

Revision 1.33.6.1 / (download) - annotate - [select for diffs], Wed May 24 15:50:27 2006 UTC (17 years, 9 months ago) by tron
Branch: peter-altq
Changes since 1.33: +2 -1 lines
Diff to previous 1.33 (colored) next main 1.34 (colored)

Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.

Revision 1.33.2.1 / (download) - annotate - [select for diffs], Wed May 24 10:58:00 2006 UTC (17 years, 9 months ago) by yamt
Branch: yamt-pdpolicy
Changes since 1.33: +2 -1 lines
Diff to previous 1.33 (colored) next main 1.34 (colored)

sync with head.

Revision 1.32.6.1 / (download) - annotate - [select for diffs], Sat Apr 22 11:39:14 2006 UTC (17 years, 10 months ago) by simonb
Branch: simonb-timecounters
CVS Tags: simonb-timcounters-final
Changes since 1.32: +3 -2 lines
Diff to previous 1.32 (colored) next main 1.33 (colored)

Sync with head.

Revision 1.33.4.1 / (download) - annotate - [select for diffs], Wed Apr 19 03:25:34 2006 UTC (17 years, 10 months ago) by elad
Branch: elad-kernelauth
Changes since 1.33: +2 -1 lines
Diff to previous 1.33 (colored) next main 1.34 (colored)

sync with head.

Revision 1.34 / (download) - annotate - [select for diffs], Tue Apr 18 14:53:43 2006 UTC (17 years, 10 months ago) by christos
Branch: MAIN
CVS Tags: yamt-splraiseipl-base2, yamt-splraiseipl-base, yamt-pdpolicy-base9, yamt-pdpolicy-base8, yamt-pdpolicy-base7, yamt-pdpolicy-base6, yamt-pdpolicy-base5, simonb-timecounters-base, rpaulo-netinet-merge-pcb-base, gdamore-uart-base, gdamore-uart, elad-kernelauth-base, chap-midi-nbase, chap-midi-base, chap-midi, abandoned-netbsd-4-base, abandoned-netbsd-4
Branch point for: yamt-splraiseipl, newlock2
Changes since 1.33: +2 -1 lines
Diff to previous 1.33 (colored)

PR/33828: Pawel Chwalowski: Add support for Broadcom BCM5789 chip

Revision 1.32.2.1 / (download) - annotate - [select for diffs], Sat Feb 18 15:39:07 2006 UTC (18 years ago) by yamt
Branch: yamt-uio_vmspace
Changes since 1.32: +2 -2 lines
Diff to previous 1.32 (colored) next main 1.33 (colored)

sync with head.

Revision 1.33 / (download) - annotate - [select for diffs], Thu Feb 16 20:17:19 2006 UTC (18 years ago) by perry
Branch: MAIN
CVS Tags: yamt-uio_vmspace-base5, yamt-pdpolicy-base4, yamt-pdpolicy-base3, yamt-pdpolicy-base2, yamt-pdpolicy-base, peter-altq-base
Branch point for: yamt-pdpolicy, peter-altq, elad-kernelauth
Changes since 1.32: +2 -2 lines
Diff to previous 1.32 (colored)

Change "inline" back to "__inline" in .h files -- C99 is still too
new, and some apps compile things in C89 mode. C89 keywords stay.

As per core@.

Revision 1.32 / (download) - annotate - [select for diffs], Sat Dec 24 20:27:42 2005 UTC (18 years, 2 months ago) by perry
Branch: MAIN
Branch point for: yamt-uio_vmspace, simonb-timecounters, rpaulo-netinet-merge-pcb
Changes since 1.31: +2 -2 lines
Diff to previous 1.31 (colored)

Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.

Revision 1.31 / (download) - annotate - [select for diffs], Mon Dec 12 00:40:44 2005 UTC (18 years, 2 months ago) by jonathan
Branch: MAIN
Changes since 1.30: +3 -1 lines
Diff to previous 1.30 (colored)

Add support for bcm5714 and (possibly incorrect) support for the
bcm5715 PCI-Express dual-port NICs. Taken from the Broadcom-supplied
Linux driver, bcm-8.3.13a.

Add nascent support for the bcm5780, but (since I have no bcm5780 to
test), don't yet add an entry which allows us to match or attach to a
5780.

Change 5752 support: Follow the lead of the Broadcom-supplied Linux
driver (bcm) and the Linux tg3 driver, and treat the 5752 like a 5750.

Revision 1.10.2.8 / (download) - annotate - [select for diffs], Sun Dec 11 10:28:58 2005 UTC (18 years, 2 months ago) by christos
Branch: ktrace-lwp
Changes since 1.10.2.7: +51 -14 lines
Diff to previous 1.10.2.7 (colored) next main 1.11 (colored)

Sync with head.

Revision 1.30 / (download) - annotate - [select for diffs], Wed Dec 7 04:43:05 2005 UTC (18 years, 2 months ago) by jonathan
Branch: MAIN
CVS Tags: ktrace-lwp-base
Changes since 1.29: +6 -1 lines
Diff to previous 1.29 (colored)

Add PCI device-ids to sys/dev/pci/pcidevs for newer Broadcom gigabit
ethernet devices: bcm5714, bcm5752 (previously the 5789, but fvdl
committed that whilst I was musing).

Add definitions to sys/dev/pci/if_bgereg.h for the Broadcom 57xx-family
ASIC revisions on these newer chips.

Add entries to the PCI-device-version and bge-internal-asic-revision
tables in sys/dev/pci/if_bge.c to use these new devices. Pending
further information, follow the lead of FreeBSD's if_bge.c driver and,
pending further info, treat these new chips as we do the 5750.

Revision 1.18.4.1 / (download) - annotate - [select for diffs], Thu Dec 1 20:14:40 2005 UTC (18 years, 3 months ago) by riz
Branch: netbsd-2
Changes since 1.18: +1 -12 lines
Diff to previous 1.18 (colored) next main 1.19 (colored)

Pull up following revision(s) (requested by tsutsui in ticket #10169):
	sys/dev/pci/if_bgereg.h: revision 1.29
Remove unnecessary byteswap code so that bge(4) should work
at least on macppc.

Revision 1.26.6.2 / (download) - annotate - [select for diffs], Tue Nov 29 21:23:14 2005 UTC (18 years, 3 months ago) by yamt
Branch: yamt-readahead
Changes since 1.26.6.1: +45 -14 lines
Diff to previous 1.26.6.1 (colored) to branchpoint 1.26 (colored) next main 1.27 (colored)

sync with head.

Revision 1.24.2.3 / (download) - annotate - [select for diffs], Sun Nov 27 22:41:42 2005 UTC (18 years, 3 months ago) by riz
Branch: netbsd-3
CVS Tags: netbsd-3-0-RELEASE, netbsd-3-0-RC6, netbsd-3-0-RC5, netbsd-3-0-RC4, netbsd-3-0-3-RELEASE, netbsd-3-0-2-RELEASE, netbsd-3-0-1-RELEASE, netbsd-3-0
Changes since 1.24.2.2: +1 -12 lines
Diff to previous 1.24.2.2 (colored) to branchpoint 1.24 (colored)

Pull up following revision(s) (requested by tsutsui in ticket #1004):
	sys/dev/pci/if_bgereg.h: revision 1.29
Remove unnecessary byteswap code so that bge(4) should work
at least on macppc.

Revision 1.29 / (download) - annotate - [select for diffs], Fri Nov 25 15:30:34 2005 UTC (18 years, 3 months ago) by tsutsui
Branch: MAIN
CVS Tags: yamt-readahead-base3
Changes since 1.28: +1 -12 lines
Diff to previous 1.28 (colored)

Remove unnecessary byteswap code so that bge(4) should work
at least on macppc.

Revision 1.28 / (download) - annotate - [select for diffs], Thu Nov 24 03:27:59 2005 UTC (18 years, 3 months ago) by jonathan
Branch: MAIN
Changes since 1.27: +45 -3 lines
Diff to previous 1.27 (colored)

Add TSO support to bge(4) for PCI-Express bge devices, which are
shipped from the factory with TSO-capable firmware.  The TSO support
here may also work on 5705 chips, but that is (so far) untested.

TSO support written after careful reading of the Linux tg3 driver,
and (after attempting to deconstruct the cut-and-paste mess therein)
very close reading of the Broadcom-supplied Linux driver, particularly
the building of Tx-DMA buffer descriptors (bds). The TSO code herein was
then rewritten from scratch, circa 4am local time, October 27 2005.
(In other words: this is 4am software; caveat emptor.)

Other magic register settings in this patch are required; without
them, attepmting to use TSO locks up the chip. The required register
settings were extracted from the cited Linux drivers.

Note that TSO-capable firmware for the 5703/5704 is distributed in
non-GPL form with the aforementioned Linux drivers. Once the 5705 case
is debugged, (particularly the pseudo-header checksum precalculation
flagged with an XXX) downloading that TSO-capable firmware to the
5703/5704 should, in principle, enable TSO support on all but the
original bcm5700 (I forget if the 5701 can support TSO, or not).

Note also that the ``hard case '' of IP/TCP headers spanning more than
one mbuf is not handled; I haven't been able to trigger it.  In any
case, since TSO applies only to packets generated by the local TCP,
and our TCP always leaves space for TCP headers and a normal IP
header, TSO on an IP/TCP header spanning multiple headers can only
arise due to insertion of IP options. I beleive that we are clearly
better off outlawing that case, and requiring ip_insertoptions()
to  pull-up TCP headers on any packets with M_CSUM_TSOv4 set.

As far as I know, bge hardwar does not support TSO for IPv6.

Revision 1.24.2.2 / (download) - annotate - [select for diffs], Tue Nov 22 20:44:22 2005 UTC (18 years, 3 months ago) by tron
Branch: netbsd-3
CVS Tags: netbsd-3-0-RC3
Changes since 1.24.2.1: +1 -0 lines
Diff to previous 1.24.2.1 (colored) to branchpoint 1.24 (colored)

Pull up following revision(s) (requested by jonathan in ticket #985):
	sys/dev/pci/if_bgereg.h: revision 1.27
	sys/dev/pci/if_bge.c: revision 1.94
Correct a performance bug from Bill Paul's original FreeBSD bge(4) driver:
Each call to the FreeBSD bge_start() routine the transmit producer
pointer index from the chip mailbox register BGE_MBX_TX_HOST_PROD0_LO.
The local copy of that value is then updated by bge_encap() as
bge_encap() encapsulates packets in the Tx ring. If bge_encap()
succeds in encpuslating one or more packets, bge_start() tells the
chip to start sending the newly-encinitiates writes the new value back
to the chip mailbox register.
However, comparison of the Linux drivers (Broadcom-supplied and
open-source tg3.c) and to the OpenSolaris driver confirms that
register BGE_MBX_TX_HOST_PROD0_LO is write-only to software.
Thus, we can just keep a copy in the softc, and eliminate the
(expensive) PCI register write on each call to bge_start().
``Make it so''.

Revision 1.26.6.1 / (download) - annotate - [select for diffs], Tue Nov 22 16:08:11 2005 UTC (18 years, 3 months ago) by yamt
Branch: yamt-readahead
Changes since 1.26: +2 -1 lines
Diff to previous 1.26 (colored)

sync with head.

Revision 1.27 / (download) - annotate - [select for diffs], Tue Nov 15 06:05:44 2005 UTC (18 years, 3 months ago) by jonathan
Branch: MAIN
CVS Tags: yamt-readahead-base2
Changes since 1.26: +2 -1 lines
Diff to previous 1.26 (colored)

Correct a performance bug from Bill Paul's original FreeBSD bge(4) driver:

Each call to the FreeBSD bge_start() routine the transmit producer
pointer index from the chip mailbox register BGE_MBX_TX_HOST_PROD0_LO.
The local copy of that value is then updated by bge_encap() as
bge_encap() encapsulates packets in the Tx ring. If bge_encap()
succeds in encpuslating one or more packets, bge_start() tells the
chip to start sending the newly-encinitiates writes the new value back
to the chip mailbox register.

However, comparison of the Linux drivers (Broadcom-supplied and
open-source tg3.c) and to the OpenSolaris driver confirms that
register BGE_MBX_TX_HOST_PROD0_LO is write-only to software.
Thus, we can just keep a copy in the softc, and eliminate the
(expensive) PCI register write on each call to bge_start().

``Make it so''.

Revision 1.10.2.7 / (download) - annotate - [select for diffs], Thu Nov 10 14:06:01 2005 UTC (18 years, 3 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.10.2.6: +2 -3 lines
Diff to previous 1.10.2.6 (colored)

Sync with HEAD. Here we go again...

Revision 1.24.2.1 / (download) - annotate - [select for diffs], Thu Sep 8 21:24:31 2005 UTC (18 years, 5 months ago) by tron
Branch: netbsd-3
CVS Tags: netbsd-3-0-RC2, netbsd-3-0-RC1
Changes since 1.24: +2 -1 lines
Diff to previous 1.24 (colored)

Pull up following revision(s) (requested by gavan in ticket #752):
	sys/dev/pci/if_bgereg.h: revision 1.25
	sys/dev/pci/if_bge.c: revision 1.92
Add quirk for BGE_CHIPID_BCM5751_A1. From Kurt Schreiner <ks at ub.uni-mainz
dot de> via PR kern/31028.

Revision 1.26 / (download) - annotate - [select for diffs], Sun Aug 28 19:24:57 2005 UTC (18 years, 6 months ago) by thorpej
Branch: MAIN
CVS Tags: yamt-vop-base3, yamt-vop-base2, yamt-vop-base, yamt-vop, yamt-readahead-pervnode, yamt-readahead-perfile, yamt-readahead-base, thorpej-vnode-attr-base, thorpej-vnode-attr
Branch point for: yamt-readahead
Changes since 1.25: +1 -3 lines
Diff to previous 1.25 (colored)

Remove unused and incorrect macro BGE_HOSTADDR().

Revision 1.25 / (download) - annotate - [select for diffs], Mon Aug 22 18:18:25 2005 UTC (18 years, 6 months ago) by gavan
Branch: MAIN
Changes since 1.24: +2 -1 lines
Diff to previous 1.24 (colored)

Add quirk for BGE_CHIPID_BCM5751_A1. From Kurt Schreiner <ks at ub.uni-mainz
dot de> via PR kern/31028.

Revision 1.22.4.1 / (download) - annotate - [select for diffs], Fri Apr 29 11:29:05 2005 UTC (18 years, 10 months ago) by kent
Branch: kent-audio2
Changes since 1.22: +8 -6 lines
Diff to previous 1.22 (colored) next main 1.23 (colored)

sync with -current

Revision 1.22.6.2 / (download) - annotate - [select for diffs], Sat Mar 19 08:35:11 2005 UTC (18 years, 11 months ago) by yamt
Branch: yamt-km
Changes since 1.22.6.1: +6 -6 lines
Diff to previous 1.22.6.1 (colored) to branchpoint 1.22 (colored) next main 1.23 (colored)

sync with head.  xen and whitespace.  xen part is not finished.

Revision 1.10.2.6 / (download) - annotate - [select for diffs], Fri Mar 4 16:45:17 2005 UTC (19 years ago) by skrll
Branch: ktrace-lwp
Changes since 1.10.2.5: +6 -6 lines
Diff to previous 1.10.2.5 (colored)

Sync with HEAD.

Hi Perry!

Revision 1.24 / (download) - annotate - [select for diffs], Sun Feb 27 00:27:32 2005 UTC (19 years ago) by perry
Branch: MAIN
CVS Tags: yamt-km-base4, yamt-km-base3, netbsd-3-base, kent-audio2-base
Branch point for: yamt-lazymbuf, netbsd-3
Changes since 1.23: +6 -6 lines
Diff to previous 1.23 (colored)

nuke trailing whitespace

Revision 1.22.6.1 / (download) - annotate - [select for diffs], Sat Feb 12 18:17:47 2005 UTC (19 years ago) by yamt
Branch: yamt-km
Changes since 1.22: +3 -1 lines
Diff to previous 1.22 (colored)

sync with head.

Revision 1.10.2.5 / (download) - annotate - [select for diffs], Fri Feb 4 11:46:38 2005 UTC (19 years, 1 month ago) by skrll
Branch: ktrace-lwp
Changes since 1.10.2.4: +3 -1 lines
Diff to previous 1.10.2.4 (colored)

Sync with HEAD.

Revision 1.23 / (download) - annotate - [select for diffs], Wed Jan 26 21:52:47 2005 UTC (19 years, 1 month ago) by jmcneill
Branch: MAIN
CVS Tags: yamt-km-base2
Changes since 1.22: +3 -1 lines
Diff to previous 1.22 (colored)

Add powerhook to bge(4)

Revision 1.10.2.4 / (download) - annotate - [select for diffs], Tue Nov 2 07:52:10 2004 UTC (19 years, 4 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.10.2.3: +14 -1 lines
Diff to previous 1.10.2.3 (colored)

Sync with HEAD.

Revision 1.22 / (download) - annotate - [select for diffs], Thu Oct 28 07:36:05 2004 UTC (19 years, 4 months ago) by cube
Branch: MAIN
CVS Tags: yamt-km-base, kent-audio1-beforemerge, kent-audio1-base, kent-audio1
Branch point for: yamt-km, kent-audio2
Changes since 1.21: +14 -1 lines
Diff to previous 1.21 (colored)

Add support for the BCM575x variants.  They're close to the 5705 one, with
some special cases for the PCI-Express versions.  As there is no
documentation available, all of this is inspired from Linux or taken from
FreeBSD (itself inspired from Linux).  There are a lot of magic numbers.

Tested on two BCM5751 devices as found in newer Dell computers.

Revision 1.10.2.3 / (download) - annotate - [select for diffs], Tue Sep 21 13:31:02 2004 UTC (19 years, 5 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.10.2.2: +1 -1 lines
Diff to previous 1.10.2.2 (colored)

Fix the sync with head I botched.

Revision 1.10.2.2 / (download) - annotate - [select for diffs], Sat Sep 18 14:49:03 2004 UTC (19 years, 5 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.10.2.1: +0 -0 lines
Diff to previous 1.10.2.1 (colored)

Sync with HEAD.

Revision 1.10.2.1 / (download) - annotate - [select for diffs], Tue Aug 3 10:49:07 2004 UTC (19 years, 7 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.10: +116 -23 lines
Diff to previous 1.10 (colored)

Sync with HEAD

Revision 1.21 / (download) - annotate - [select for diffs], Sat May 15 22:19:27 2004 UTC (19 years, 9 months ago) by thorpej
Branch: MAIN
Changes since 1.20: +13 -1 lines
Diff to previous 1.20 (colored)

Add PAUSE-related event counters.  Slightly modified from patch supplied by
HITOSHI Osada.

Revision 1.20 / (download) - annotate - [select for diffs], Sat May 15 21:58:40 2004 UTC (19 years, 9 months ago) by thorpej
Branch: MAIN
Changes since 1.19: +2 -1 lines
Diff to previous 1.19 (colored)

Patches from HITOSHI Osada:
* Set buffer management high water marks for MTU > 1514.
* Set BGE_MAX_RX_FRAME_LOWAT (from Linux driver).

Revision 1.19 / (download) - annotate - [select for diffs], Sat Apr 10 19:23:50 2004 UTC (19 years, 10 months ago) by thorpej
Branch: MAIN
Changes since 1.18: +2 -1 lines
Diff to previous 1.18 (colored)

Add 802.3x flow control support.  From HITOSHI Osada.

Revision 1.18 / (download) - annotate - [select for diffs], Sat Mar 20 01:58:51 2004 UTC (19 years, 11 months ago) by jonathan
Branch: MAIN
CVS Tags: netbsd-2-base, netbsd-2-1-RELEASE, netbsd-2-1-RC6, netbsd-2-1-RC5, netbsd-2-1-RC4, netbsd-2-1-RC3, netbsd-2-1-RC2, netbsd-2-1-RC1, netbsd-2-1, netbsd-2-0-base, netbsd-2-0-RELEASE, netbsd-2-0-RC5, netbsd-2-0-RC4, netbsd-2-0-RC3, netbsd-2-0-RC2, netbsd-2-0-RC1, netbsd-2-0-3-RELEASE, netbsd-2-0-2-RELEASE, netbsd-2-0-1-RELEASE, netbsd-2-0
Branch point for: netbsd-2
Changes since 1.17: +10 -1 lines
Diff to previous 1.17 (colored)

Possibloe fix for some bge chip revisions taking a long time to reset
(e.g., polling for a half-second or more at splnet(), blocking most
interrupts, durin an ifconfig down/ifconfig up).

Appears to help for a 5704C rev A3, which is the only chip I've
ever seen that had even a mild version of the reported problem.

Revision 1.17 / (download) - annotate - [select for diffs], Thu Jan 22 02:29:46 2004 UTC (20 years, 1 month ago) by jonathan
Branch: MAIN
Changes since 1.16: +2 -1 lines
Diff to previous 1.16 (colored)

Add hooks to dynamically change the bge Rx interrupt thresholds.  I
found empiricaly that (at least on bcm5700s) the Rx coalesce and bd
counts cannot be updated on-the-fly; attempting to do so (even at
splhigh()) causes weird behaviour.

Instead, add a softc flag to record that the desired softc values for
Rx-interrupt thresholds have changed; check that boolean in the interrupt
routine. If set, apply the new values there and clear the flag.

Revision 1.16 / (download) - annotate - [select for diffs], Thu Jan 22 02:13:48 2004 UTC (20 years, 1 month ago) by jonathan
Branch: MAIN
Changes since 1.15: +10 -2 lines
Diff to previous 1.15 (colored)

Add some extra register definitions from FreeBSD and Linux:
BGE_MISC_TIMER register definition, and more bit definitions for
HCC-mode. (I would credit individuals, but the attributions are buried
deep in my own tree.)

Revision 1.15 / (download) - annotate - [select for diffs], Mon Dec 8 17:09:39 2003 UTC (20 years, 2 months ago) by pooka
Branch: MAIN
Changes since 1.14: +1 -0 lines
Diff to previous 1.14 (colored)

Match 5703 ASIC A3.

Also, when printing the ASIC ID, print the revision in hex in all
cases to avoid extra confusion if only the "superclass" of the ASIC
is recognized.

Revision 1.14 / (download) - annotate - [select for diffs], Sun Nov 2 10:31:06 2003 UTC (20 years, 4 months ago) by wiz
Branch: MAIN
Changes since 1.13: +2 -2 lines
Diff to previous 1.13 (colored)

boundary, not boundry. Inspired by Tom Cosgrove.

Revision 1.13 / (download) - annotate - [select for diffs], Thu Oct 23 17:41:59 2003 UTC (20 years, 4 months ago) by fvdl
Branch: MAIN
Changes since 1.12: +41 -26 lines
Diff to previous 1.12 (colored)

* match more cards (from FreeBSD)
* don't set the NOCRC bit in the mode control register, it can cause
  problems on some chips (from the broadcom errata via FreeBSD)
* implement a fallback quirktable that is searched only using the
  major asic revision, so that the driver has a shot at supporting
  newer versions properly without modification
* rename asicrev -> chipid, like the FreeBSD driver

Revision 1.12 / (download) - annotate - [select for diffs], Wed Aug 27 23:13:51 2003 UTC (20 years, 6 months ago) by fvdl
Branch: MAIN
Changes since 1.11: +2 -1 lines
Diff to previous 1.11 (colored)

Support the BCM5704C rev 3. From Nicolas Joly, PR 22620

Revision 1.11 / (download) - annotate - [select for diffs], Thu Jul 17 11:44:27 2003 UTC (20 years, 7 months ago) by hannken
Branch: MAIN
Changes since 1.10: +45 -1 lines
Diff to previous 1.10 (colored)

Add support for the BCM5705:
- Only BCM5705M asic rev A1 was tested.

Thanks to Bill Paul (wpaul@freebsd.org) for help and support.

Approved by: Frank van der Linden <fvdl@netbsd.org>

Revision 1.6.2.4 / (download) - annotate - [select for diffs], Mon Jun 16 13:24:00 2003 UTC (20 years, 8 months ago) by grant
Branch: netbsd-1-6
CVS Tags: netbsd-1-6-PATCH002-RELEASE, netbsd-1-6-PATCH002-RC4, netbsd-1-6-PATCH002-RC3, netbsd-1-6-PATCH002-RC2, netbsd-1-6-PATCH002-RC1, netbsd-1-6-PATCH002
Changes since 1.6.2.3: +3 -1 lines
Diff to previous 1.6.2.3 (colored) to branchpoint 1.6 (colored) next main 1.7 (colored)

Pull up revision 1.8 (requested by tron in ticket #1250):

Commit the FreeBSD alternative of a private patch to check NIC internal
ram for using TBI, versus MII/GMII.

FreeBSD commit log and versions:
   Obtain the media type from the shared memory and only use the eeprom
   as a fallback.

   if_bge.c:	rev 1.30
   if_bgereg.h:	rev 1.13

Thanks to Paul Saab @mu.org.

Revision 1.6.2.3 / (download) - annotate - [select for diffs], Mon Jun 16 13:20:48 2003 UTC (20 years, 8 months ago) by grant
Branch: netbsd-1-6
Changes since 1.6.2.2: +8 -18 lines
Diff to previous 1.6.2.2 (colored) to branchpoint 1.6 (colored)

Pull up revision 1.7 (requested by tron in ticket #1249):

FreeBSD fix for problems reported (to FreeBSD) with 16-bit accesses
to 32-bit device registers. Add (untested) NetBSD fix for big-endian hosts.
From FreeBSD versions:
	if_bge.c:	1.26 and 1.27
	if_bgereg.h: 1.12

FreeBSD (MFC) comment:

MFC:  Avoid 16-bit accesses to device memory.  Use volatile where
appropriate in referencing device memory.  Parenthesize BGE_HOSTADDR
define properly.

Revision 1.10 / (download) - annotate - [select for diffs], Sun Jun 1 20:26:14 2003 UTC (20 years, 9 months ago) by fvdl
Branch: MAIN
Branch point for: ktrace-lwp
Changes since 1.9: +3 -1 lines
Diff to previous 1.9 (colored)

Add newer 5704 asic revs, and add them to the table, with the
BGE_QUIRK_ONLY_PHY_1 quirk in their entry.

Revision 1.9 / (download) - annotate - [select for diffs], Fri Mar 7 18:57:53 2003 UTC (21 years ago) by jonathan
Branch: MAIN
Changes since 1.8: +2 -1 lines
Diff to previous 1.8 (colored)

Commit workaround for hardware bug: 5701 chips running in PCI-X mode
require that the DMA receive buffers be aligned. The driver was
deliberately mis-aligning by 2 bytes, to force the layer-2/3
headers to 32-bit alignment.

Workaround: if chip is a 5701, and is in PCI-X mode, leave the DMA
buffers aligned.  If the host CPU requires alignment, copy the buffer
after reception to force aligment.

Tested  on an i386 in  PCI-X bus, with __NO_STRICT_ALIGNMENT forced off.

Patch and comments reworked  to minimize drift from
	FreeBSD if_bge.c rev 1.14.

Revision 1.8 / (download) - annotate - [select for diffs], Thu Mar 6 20:53:06 2003 UTC (21 years ago) by jonathan
Branch: MAIN
Changes since 1.7: +3 -1 lines
Diff to previous 1.7 (colored)

Commit the FreeBSD alternative of a private patch to check NIC internal
ram for using TBI, versus MII/GMII.

FreeBSD commit log and versions:
   Obtain the media type from the shared memory and only use the eeprom
   as a fallback.

   if_bge.c:	rev 1.30
   if_bgereg.h:	rev 1.13

Thanks to Paul Saab @mu.org.

Revision 1.7 / (download) - annotate - [select for diffs], Thu Mar 6 20:12:54 2003 UTC (21 years ago) by jonathan
Branch: MAIN
Changes since 1.6: +8 -18 lines
Diff to previous 1.6 (colored)

FreeBSD fix for problems reported (to FreeBSD) with 16-bit accesses
to 32-bit device registers. Add (untested) NetBSD fix for big-endian hosts.
From FreeBSD versions:
	if_bge.c:	1.26 and 1.27
	if_bgereg.h: 1.12

FreeBSD (MFC) comment:

MFC:  Avoid 16-bit accesses to device memory.  Use volatile where
appropriate in referencing device memory.  Parenthesize BGE_HOSTADDR
define properly.

Revision 1.6.2.2 / (download) - annotate - [select for diffs], Tue Jan 28 06:20:12 2003 UTC (21 years, 1 month ago) by jmc
Branch: netbsd-1-6
CVS Tags: netbsd-1-6-PATCH001-RELEASE, netbsd-1-6-PATCH001-RC3, netbsd-1-6-PATCH001-RC2, netbsd-1-6-PATCH001-RC1, netbsd-1-6-PATCH001
Changes since 1.6.2.1: +2272 -0 lines
Diff to previous 1.6.2.1 (colored) to branchpoint 1.6 (colored)

Pullup from -current (lots of revisions 1.1-1.6
(requested by fvdl in ticket #1126)
 Pullup support for bge device. (Broadcom Gigabit Ethernet)

Revision 1.4.4.3 / (download) - annotate - [select for diffs], Fri Jan 17 16:31:40 2003 UTC (21 years, 1 month ago) by thorpej
Branch: nathanw_sa
CVS Tags: nathanw_sa_end
Changes since 1.4.4.2: +8 -1 lines
Diff to previous 1.4.4.2 (colored) to branchpoint 1.4 (colored) next main 1.5 (colored)

Sync with HEAD.

Revision 1.6.2.1, Fri Jan 17 11:17:08 2003 UTC (21 years, 1 month ago) by jmc
Branch: netbsd-1-6
Changes since 1.6: +0 -2272 lines
FILE REMOVED

file if_bgereg.h was added on branch netbsd-1-6 on 2003-01-28 06:20:12 +0000

Revision 1.6 / (download) - annotate - [select for diffs], Fri Jan 17 11:17:08 2003 UTC (21 years, 1 month ago) by fvdl
Branch: MAIN
CVS Tags: nathanw_sa_before_merge, nathanw_sa_base
Branch point for: netbsd-1-6
Changes since 1.5: +2 -1 lines
Diff to previous 1.5 (colored)

Add local_ctl_reg field to softc.

Revision 1.5 / (download) - annotate - [select for diffs], Fri Jan 17 00:21:37 2003 UTC (21 years, 1 month ago) by jonathan
Branch: MAIN
Changes since 1.4: +7 -1 lines
Diff to previous 1.4 (colored)

Add register definitions for 5704 internal ASIC revision.
Add cpp definitions for the DMA control register fields needed for
5703/5704 configuration on PCI-X.
Add softc copy of internal"local control" register clobbered by reset.

Revision 1.4.6.2 / (download) - annotate - [select for diffs], Fri Sep 6 08:45:14 2002 UTC (21 years, 6 months ago) by jdolecek
Branch: kqueue
Changes since 1.4.6.1: +2265 -0 lines
Diff to previous 1.4.6.1 (colored) to branchpoint 1.4 (colored) next main 1.5 (colored)

sync kqueue branch with HEAD

Revision 1.4.4.2 / (download) - annotate - [select for diffs], Thu Aug 1 02:45:14 2002 UTC (21 years, 7 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.4.4.1: +2265 -0 lines
Diff to previous 1.4.4.1 (colored) to branchpoint 1.4 (colored)

Catch up to -current.

Revision 1.4.2.2 / (download) - annotate - [select for diffs], Mon Jul 15 10:35:36 2002 UTC (21 years, 7 months ago) by gehenna
Branch: gehenna-devsw
Changes since 1.4.2.1: +2265 -0 lines
Diff to previous 1.4.2.1 (colored) to branchpoint 1.4 (colored) next main 1.5 (colored)

catch up with -current.

Revision 1.4.6.1, Sat Jul 13 22:31:18 2002 UTC (21 years, 7 months ago) by jdolecek
Branch: kqueue
Changes since 1.4: +0 -2265 lines
FILE REMOVED

file if_bgereg.h was added on branch kqueue on 2002-09-06 08:45:14 +0000

Revision 1.4.4.1, Sat Jul 13 22:31:18 2002 UTC (21 years, 7 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.4: +0 -2265 lines
FILE REMOVED

file if_bgereg.h was added on branch nathanw_sa on 2002-08-01 02:45:14 +0000

Revision 1.4.2.1, Sat Jul 13 22:31:18 2002 UTC (21 years, 7 months ago) by gehenna
Branch: gehenna-devsw
Changes since 1.4: +0 -2265 lines
FILE REMOVED

file if_bgereg.h was added on branch gehenna-devsw on 2002-07-15 10:35:36 +0000

Revision 1.4 / (download) - annotate - [select for diffs], Sat Jul 13 22:31:18 2002 UTC (21 years, 7 months ago) by thorpej
Branch: MAIN
CVS Tags: kqueue-beforemerge, kqueue-base, kqueue-aftermerge, gmcgarry_ucred_base, gmcgarry_ucred, gmcgarry_ctxsw_base, gmcgarry_ctxsw, gehenna-devsw-base, fvdl_fs64_base
Branch point for: nathanw_sa, kqueue, gehenna-devsw
Changes since 1.3: +1 -7 lines
Diff to previous 1.3 (colored)

Give BCM5700 Ax and Bx revs the BGE_QUIRK_LINK_STATE_BROKEN quirk,
and test for that, rather than checking revision where the quirk is
handled.

Revision 1.3 / (download) - annotate - [select for diffs], Sat Jul 13 22:21:20 2002 UTC (21 years, 7 months ago) by thorpej
Branch: MAIN
Changes since 1.2: +5 -1 lines
Diff to previous 1.2 (colored)

Add a lookup table with ASIC revision, name, and any quirks.  Print
ASIC revision at attach time.  Add BCM5703 revisions.

Revision 1.2 / (download) - annotate - [select for diffs], Mon Jun 24 01:21:39 2002 UTC (21 years, 8 months ago) by fvdl
Branch: MAIN
Changes since 1.1: +7 -2 lines
Diff to previous 1.1 (colored)

Add a few revision definitions.

Revision 1.1 / (download) - annotate - [select for diffs], Sat Jun 22 14:42:07 2002 UTC (21 years, 8 months ago) by fvdl
Branch: MAIN

Driver for Broadcom 570x / Altima AC 1000 gigabit ethernet cards.
Written by Bill Paul for FreeBSD. This port started out with the
port done to OpenBSD by nate@openbsd.org, but ended up looking much
more like the port of the ti driver done by drochner@netbsd.org
(they are similar in structure).

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>