History log of /src/sys/dev/pci/if_bnxreg.h |
Revision | | Date | Author | Comments |
1.30 |
| 09-Feb-2024 |
andvar | fix spelling mistakes, mainly in comments and log messages.
|
1.29 |
| 05-Feb-2024 |
andvar | triple "r" typos, mainly s/interrrupt/interrupt/ in comments and one definition.
|
1.28 |
| 12-Dec-2021 |
andvar | fix various typos, mainly in comments.
|
1.27 |
| 13-Feb-2021 |
jakllsch | Curb aprint_*() abuse in bnx(4)
|
1.26 |
| 24-May-2019 |
msaitoh | branches: 1.26.10; Whilespace fix. No functional change.
|
1.25 |
| 05-Apr-2019 |
msaitoh | Add BNX_PCICFG_DEVICE_CONTROL.
|
1.24 |
| 05-Apr-2019 |
msaitoh | - Allow time for the management firmware to enter the running state. - Enable/Disable management frames (NC-SI) to flow to the MCP if MFW exists. - Print the boot code version, management firmware version and some flags. - Gbps -> GT/s for PCIe speed. - Use aprint_*() in bnx_print_adapter_info(). - Use braces for some macors' argument. - Remove unused macros. - KNF.
|
1.23 |
| 04-Apr-2019 |
msaitoh | No functional change. This change reduces diff against DragonFly: - Fix BNX_PCI_GRC_WINDOW_ADDR_VALUE's name. Note that this macro is not used. - Whitespace change. - Sort some lines.
|
1.22 |
| 29-Mar-2019 |
msaitoh | - Use m_defrag() when bus_dmamap_load_mbuf() returned with EFBIG. - Style change to reduce diff against {Free,Open}BSD. - Make it compilable with BNX_DEBUG. - Use __nothing for null macro.
|
1.21 |
| 28-Mar-2019 |
msaitoh | No functional change: - Fix DB_AND_RANDOMFALSE(). It has no real bug because the macro is not used from anywhere. - Wse const. - Whitespace change.
|
1.20 |
| 05-Mar-2019 |
msaitoh | Centralize ETHER_ALIGN into net/if_ether.h. Note that this commit also changes if_upgt.c's ETHER_ALIGN from 0 to 2.
|
1.19 |
| 03-Jun-2018 |
maxv | branches: 1.19.2; Constify the microcode variables used by BNX. This moves 38 pages of kernel memory from .data to .rodata.
|
1.18 |
| 01-Jul-2014 |
msaitoh | branches: 1.18.26; Print some information (ASIC revision, PCI status, etc). From FreeBSD.
|
1.17 |
| 01-Jul-2014 |
msaitoh | No functional change. - s/u_int/uint/ - Modify comment a bit (sync with OpenBSD)
|
1.16 |
| 24-Jun-2014 |
msaitoh | No functional change: - Tabify. - Remove trailing white spaces. - Fix typo in comment.
|
1.15 |
| 17-Jun-2014 |
msaitoh | - Fix detection of BGEPHYF_FIBER_{MII|TBI} - Add BCM5708S support in brgphy(4). The auto negotiation may have some bugs. - Add 2500SX support (not tested). - Fix bit definition of BRGPHY_MRBE_MSG_PG5_NP_T2 from FreeBSD.
|
1.14 |
| 02-May-2011 |
jym | branches: 1.14.10; 1.14.14; 1.14.28; Fix BCM5709 PHY detection for ethernet PHYs (the SerDes case being already handled): - export bge(4) and bnx(4) CHIP ID and PHY flags to brgphy(4). Move to "unsigned int" rather than "int", and reuse the same softc members for chipid and phyflags (behavior controlled by the sc_isbge/isbnx boolean). - apply bug fix for revisions A and B, so that autonegotiation can complete (from OpenBSD).
Bug reported by Rivo Nurges via private mail, patch tested and confirmed working by him (with thanks!)
|
1.13 |
| 11-Dec-2010 |
martin | branches: 1.13.2; Sanitize names a bit, still could use more namespace cleanup
|
1.12 |
| 11-Dec-2010 |
martin | Namespace police: don't use very broad names like CTX_MASK (which accidently collide with sparc* specific MD macros), mechanically prefix with BNX_.
|
1.11 |
| 09-Dec-2010 |
jym | Similar to bge(4), split if_bnxreg.h in two parts: - if_bnxreg.h: general register values, flags... for bnx(4), that can be included in other drivers - if_bnxvar.h: PCI or device specific code (device state data, debug macros etc.), which should remain private to bnx(4)
No comments, no objections on current-users@.
See discussion: http://mail-index.netbsd.org/current-users/2010/12/01/msg014926.html
|
1.10 |
| 19-Jan-2010 |
pooka | branches: 1.10.4; Redefine bpf linkage through an always present op vector, i.e. #if NBPFILTER is no longer required in the client. This change doesn't yet add support for loading bpf as a module, since drivers can register before bpf is attached. However, callers of bpf can now be modularized.
Dynamically loadable bpf could probably be done fairly easily with coordination from the stub driver and the real driver by registering attachments in the stub before the real driver is loaded and doing a handoff. ... and I'm not going to ponder the depths of unload here.
Tested with i386/MONOLITHIC, modified MONOLITHIC without bpf and rump.
|
1.9 |
| 18-Nov-2009 |
bouyer | Sync with OpenBSD: if_bnx.c,v 1.85. Major changes: Add support for the Broadcom BCM5709 and BCM5716 chips. This upgrade the B06 firmware, and add the B09 firmware required by the BCM5709. Remplace TX dmamap array with a dynamically-grown list.
Tested with: bnx0 at pci4 dev 0 function 0: Broadcom NetXtreme II BCM5708 1000Base-T and bnx0 at pci0 dev 0 function 0: Broadcom NetXtreme II BCM5709 1000Base-SX
|
1.8 |
| 14-Apr-2009 |
dyoung | Delete two unused data members, the powerhook and the shutdownhook handles.
|
1.7 |
| 24-Jun-2008 |
gmcgarry | branches: 1.7.4; 1.7.6; 1.7.10; 1.7.14; Replace gcc variadic macros with c99 variadic macros.
|
1.6 |
| 06-Feb-2008 |
joerg | branches: 1.6.6; 1.6.10; 1.6.12; 1.6.14; Don't use misaligned PCI config access. Reported by Christoph Egger.
|
1.5 |
| 31-Dec-2007 |
dyoung | Don't buffer packets while the link is down, but drop them on the floor like most other ethernet drivers do.
bnx(4) has "vanilla" MII media-handling, so use ether_mediachange and ether_mediastatus.
|
1.4 |
| 30-Dec-2007 |
dyoung | For consistency with other softc members, s/ethercom/bnx_ec/.
|
1.3 |
| 26-Dec-2007 |
dyoung | Add device suspend/resume/detach. (Tested with drvctl -S bnx0, drvctl -Q bnx0, drvctl -d bnx0.)
Separate device_t storage from softc storage and use CFATTACH_DECL_NEW().
|
1.2 |
| 09-Apr-2007 |
bouyer | branches: 1.2.10; 1.2.16; 1.2.18; 1.2.22; Protect bnx_tick() with splnet.
Bring in fixes and improvements from OpenBSD: revision 1.25 - Simplify the arguments to bnx_tx_encap. - Don't copy the bd_chain head pointers into temporary objects, they are available globally.
From scottl@FreeBSD
revision 1.26 Overhaul the transmit path: - Eliminate the bnx_dmamap_arg structure. - Refactor the loop that fills the buffer descriptor so that it can be done with a single set of logic in a single loop instead of two sets of logic. - Eliminate the need to cache and pass descriptor indexes between the start loop and the encap function. - Change the start loop to always check the ifnet sendq for more work.
From scottl@FreeBSD
revision 1.27 make the exit label naming scheme match the current function names, removes a FreeBSD-ism from the original driver.
revision 1.28 -> 1.30 - Ensure that at least 16 TX descriptors are kept unused in the ring. - Use more complete error handling for TX load problems.
From scottl@FreeBSD
revision 1.31 replace a few more instances of hand rolled code with the LIST_FOREACH macro.
revision 1.33 In bnx_start, check the used_tx_bd count rather than the descriptors mbuf pointer to see if the transmit ring is full. The mbuf pointer is set only in the last descriptor of a multi-descriptor packet. By relying on the mbuf pointers of the earlier descriptors, the driver would sometimes overwrite a descriptor belonging to a packet that wasn't completed yet. Also, tx_chain_prod wasn't updated inside the loop, causing the wrong descriptor to be checked after the first iteration. The upshot of all this was the loss of some transmitted packets at medium to high packet rates.
In bnx_tx_encap, remove a couple of old statements that shuffled around the tx_mbuf_map pointers. These now correspond 1-to-1 with the transmit descriptors, and they are not supposed to be changed.
Correct a couple of inaccurate comments.
From jdp@FreeBSD
revision 1.43 Allow the bnx(4) driver to make use of all of the available hardware multicast hash slots. The bnx(4) hardware supports 8 slots instead of 4 like the bge(4) hardware.
From Mike Karels via FreeBSD
Tested by Brad, biorn@ and Johan M:son Lindman
|
1.1 |
| 17-Dec-2006 |
bouyer | branches: 1.1.2; 1.1.4; 1.1.6; 1.1.8; 1.1.10; 1.1.12; 1.1.16; 1.1.18; Add bnx(4), a driver for Broadcom NetXtreme II 10/100/1000 Ethernet device. Ported from OpenBSD by cube@, with some bus_dma fixes by me. Tested on i386 and amd64.
|
1.1.18.1 |
| 11-Jul-2007 |
mjf | Sync with head.
|
1.1.16.1 |
| 10-Apr-2007 |
ad | Sync with head.
|
1.1.12.1 |
| 15-Apr-2007 |
yamt | sync with head.
|
1.1.10.2 |
| 12-Jan-2007 |
ad | Sync with head.
|
1.1.10.1 |
| 17-Dec-2006 |
ad | file if_bnxreg.h was added on branch newlock2 on 2007-01-12 00:57:41 +0000
|
1.1.8.5 |
| 11-Feb-2008 |
yamt | sync with head.
|
1.1.8.4 |
| 21-Jan-2008 |
yamt | sync with head
|
1.1.8.3 |
| 03-Sep-2007 |
yamt | sync with head.
|
1.1.8.2 |
| 30-Dec-2006 |
yamt | sync with head.
|
1.1.8.1 |
| 17-Dec-2006 |
yamt | file if_bnxreg.h was added on branch yamt-lazymbuf on 2006-12-30 20:48:44 +0000
|
1.1.6.3 |
| 25-Apr-2007 |
ghen | Pull up following revision(s) (requested by bouyer in ticket #1762): sys/dev/pci/if_bnx.c: revision 1.4 sys/dev/pci/if_bnx.c: revision 1.5 sys/dev/pci/if_bnx.c: revision 1.6 sys/dev/pci/if_bnxreg.h: revision 1.2 Protect bnx_tick() with splnet. Bring in fixes and improvements from OpenBSD: revision 1.25 - Simplify the arguments to bnx_tx_encap. - Don't copy the bd_chain head pointers into temporary objects, they are available globally. From scottl@FreeBSD revision 1.26 Overhaul the transmit path: - Eliminate the bnx_dmamap_arg structure. - Refactor the loop that fills the buffer descriptor so that it can be done with a single set of logic in a single loop instead of two sets of logic. - Eliminate the need to cache and pass descriptor indexes between the start loop and the encap function. - Change the start loop to always check the ifnet sendq for more work. From scottl@FreeBSD revision 1.27 make the exit label naming scheme match the current function names, removes a FreeBSD-ism from the original driver. revision 1.28 -> 1.30 - Ensure that at least 16 TX descriptors are kept unused in the ring. - Use more complete error handling for TX load problems. From scottl@FreeBSD revision 1.31 replace a few more instances of hand rolled code with the LIST_FOREACH macro. revision 1.33 In bnx_start, check the used_tx_bd count rather than the descriptors mbuf pointer to see if the transmit ring is full. The mbuf pointer is set only in the last descriptor of a multi-descriptor packet. By relying on the mbuf pointers of the earlier descriptors, the driver would sometimes overwrite a descriptor belonging to a packet that wasn't completed yet. Also, tx_chain_prod wasn't updated inside the loop, causing the wrong descriptor to be checked after the first iteration. The upshot of all this was the loss of some transmitted packets at medium to high packet rates. In bnx_tx_encap, remove a couple of old statements that shuffled around the tx_mbuf_map pointers. These now correspond 1-to-1 with the transmit descriptors, and they are not supposed to be changed. Correct a couple of inaccurate comments. From jdp@FreeBSD revision 1.43 Allow the bnx(4) driver to make use of all of the available hardware multicast hash slots. The bnx(4) hardware supports 8 slots instead of 4 like the bge(4) hardware. From Mike Karels via FreeBSD Tested by Brad, biorn@ and Johan M:son Lindman RX buffers are malloced memory of 9216 bytes. This can require from 1 to 4 DMA memory segments, depending on how the buffer is in memory. When receiving a packet, we allocate a new one to remplace the one we've used. It can need more segments than the one it remplace, leading to corrution of the RX descriptors, and a panic in bus_dmamap_sync() (DIAGNOSTIC kernels) or possibly memory corruption. Fix: - bnx_get_buf() allocates as many buffer as possible, checking the number of free RX descriptors. Because one receive buffer is not guaranteed to be remplaced on receive, call bnx_get_buf() from bnx_tick() too. This also improve error handling from bnx_get_buf(). - use MCLGET() instead of MEXTMALLOC() if we're running with the standard ethernet MTU. This gives us more receive buffers and waste less memory. Fix build on 32bit ports; should fix GENERIC_DIAGNOSTIC build problem reported by Hisashi T Fujinaka on current-users.
|
1.1.6.2 |
| 23-Dec-2006 |
ghen | Pull up following revision(s) (requested by bouyer in ticket #1608): sys/arch/i386/conf/INSTALL: revision 1.299 via patch sys/arch/i386/conf/XEN2_DOM0: revision 1.20 via patch sys/arch/i386/conf/GENERIC: revision 1.803 via patch sys/dev/pci/files.pci: revision 1.275 via patch sys/arch/i386/conf/GENERIC_LAPTOP: revision 1.218 via patch sys/arch/amd64/conf/GENERIC: revision 1.123 via patch sys/dev/pci/if_bnx.c: revision 1.1 via patch share/man/man4/bnx.4: revision 1.1-1.2 via patch distrib/sets/lists/man/mi: revision 1.959 via patch sys/arch/amd64/conf/INSTALL: revision 1.62 via patch sys/dev/microcode/bnx/bnxfw.h: revision 1.1-1.2 via patch sys/dev/pci/if_bnxreg.h: revision 1.1 via patch share/man/man4/Makefile: revision 1.417 via patch sys/arch/i386/conf/INSTALL_LAPTOP: revision 1.112 via patch Add bnx(4), a driver for Broadcom NetXtreme II 10/100/1000 Ethernet device. Ported from OpenBSD by cube@, with some bus_dma fixes by me. Tested on i386 and amd64. Add a NetBSD RCS tag. Nx -> Ox; remove trailing whitespace.
|
1.1.6.1 |
| 17-Dec-2006 |
ghen | file if_bnxreg.h was added on branch netbsd-3 on 2006-12-23 14:43:47 +0000
|
1.1.4.3 |
| 20-Apr-2007 |
pavel | Pull up following revision(s) (requested by bouyer in ticket #566): sys/dev/pci/if_bnx.c: revision 1.4 sys/dev/pci/if_bnx.c: revision 1.5 sys/dev/pci/if_bnx.c: revision 1.6 sys/dev/pci/if_bnxreg.h: revision 1.2 Protect bnx_tick() with splnet. Bring in fixes and improvements from OpenBSD: revision 1.25 - Simplify the arguments to bnx_tx_encap. - Don't copy the bd_chain head pointers into temporary objects, they are available globally. From scottl@FreeBSD revision 1.26 Overhaul the transmit path: - Eliminate the bnx_dmamap_arg structure. - Refactor the loop that fills the buffer descriptor so that it can be done with a single set of logic in a single loop instead of two sets of logic. - Eliminate the need to cache and pass descriptor indexes between the start loop and the encap function. - Change the start loop to always check the ifnet sendq for more work. From scottl@FreeBSD revision 1.27 make the exit label naming scheme match the current function names, removes a FreeBSD-ism from the original driver. revision 1.28 -> 1.30 - Ensure that at least 16 TX descriptors are kept unused in the ring. - Use more complete error handling for TX load problems. From scottl@FreeBSD revision 1.31 replace a few more instances of hand rolled code with the LIST_FOREACH macro. revision 1.33 In bnx_start, check the used_tx_bd count rather than the descriptors mbuf pointer to see if the transmit ring is full. The mbuf pointer is set only in the last descriptor of a multi-descriptor packet. By relying on the mbuf pointers of the earlier descriptors, the driver would sometimes overwrite a descriptor belonging to a packet that wasn't completed yet. Also, tx_chain_prod wasn't updated inside the loop, causing the wrong descriptor to be checked after the first iteration. The upshot of all this was the loss of some transmitted packets at medium to high packet rates. In bnx_tx_encap, remove a couple of old statements that shuffled around the tx_mbuf_map pointers. These now correspond 1-to-1 with the transmit descriptors, and they are not supposed to be changed. Correct a couple of inaccurate comments. From jdp@FreeBSD revision 1.43 Allow the bnx(4) driver to make use of all of the available hardware multicast hash slots. The bnx(4) hardware supports 8 slots instead of 4 like the bge(4) hardware. From Mike Karels via FreeBSD Tested by Brad, biorn@ and Johan M:son Lindman
RX buffers are malloced memory of 9216 bytes. This can require from 1 to 4 DMA memory segments, depending on how the buffer is in memory. When receiving a packet, we allocate a new one to remplace the one we've used. It can need more segments than the one it remplace, leading to corrution of the RX descriptors, and a panic in bus_dmamap_sync() (DIAGNOSTIC kernels) or possibly memory corruption. Fix: - bnx_get_buf() allocates as many buffer as possible, checking the number of free RX descriptors. Because one receive buffer is not guaranteed to be remplaced on receive, call bnx_get_buf() from bnx_tick() too. This also improve error handling from bnx_get_buf(). - use MCLGET() instead of MEXTMALLOC() if we're running with the standard ethernet MTU. This gives us more receive buffers and waste less memory.
Fix build on 32bit ports; should fix GENERIC_DIAGNOSTIC build problem reported by Hisashi T Fujinaka on current-users.
|
1.1.4.2 |
| 21-Dec-2006 |
tron | Pull up following revision(s) (requested by bouyer in ticket #287): sys/arch/i386/conf/INSTALL: revision 1.299 sys/arch/i386/conf/XEN2_DOM0: revision 1.20 sys/arch/i386/conf/GENERIC: revision 1.803 sys/dev/pci/files.pci: revision 1.275 sys/arch/i386/conf/GENERIC_LAPTOP: revision 1.218 sys/arch/amd64/conf/GENERIC: revision 1.123 sys/dev/pci/if_bnx.c: revision 1.1 share/man/man4/bnx.4: revision 1.1 distrib/sets/lists/man/mi: revision 1.959 sys/arch/amd64/conf/INSTALL: revision 1.62 sys/dev/microcode/bnx/bnxfw.h: revision 1.1 sys/arch/i386/conf/ALL: revision 1.76 sys/dev/pci/if_bnxreg.h: revision 1.1 share/man/man4/Makefile: revision 1.417 sys/arch/i386/conf/INSTALL_LAPTOP: revision 1.112 Add bnx(4), a driver for Broadcom NetXtreme II 10/100/1000 Ethernet device. Ported from OpenBSD by cube@, with some bus_dma fixes by me. Tested on i386 and amd64.
|
1.1.4.1 |
| 17-Dec-2006 |
tron | file if_bnxreg.h was added on branch netbsd-4 on 2006-12-21 13:44:01 +0000
|
1.1.2.2 |
| 18-Dec-2006 |
yamt | sync with head.
|
1.1.2.1 |
| 17-Dec-2006 |
yamt | file if_bnxreg.h was added on branch yamt-splraiseipl on 2006-12-18 11:42:13 +0000
|
1.2.22.1 |
| 02-Jan-2008 |
bouyer | Sync with HEAD
|
1.2.18.1 |
| 26-Dec-2007 |
ad | Sync with head.
|
1.2.16.1 |
| 18-Feb-2008 |
mjf | Sync with HEAD.
|
1.2.10.2 |
| 23-Mar-2008 |
matt | sync with HEAD
|
1.2.10.1 |
| 09-Jan-2008 |
matt | sync with HEAD
|
1.6.14.1 |
| 27-Jun-2008 |
simonb | Sync with head.
|
1.6.12.1 |
| 18-Sep-2008 |
wrstuden | Sync with wrstuden-revivesa-base-2.
|
1.6.10.2 |
| 11-Mar-2010 |
yamt | sync with head
|
1.6.10.1 |
| 04-May-2009 |
yamt | sync with head.
|
1.6.6.1 |
| 29-Jun-2008 |
mjf | Sync with HEAD.
|
1.7.14.1 |
| 21-Apr-2010 |
matt | sync to netbsd-5
|
1.7.10.1 |
| 13-May-2009 |
jym | Sync with HEAD.
Commit is split, to avoid a "too many arguments" protocol error.
|
1.7.6.2 |
| 09-Nov-2015 |
sborrill | 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.
|
1.7.6.1 |
| 27-Jan-2010 |
sborrill | Pull up the following revisions(s) (requested by bouyer in ticket #1268): sys/dev/mii/miidevs: revision 1.90 sys/dev/pci/pcidevs: revision 1.1001 sys/dev/mii/brgphy.c: revision 1.51 sys/dev/microcode/bnx/bnxfw.h: revision 1.3 sys/dev/pci/if_bnx.c: revision 1.29 sys/dev/pci/if_bnxreg.h: revision 1.9 sys/dev/pci/if_bnx.c: revision 1.30
Add support for the Broadcom BCM5709 and BCM5716 chips. Upgrade the B06 firmware and add the B09 firmware required by the BCM5709. Replace TX dmamap array with a dynamically-grown list. Support associated BCM5709CAX and BCM5709C PHYs.
|
1.7.4.1 |
| 28-Apr-2009 |
skrll | Sync with HEAD.
|
1.10.4.2 |
| 31-May-2011 |
rmind | sync with head
|
1.10.4.1 |
| 05-Mar-2011 |
rmind | sync with head
|
1.13.2.1 |
| 06-Jun-2011 |
jruoho | Sync with HEAD.
|
1.14.28.1 |
| 10-Aug-2014 |
tls | Rebase.
|
1.14.14.1 |
| 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.14.10.1 |
| 07-Dec-2014 |
martin | 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.
|
1.18.26.1 |
| 25-Jun-2018 |
pgoyette | Sync with HEAD
|
1.19.2.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|
1.26.10.1 |
| 03-Apr-2021 |
thorpej | Sync with HEAD.
|