summaryrefslogtreecommitdiffstats
path: root/sys/dev/mge
Commit message (Collapse)AuthorAgeFilesLines
* MFC r261410ian2014-05-151-0/+3
| | | | | Follow r261352 by updating all drivers which are children of simplebus to check the status property in their probe routines.
* MFC r258779,r258780,r258787,r258822:eadler2014-02-041-3/+3
| | | | | | | | | | | | | Fix undefined behavior: (1 << 31) is not defined as 1 is an int and this shifts into the sign bit. Instead use (1U << 31) which gets the expected result. Similar to the (1 << 31) case it is not defined to do (2 << 30). This fix is not ideal as it assumes a 32 bit int, but does fix the issue for most cases. A similar change was made in OpenBSD.
* Remove unused and incomplete support for delayed fragment checksumsandre2013-08-191-3/+1
| | | | from bce(4), bxe(4), mge(4) and ti(4) drivers.
* Mechanically substitute flags from historic mbuf allocator withglebius2012-12-041-2/+2
| | | | malloc(9) flags in sys/dev.
* Merging of projects/armv6, part 6gonzo2012-08-152-25/+85
| | | | | | | r229271: Import files needed to build ARMADA XP kernel. Submitted by: Grzegorz Bernacki
* Add support for Marvell 88F6282.hrs2012-07-281-1/+3
| | | | Sponsored by: Plat'Home, Co.,Ltd.
* More conversions of drivers to use the PCI parent DMA tag.scottl2012-03-121-2/+2
|
* Respect phy-handle property in Ethernet nodes of the device tree.raj2012-03-042-13/+10
| | | | | | | | This lets specify whereabouts of the parent PHY for a given MAC node (and get rid of ugly kludges in mge(4) and tsec(4)). Obtained from: Semihalf MFC after: 1 week
* Convert the PHY drivers to honor the mii_flags passed down and convertmarius2010-10-152-13/+6
| | | | | | | | | | | | | | | | | | | | | | | the NIC drivers as well as the PHY drivers to take advantage of the mii_attach() introduced in r213878 to get rid of certain hacks. For the most part these were: - Artificially limiting miibus_{read,write}reg methods to certain PHY addresses; we now let mii_attach() only probe the PHY at the desired address(es) instead. - PHY drivers setting MIIF_* flags based on the NIC driver they hang off from, partly even based on grabbing and using the softc of the parent; we now pass these flags down from the NIC to the PHY drivers via mii_attach(). This got us rid of all such hacks except those of brgphy() in combination with bce(4) and bge(4), which is way beyond what can be expressed with simple flags. While at it, I took the opportunity to change the NIC drivers to pass up the error returned by mii_attach() (previously by mii_phy_probe()) and unify the error message used in this case where and as appropriate as mii_attach() actually can fail for a number of reasons, not just because of no PHY(s) being present at the expected address(es). Reviewed by: jhb, yongari
* Convert Marvell ARM platforms to FDT convention.raj2010-06-132-17/+47
| | | | | | | | | | | | | | | | | | | | | | | | | The following systems are involved: - DB-88F5182 - DB-88F5281 - DB-88F6281 - DB-78100 - SheevaPlug This overhaul covers the following major changes: - All integrated peripherals drivers for Marvell ARM SoC, which are currently in the FreeBSD source tree are reworked and adjusted so they derive config data out of the device tree blob (instead of hard coded / tabelarized values). - Since the common FDT infrastrucutre (fdtbus, simplebus) is used we say good by to obio / mbus drivers and numerous hard-coded config data. Note that world needs to be built WITH_FDT for the affected platforms. Reviewed by: imp Sponsored by: The FreeBSD Foundation.
* Assorted fixes for mge(4).raj2010-02-171-11/+3
| | | | | | | | | | | - Use proper map for the busdma sync on mge descriptor. - Remove unnecesary busdma sync. - Eliminate redundant locking in mge_reinit_rx() (just assert). - Kill unused variable. Submitted by: Grzegorz Bernacki Obtained from: Semihalf MFC after: 1 week
* Remove extraneous semicolons, no functional changes.mbr2010-01-071-1/+1
| | | | | Submitted by: Marc Balmer <marc@msys.ch> MFC after: 1 week
* Fix autonegotiation: tell the MAC where to find the PHY.philip2009-12-291-3/+9
| | | | | | | Fix crashes in the detach path. Submitted by: Kristof Provost <kristof@sigsegv.be> MFC after: 1 month
* Introduce MII_ADDR_BASE option on ARM, which allows to override the defaultraj2009-08-251-4/+7
| | | | | | | | | | | | | | per platform requirements. Notes: - Only used by mge(4) at the moment. - This is very simplified approach and should be replaced by some long-term solution for managing the board/platform configuration (among others the MAC-PHY binding info). Submitted by: Michal Hajduk Obtained from: Semihalf
* Use if_maddr_rlock()/if_maddr_runlock() rather than IF_ADDR_LOCK()/rwatson2009-06-261-2/+2
| | | | | | | | | | | | | IF_ADDR_UNLOCK() across network device drivers when accessing the per-interface multicast address list, if_multiaddrs. This will allow us to change the locking strategy without affecting our driver programming interface or binary interface. For two wireless drivers, remove unnecessary locking, since they don't actually access the multicast address list. Approved by: re (kib) MFC after: 6 weeks
* strict kobj signatures: fix assortment of miibus_writereg implsavg2009-06-111-3/+4
| | | | | | | return type should be int, not void Reviewed by: imp, current@ Approved by: jhb (mentor)
* When user_frac in the polling subsystem is low it is going to busy theattilio2009-05-301-6/+10
| | | | | | | | | | | | | | | | | | | | | CPU for too long period than necessary. Additively, interfaces are kept polled (in the tick) even if no more packets are available. In order to avoid such situations a new generic mechanism can be implemented in proactive way, keeping track of the time spent on any packet and fragmenting the time for any tick, stopping the processing as soon as possible. In order to implement such mechanism, the polling handler needs to change, returning the number of packets processed. While the intended logic is not part of this patch, the polling KPI is broken by this commit, adding an int return value and the new flag IFCAP_POLLING_NOCOUNT (which will signal that the return value is meaningless for the installed handler and checking should be skipped). Bump __FreeBSD_version in order to signal such situation. Reviewed by: emaste Sponsored by: Sandvine Incorporated
* mge(4): fix two bugs, which were leading to crash/hang under very heavyraj2009-04-161-3/+11
| | | | | | | | | | | network load. 1. Leave the RX interrupt routine if there is no mbuf available. 2. Properly initialize and track tx_desc_used_count counter so as not to leak mbuf while traversing used descriptors. Obtained from: Semihalf
* Adjust Marvell Discovery (MV78xxx) support to recognize newest chip revisions,raj2009-04-161-1/+2
| | | | | | handle Z0 revision (early silicon) explicitly due to its quirks. Obtained from: Marvell, Semihalf
* Handle mge(4) chip revision differences at run-time rather then compile time,raj2009-01-082-52/+90
| | | | | | | which is more flexible for future revisions, and lets eliminate some #defines and compile conditionals. Obtained from: Semihalf
* Marvell Gigabit Ethernet controller driver.raj2008-10-142-0/+2123
This supports 1Gbps Ethernet engine found on ARM-based SOCs (Orion, Kirkwood, Discovery), as well as on system controllers for PowerPC processors (MV64430, MV6446x). The following advanced features are supported: - multicast - VLAN tagging - IP/TCP/UDP checksum calculation offloading - polling - interrupt coalescing Obtained from: Marvell, Semihalf
OpenPOWER on IntegriCloud