History log of /src/sys/dev/mii/ukphy.c |
Revision | | Date | Author | Comments |
1.55 |
| 29-Jun-2021 |
pgoyette | Rework the xxxVERBOSE option to share the common module-hook-based verbose mechanism with MIIVERBOSE. This reduces some duplicated code and allows us to once again permit auto-unload of MIIVERBOSE.
Change details: * Update dev/devlist2h.awk to accomodate miidevs, including generation of MII_STR_oui_model definitions and use of oui and model rather than vendor and product. This also changes the compressed data in the xxxdevs_data.h files to uint32_t (since mii oui's are up to 6 hex digits long) * Update a couple of phy drivers to use new calls to get verbose data * Regen all of the xxxdevs{,_data}.h files (separate commit, coming very soon) * Update mii/mii_verbose.[ch] and mii/mii_physubr.c to use the various DEV_VERBOSE_xxx macros * Update the pci, usb, and hdaudio code as needed, to #include the xxxdevs.h files (in order to get the proper printf format strings) * Since dev/dev_verbose.c now uses non-literal printf format strings, (to deal with the vendor/product vs oui/model issue), we need to make sure it gets compiled with -Wno-error=format-nonliteral, even in userland's libpci and librumpdev! * Bump kernel version for the change in module interfaces
Welcome to 9.99.86!
XXX It might be useful in the future to extend the MII_STR_oui_model XXX definitions to PCI as well (and perhaps USB and HDAUDIO). This XXX would allow for a single centralized location for the products' XXX descriptions, rather than being dispersed among individual XXX drivers' xxx_match tables.
|
1.54 |
| 28-Mar-2020 |
thorpej | branches: 1.54.8; Don't set DVF_DETACH_SHUTDOWN. The MII layer wants to manage the lifecycle of the PHY devices, and if a NIC driver chooses not to detach its PHYs at shutdown, that's the driver's business.
PR kern/55121.
|
1.53 |
| 15-Mar-2020 |
thorpej | Define and implement a locking protocol for the ifmedia / mii layers: - MP-safe drivers provide a mutex to ifmedia that is used to serialize access to media-related structures / hardware regsiters. Converted drivers use the new ifmedia_init_with_lock() function for this. The new name is provided to ease the transition. - Un-converted drivers continue to call ifmedia_init(), which will supply a compatibility lock to be used instead. Several media-related entry points must be aware of this compatibility lock, and are able to acquire it recursively a limited number of times, if needed. This is a SPIN mutex with priority IPL_NET. - This same lock is used to serialize access to PHY registers and other MII-related data structures.
The PHY drivers are modified to acquire and release the lock, as needed, and assert the lock is held as a diagnostic aid.
The "usbnet" framework has had an overhaul of its internal locking protocols to fit in with the media / mii changes, and the drivers adapted.
USB wifi drivers have been changed to provide their own adaptive mutex to the ifmedia later via a new ieee80211_media_init_with_lock() function. This is required because the USB drivers need an adaptive mutex.
Besised "usbnet", a few other drivers are converted: vmx, wm, ixgbe / ixv.
mcx also now calls ifmedia_init_with_lock() because it needs to also use an adaptive mutex. The mcx driver still needs to be fully converted to NET_MPSAFE.
|
1.52 |
| 27-Nov-2019 |
msaitoh | - Simplify sc->mii_anegticks setting. Same as FreeBSD.
Don't set the default value not in the attach function. Instead, set the default value (MII_ANEGTICKS) first in the beginning of the mii_phy_add_media(). The function already has the code to change the value to MII_ANEGTICKS_GIGE if it's gigabit capable.
- Remove extra pmf_device_register() call. It's done in mii_phy_add_media().
|
1.51 |
| 25-Mar-2019 |
msaitoh | KNF. No functional change.
|
1.50 |
| 22-Jan-2019 |
msaitoh | Change MII PHY read/write API from:
int (*mii_readreg_t)(device_t, int, int); void (*mii_writereg_t)(device_t, int, int, int); to:
int (*mii_readreg_t)(device_t, int, int, uint16_t *); int (*mii_writereg_t)(device_t, int, int, uint16_t);
Now we can test if a read/write operation failed or not by the return value.
In 802.3 spec says that the PHY shall not respond to read/write transaction to the unimplemented register(22.2.4.3). Detecting timeout can be used to check whether a register is implemented or not (if the register conforms to the spec). ukphy(4) can be used this for MII_MMDACR and MII_MMDAADR.
Note that I noticed that the following code do infinite loop in the read/wirte function. If it accesses unimplemented PHY register, it will hang. It should be fixed:
arm/at91/at91emac.c arm/ep93xx/epe.c arm/omap/omapl1x_emac.c mips/ralink/ralink_eth.c arch/powerpc/booke/dev/pq3etsec.c(read) dev/cadence/if_cemac.c <- hkenken dev/ic/lan9118.c
Tested with the following device:
axe+ukphy axe+rgephy axen+rgephy (tested by Andrius V) wm+atphy wm+ukphy wm+igphy wm+ihphy wm+makphy sk+makphy sk+brgphy sk+gentbi msk+makphy sip+icsphy sip+ukphy re+rgephy bge+brgphy bnx+brgphy gsip+gphyter rtk+rlphy fxp+inphy (tested by Andrius V) tlp+acphy ex+exphy epic+qsphy vge+ciphy (tested by Andrius V) vr+ukphy (tested by Andrius V) vte+ukphy (tested by Andrius V)
Not tested (MAC): arm:at91emac arm:cemac arm:epe arm:geminigmac arm:enet arm:cpsw arm:emac(omac) arm:emac(sunxi) arm:npe evbppc:temac macppc:bm macppc:gm mips:aumac mips:ae mips:cnmac mips:reth mips:sbmac playstation2:smap powerpc:tsec powerpc:emac(ibm4xx) sgimips:mec sparc:be sf ne(ax88190, dl10019) awge ep gem hme smsh mtd sm age alc ale bce cas et jme lii nfe pcn ste stge tl xi aue mue smsc udav url
Not tested (PHY): amhphy bmtphy dmphy etphy glxtphy ikphy iophy lxtphy nsphyter pnaphy rdcphy sqphy tlphy tqphy urlphy
|
1.49 |
| 07-Jul-2016 |
msaitoh | branches: 1.49.16; 1.49.18; KNF. Remove extra spaces. No functional change.
|
1.48 |
| 30-Oct-2015 |
msaitoh | igphy(4),ukphy(4): Set mii_mpd_* entries. wm(4): check PHY type correctly.
|
1.47 |
| 24-Aug-2015 |
pooka | add some _KERNEL_OPT as the finishing touch
|
1.46 |
| 11-Jun-2013 |
msaitoh | branches: 1.46.8; 1.46.10; Remove wrong autonegotiation check. The mii_phy_tick() checks about autonegotiation correctly. This change fixes the problem that the autonegotiation timer doesn't work correctly with "ifcongig xxx media 1000BaseT"
|
1.45 |
| 09-Jun-2013 |
msaitoh | Tabify. No functional change.
|
1.44 |
| 09-Jun-2013 |
msaitoh | Don't "return" but "break" in MII_TICK when the interface isn't doing autonegotiaton or the link is up to update the status.
|
1.43 |
| 06-Jun-2010 |
pgoyette | branches: 1.43.8; 1.43.14; 1.43.18; Update miiverbose module to use module_autoload() rather than module_load(). Load the module right before each attempt to use its features, and let the module subsystem handle unloading.
|
1.42 |
| 02-Jun-2010 |
martin | Move all miiverbose/module related functions from ukphy.c to mii_physubr.c - ukphy is not included in all kernels, but mii_physubr.c should be in every kernel that has a phy.
|
1.41 |
| 30-May-2010 |
pgoyette | Extract MIIVERBOSE into a kernel module. The module can be builtin by defining 'options MIIVERBOSE' in the kernel config file (no change from current behavior), or it can be loaded at boot time on those architectures that support the boot loader's "load" command.
|
1.40 |
| 11-Mar-2010 |
mrg | branches: 1.40.2; various aprint_* fixes.
|
1.39 |
| 24-Feb-2010 |
dyoung | A pointer typedef entails trading too much flexibility to declare const and non-const types, and the kernel uses both const and non-const PMF qualifiers and device suspensors, so change the pmf_qual_t and device_suspensor_t typedefs from "pointers to const" to non-pointer, non-const types.
|
1.38 |
| 19-Oct-2009 |
bouyer | branches: 1.38.2; Remove closes 3 & 4 from my licence. Lots of thanks to Soren Jacobsen for the booring work !
|
1.37 |
| 23-Aug-2009 |
jmcneill | Save a line of dmesg by printing the OUI/model after the locators.
|
1.36 |
| 17-Nov-2008 |
dyoung | Reduce code duplication: most PHY drivers call mii_phy_add_media() when they attach to the device tree, so call pmf_device_register(9) once there instead of once in more than twenty drivers.
|
1.35 |
| 04-May-2008 |
xtraeme | branches: 1.35.6; 1.35.8; device_t/softc split for all mii(4) devices, and other related cosmetic changes.
|
1.34 |
| 28-Apr-2008 |
martin | Remove clause 3 and 4 from TNF licenses
|
1.33 |
| 08-Apr-2008 |
cegger | branches: 1.33.2; 1.33.4; use aprint_*_dev and device_xname
|
1.32 |
| 29-Dec-2007 |
dyoung | branches: 1.32.6; Remove the device_is_active() check from each individual PHY's service routine. Add a wrapper for PHY_SERVICE(), called phy_service(), and check device_is_active() there. Make the mii_*() routines call the PHY service routines thorugh phy_service() instead of PHY_SERVICE().
In mii_phy_resume(), restore a PHY's state after resetting it by sending a MII_MEDIACHG command. This change makes bnx(4) resume more reliably and more quickly; it should help other NICs to resume, too, if they attach PHYs through MII.
|
1.31 |
| 09-Dec-2007 |
jmcneill | branches: 1.31.2; Merge jmcneill-pm branch.
|
1.30 |
| 16-Nov-2006 |
christos | branches: 1.30.22; 1.30.24; 1.30.30; 1.30.34; 1.30.36; - don't hardcode 5, 10 define and use MII_ANEGTICKS{,_GIGE} - instead of != limit, use <= limit (conservative)
|
1.29 |
| 16-Nov-2006 |
christos | __unused removal on arguments; approved by core.
|
1.28 |
| 12-Oct-2006 |
christos | - sprinkle __unused on function decls. - fix a couple of unused bugs - no more -Wno-unused for i386
|
1.27 |
| 29-Mar-2006 |
thorpej | branches: 1.27.8; 1.27.10; Use device_private().
|
1.26 |
| 20-Feb-2006 |
thorpej | branches: 1.26.2; 1.26.4; 1.26.6; Use device_is_active() rather than testing dv_flags for DVF_ACTIVE directly.
|
1.25 |
| 11-Dec-2005 |
christos | branches: 1.25.2; 1.25.4; 1.25.6; merge ktrace-lwp.
|
1.24 |
| 23-Aug-2004 |
thorpej | branches: 1.24.12; Make use of static.
|
1.23 |
| 29-Apr-2003 |
thorpej | branches: 1.23.2; Use aprint*().
|
1.22 |
| 02-Oct-2002 |
thorpej | Add trailing ; to CFATTACH_DECL.
|
1.21 |
| 30-Sep-2002 |
thorpej | Use CFATTACH_DECL().
|
1.20 |
| 27-Sep-2002 |
thorpej | Declare all cfattach structures const.
|
1.19 |
| 03-Jul-2002 |
simonb | Don't include <malloc.h> - no memory management style functions are use in any of the MII drivers.
|
1.18 |
| 25-Mar-2002 |
thorpej | branches: 1.18.2; Get flags passed down to PHY drivers correctly. This was done on an adhoc basis in a couple of PHY drivers, this fixes it more generally.
Per a discussion w/ Cliff Neighbors <cliff@allegronetworks.com>.
|
1.17 |
| 13-Nov-2001 |
lukem | add RCSID
|
1.16 |
| 25-Aug-2001 |
thorpej | ANSI'ify.
|
1.15 |
| 31-May-2001 |
thorpej | branches: 1.15.2; Make the number of ticks between auto-negotiation tries PHY-specific, and default every PHY to 5 seconds (what we used before). If we find Gig-E media on a PHY, bump it to 10 seconds, since it can take 5 seconds just to negotiate a Gig-E link.
|
1.14 |
| 30-Apr-2001 |
thorpej | Add code to recognize and set media on GMII (Gigabit MII) PHYs.
802.3 doens't specify ANAR or ANLPAR bits for GMII. Need to use PHY-specific registers for this, for now, which means we need specific drivers for the Gigabit-capable PHYs (I think the most common is the BCM5400).
|
1.13 |
| 04-Jul-2000 |
thorpej | branches: 1.13.2; Restructure the PHY entry points to use a structure of entry points instead of discrete function pointers, and extend this to include a "reset" entry point. Make sure any PHY-specific reset routine is always used, and provide one for the LXT-970 which disables MII interrupts (as is done for a few other PHYs we have drivers for).
|
1.12 |
| 11-Jun-2000 |
sommerfeld | branches: 1.12.2; defopt MIIVERBOSE
|
1.11 |
| 08-May-2000 |
augustss | branches: 1.11.2; Allow a verbose description to be printed with the option MIIVERBOSE.
|
1.10 |
| 06-Mar-2000 |
thorpej | Factor out the tick handling code into a common function, and send rt_ifmsg's when the link speed or link status changes.
|
1.9 |
| 02-Feb-2000 |
thorpej | Let mii_phy_setmedia() handle the IFM_AUTO case, too.
|
1.8 |
| 02-Feb-2000 |
thorpej | Make PHY drivers provide a pointer to their status routine, and add a generic mii_phy_status() that calls back into the PHY. It doesn't do anything interesting yet, but it will soon.
|
1.7 |
| 02-Feb-2000 |
thorpej | Don't dry to diving MIIF_NOISOLATE in the PHY drivers. Instead, pass flags down from the parent to child vi mii_attach().
|
1.6 |
| 02-Feb-2000 |
thorpej | Bring some order to the chaos which was the MII code function naming "conventions".
|
1.5 |
| 27-Jan-2000 |
thorpej | Add detachment support to the MII layer.
|
1.4 |
| 12-Nov-1999 |
thorpej | Add mii_down(), which is used by MAC drivers to inform PHYs that the interface is now down. PHYs use this to cancel pending asynchronous operations.
|
1.3 |
| 03-Nov-1999 |
thorpej | Clean up the code that adds media a little, and make media selection table-driven in preparation for some other changes to be made.
|
1.2 |
| 23-Apr-1999 |
thorpej | branches: 1.2.2; 1.2.4; 1.2.8; Implement asynchronous autonegotiation when driven by the MII tick (one-second clock). Prevents .5s delays every 5 seconds when the interface is up but there is no link. Fixes PR 7361.
|
1.1 |
| 05-Nov-1998 |
thorpej | branches: 1.1.6; Add a driver for "generic unknown PHYs", meant as a catch-all for PHYs we don't have specific drivers for. While this will not give optimum operation, it will allow network interface drivers to at least function while drivers for their specific PHYs are written.
|
1.1.6.1 |
| 23-Apr-1999 |
perry | branches: 1.1.6.1.2; pullup 1.1->1.2 (thorpej): Fix PR7361
|
1.1.6.1.2.1 |
| 21-Jun-1999 |
thorpej | Sync w/ -current.
|
1.2.8.1 |
| 27-Dec-1999 |
wrstuden | Pull up to last week's -current.
|
1.2.4.1 |
| 15-Nov-1999 |
fvdl | Sync with -current
|
1.2.2.1 |
| 20-Nov-2000 |
bouyer | Update thorpej_scsipi to -current as of a month ago A i386 GENERIC kernel compiles without the siop, ahc and bha drivers (will be updated later). i386 IDE/ATAPI and ncr work, as well as sparc/esp_sbus. alpha should work as well (untested yet). siop, ahc and bha will be updated once I've updated the branch to current -current, as well as machine-dependant code.
|
1.11.2.1 |
| 22-Jun-2000 |
minoura | Sync w/ netbsd-1-5-base.
|
1.12.2.1 |
| 04-Jul-2000 |
thorpej | Update from trunk: Restructure the PHY entry points to use a structure of entry points instead of discrete function pointers, and extend this to include a "reset" entry point. Make sure any PHY-specific reset routine is always used, and provide one for the LXT-970 which disables MII interrupts (as is done for a few other PHYs we have drivers for).
|
1.13.2.6 |
| 18-Oct-2002 |
nathanw | Catch up to -current.
|
1.13.2.5 |
| 01-Aug-2002 |
nathanw | Catch up to -current.
|
1.13.2.4 |
| 01-Apr-2002 |
nathanw | Catch up to -current. (CVS: It's not just a program. It's an adventure!)
|
1.13.2.3 |
| 14-Nov-2001 |
nathanw | Catch up to -current.
|
1.13.2.2 |
| 21-Sep-2001 |
nathanw | Catch up to -current.
|
1.13.2.1 |
| 21-Jun-2001 |
nathanw | Catch up to -current.
|
1.15.2.5 |
| 10-Oct-2002 |
jdolecek | sync kqueue with -current; this includes merge of gehenna-devsw branch, merge of i386 MP branch, and part of autoconf rototil work
|
1.15.2.4 |
| 06-Sep-2002 |
jdolecek | sync kqueue branch with HEAD
|
1.15.2.3 |
| 23-Jun-2002 |
jdolecek | catch up with -current on kqueue branch
|
1.15.2.2 |
| 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
1.15.2.1 |
| 13-Sep-2001 |
thorpej | Update the kqueue branch to HEAD.
|
1.18.2.1 |
| 15-Jul-2002 |
gehenna | catch up with -current.
|
1.23.2.3 |
| 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.23.2.2 |
| 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.23.2.1 |
| 25-Aug-2004 |
skrll | Sync with HEAD.
|
1.24.12.3 |
| 21-Jan-2008 |
yamt | sync with head
|
1.24.12.2 |
| 30-Dec-2006 |
yamt | sync with head.
|
1.24.12.1 |
| 21-Jun-2006 |
yamt | sync with head.
|
1.25.6.1 |
| 22-Apr-2006 |
simonb | Sync with head.
|
1.25.4.1 |
| 09-Sep-2006 |
rpaulo | sync with head
|
1.25.2.1 |
| 01-Mar-2006 |
yamt | sync with head.
|
1.26.6.1 |
| 31-Mar-2006 |
tron | Merge 2006-03-31 NetBSD-current into the "peter-altq" branch.
|
1.26.4.1 |
| 19-Apr-2006 |
elad | sync with head.
|
1.26.2.1 |
| 01-Apr-2006 |
yamt | sync with head.
|
1.27.10.2 |
| 10-Dec-2006 |
yamt | sync with head.
|
1.27.10.1 |
| 22-Oct-2006 |
yamt | sync with head
|
1.27.8.1 |
| 18-Nov-2006 |
ad | Sync with head.
|
1.30.36.1 |
| 11-Dec-2007 |
yamt | sync with head.
|
1.30.34.1 |
| 26-Dec-2007 |
ad | Sync with head.
|
1.30.30.1 |
| 18-Feb-2008 |
mjf | Sync with HEAD.
|
1.30.24.1 |
| 09-Jan-2008 |
matt | sync with HEAD
|
1.30.22.2 |
| 08-Dec-2007 |
jmcneill | Rename pnp(9) -> pmf(9), as requested by many.
|
1.30.22.1 |
| 27-Nov-2007 |
joerg | Register MII PHY drives with the PM framework. Nothing to do on suspend, just reset the PHY on resume.
|
1.31.2.1 |
| 02-Jan-2008 |
bouyer | Sync with HEAD
|
1.32.6.2 |
| 17-Jan-2009 |
mjf | Sync with HEAD.
|
1.32.6.1 |
| 02-Jun-2008 |
mjf | Sync with HEAD.
|
1.33.4.5 |
| 11-Aug-2010 |
yamt | sync with head.
|
1.33.4.4 |
| 11-Mar-2010 |
yamt | sync with head
|
1.33.4.3 |
| 16-Sep-2009 |
yamt | sync with head
|
1.33.4.2 |
| 04-May-2009 |
yamt | sync with head.
|
1.33.4.1 |
| 16-May-2008 |
yamt | sync with head.
|
1.33.2.1 |
| 18-May-2008 |
yamt | sync with head.
|
1.35.8.1 |
| 19-Jan-2009 |
skrll | Sync with HEAD.
|
1.35.6.1 |
| 13-Dec-2008 |
haad | Update haad-dm branch to haad-dm-base2.
|
1.38.2.2 |
| 17-Aug-2010 |
uebayasi | Sync with HEAD.
|
1.38.2.1 |
| 30-Apr-2010 |
uebayasi | Sync with HEAD.
|
1.40.2.1 |
| 03-Jul-2010 |
rmind | sync with head
|
1.43.18.2 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|
1.43.18.1 |
| 23-Jun-2013 |
tls | resync from head
|
1.43.14.1 |
| 06-May-2016 |
snj | Pull up following revision(s) (requested by msaitoh in ticket #1366): sys/dev/pci/if_wm.c: 1.281, 1.318, 1.320, 1.324-1.332, 1.334, 1.336, 1.343-1.344, 1.347-1.348, 1.350, 1.376-1.382, 1.386-1.387, 1.389 via patch sys/dev/pci/if_wmreg.h: 1.68-1.70, 1.73-1.77, 1.79-1.80, 1.82, 1.86-1.88 via patch sys/dev/pci/if_wmvar.h: 1.22-1.23, 1.25-1.30 via patch sys/dev/mii/igphy.c: 1.25 sys/dev/mii/ukphy.c: 1.48 Sync wm(4) as of if_wm.c rev 1.389 except SERDES, MSI/MSI-X, multiqueue and NET_MPSAFE: - Set ICH9 and ICH10's PBA size to 14K if the RX buffer size is more than 4096. Almost the same as other OSes. - For 82576 and newer devices, the PBA register is deleted. Don't write PBA for those chips. Also change the calculation of RX packet buffer size in new way. - Print NVM image version and option ROM version. - Add workaround for I210 Errata 25 and I211 Errata 10 (PLL bug). This workaround is required if the NVM image version < 3.25. - Fix a bug that wm_detach() didn't unmap the FHASH's area. Now "drvctl -d wm0" -> "drvctl -r pci0" works on ICH* and PCH*. - Add workaround for 82574 Errata 25 and 82583 Errata 12 "Dropped RX packets" and for 82573 (unknown). Set GCR_L1_ACT_WITHOUT_L0S_RX bit. The NVM Image version 2.1.4 and newer have this workaround. - Check PHY type correctly. This change is required to use igphy(4) device correctly. - Disable LPLU (Low Power Link Up) on D0 state on 82574, 82583 and ICH* too. - Call wm_get_hw_control() correctly. This change fixes a bug that some AMT based systems doesn't linkup at 1000BaseT. The problem was observed on HP Compaq dc7700. A lot of fixes have been done for wm(4) and igphy(4), so now PR#44893 should be fixed. - Call wm_get_wakeup(sc) before checking WM_F_HAS_AMT. It's required to check the existence of AMT correctly. - Fix a problem that wm_gate_hw_phy_config_ich8lan() isn't called in wm_reset() on PCH2. - Clear WMREG_WUC in wm_reset() if the chip >= 82544. This might fix the behavior on suspend/resume. - Fix logic of wm_check_reset_block() on ICH* and PCH*. This change might fix a problem that PHY's read/write functions can't get semaphore. - On ICH8, call wm_gig_downshift_workaround_ich8lan() when link changed down. - Drop PHY_CTRL_GBE_DIS explicitly in wm_lplu_d0_disable() in case BIOS sets this bit. - Fix two bugs in wm_kmrn_lock_loss_workaround_ich8lan(). Now the function checks the status correctly but it causes linkdown up to 10 times, so it's disabled for the time being. - PR/50527: David Binderman: Fix impossible code. Odd offsets need special treatment. - Fix RAL table's size of PCH2 and PCH_LPT. - PCH_LPT (and newer device) is required to check FWSM_WLOCK_MAC bit to determine the range of the RAL. - Use sc->sc_itr instead of hard-coded number. - Rename wm_tbi_check_link() to wm_tbi_tick() because this function acts as mii_tick(). - ACK Accelerate Disable in the RFCTL register is not bit 13 but 12. No binary change because this definition has not used yet. - Add ACK data Disable bit's definition (not used yet). - PHY_CTRL_GBE_DIS is not bit 4 but bit 6. This change has no any effect by default because WM_WOL is not defined yet and m_kmrn_lock_loss_workaround_ich8lan() is broken. - Fix wm_check_mng_mode_ich8lan(). This function is used only when WM_WOL is defined and it's disabled by default. - Rename wm_check_reset_block() to wm_phy_resetisblocked() and make it returns bool. No functional change. - Reorder function definitions and macro definitions. No functional change. - Fix comment. Add comment. Update comment. - KNF.
|
1.43.8.1 |
| 22-May-2014 |
yamt | 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")
|
1.46.10.3 |
| 09-Jul-2016 |
skrll | Sync with HEAD
|
1.46.10.2 |
| 27-Dec-2015 |
skrll | Sync with HEAD (as of 26th Dec)
|
1.46.10.1 |
| 22-Sep-2015 |
skrll | Sync with HEAD
|
1.46.8.1 |
| 26-Feb-2016 |
snj | Pull up following revision(s) (requested by msaitoh in ticket #1102): sys/dev/mii/igphy.c: 1.25 sys/dev/mii/ukphy.c: 1.48 sys/dev/pci/if_wm.c: revisions 1.308, 1.318, 1.320, 1.324-1.332, 1.334, 1.336, 1.343-1.344, 1.347-1.348, 1.350, 1.376-1.382, 1.386-1.389 via patch sys/dev/pci/if_wmreg.h: revisions 1.68-1.70, 1.73-1.77, 1.79-1.80, 1.82, 1.86-1.88 via patch sys/dev/pci/if_wmvar.h: revisions 1.22-1.23, 1.25-1.30 via patch Sync wm(4) as of if_wm.c rev 1.389 except MSI/MSI-X, multiqueue and NET_MPSAFE: - Add C2000 KX and 2.5G support. - Set ICH9 and ICH10's PBA size to 14K if the RX buffer size is more than 4096. Almost the same as other OSes. - For 82576 and newer devices, the PBA register is deleted. Don't write PBA for those chips. Also change the calculation of RX packet buffer size in new way. - Fix a lot of bugs to make 82575 and newer SERDES based systems work. - Print NVM image version and option ROM version. - Add workaround for I210 Errata 25 and I211 Errata 10 (PLL bug). This workaround is required if the NVM image version < 3.25. - Fix a bug that wm_detach() didn't unmap the FHASH's area. Now "drvct -d wm0" -> "drvctl -r pci0" works on ICH* and PCH*. - Add workaround for 82574 Errata 25 and 82583 Errata 12 "Dropped RX packets" and for 82573 (unknown). Set GCR_L1_ACT_WITHOUT_L0S_RX bit. The NVM Image version 2.1.4 and newer have this workaround. - Check PHY type correctly. This change is required to use igphy(4) device correctly. - Disable LPLU (Low Power Link Up) on D0 state on 82574, 82583 and ICH* too. - Call wm_get_hw_control() correctly. This change fixes a bug that some AMT based systems doesn't linkup at 1000BaseT. The problem was observed on HP Compaq dc7700. A lot of fixes have been done for wm(4) and igphy(4), so now PR#44893 should be fixed. - Call wm_get_wakeup(sc) before checking WM_F_HAS_AMT. It's required to check the existence of AMT correctly. - Fix a problem that wm_gate_hw_phy_config_ich8lan() isn't called in wm_reset() on PCH2. - Clear WMREG_WUC in wm_reset() if the chip >= 82544. This might fix the behavior on suspend/resume. - Fix logic of wm_check_reset_block() on ICH* and PCH*. This change might fix a problem that PHY's read/write functions can't get semaphore. - On ICH8, call wm_gig_downshift_workaround_ich8lan() when link changed down. - Drop PHY_CTRL_GBE_DIS explicitly in wm_lplu_d0_disable() in case BIOS sets this bit. - Fix two bugs in wm_kmrn_lock_loss_workaround_ich8lan(). Now the function checks the status correctly but it causes linkdown up to 10 times, so it's disabled for the time being. - PR/50527: David Binderman: Fix impossible code. Odd offsets need special treatment. - Fix RAL table's size of PCH2 and PCH_LPT. - PCH_LPT (and newer device) is required to check FWSM_WLOCK_MAC bit to determine the range of the RAL. - Use sc->sc_itr instead of hard-coded number. - Rename wm_tbi_check_link() to wm_tbi_tick() because this function acts as mii_tick(). - ACK Accelerate Disable in the RFCTL register is not bit 13 but 12. No binary change because this definition has not used yet. - Add ACK data Disable bit's definition (not used yet). - PHY_CTRL_GBE_DIS is not bit 4 but bit 6. This change has no any effect by default because WM_WOL is not defined yet and m_kmrn_lock_loss_workaround_ich8lan() is broken. - Fix wm_check_mng_mode_ich8lan(). This function is used only when WM_WOL is defined and it's disabled by default. - Rename wm_check_reset_block() to wm_phy_resetisblocked() and make it returns bool. No functional change. - Reorder function definitions and macro definitions. No functional change. - Fix comment. Add comment. Update comment. - KNF.
|
1.49.18.2 |
| 08-Apr-2020 |
martin | Merge changes from current as of 20200406
|
1.49.18.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|
1.49.16.1 |
| 26-Jan-2019 |
pgoyette | Sync with HEAD
|
1.54.8.1 |
| 01-Aug-2021 |
thorpej | Sync with HEAD.
|