| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Follow r261352 by updating all drivers which are children of simplebus
to check the status property in their probe routines.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
from bce(4), bxe(4), mge(4) and ti(4) drivers.
|
|
|
|
| |
malloc(9) flags in sys/dev.
|
|
|
|
|
|
|
| |
r229271:
Import files needed to build ARMADA XP kernel.
Submitted by: Grzegorz Bernacki
|
|
|
|
| |
Sponsored by: Plat'Home, Co.,Ltd.
|
| |
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
| |
- 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
|
|
|
|
|
| |
Submitted by: Marc Balmer <marc@msys.ch>
MFC after: 1 week
|
|
|
|
|
|
|
| |
Fix crashes in the detach path.
Submitted by: Kristof Provost <kristof@sigsegv.be>
MFC after: 1 month
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
| |
return type should be int, not void
Reviewed by: imp, current@
Approved by: jhb (mentor)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
handle Z0 revision (early silicon) explicitly due to its quirks.
Obtained from: Marvell, Semihalf
|
|
|
|
|
|
|
| |
which is more flexible for future revisions, and lets eliminate some #defines
and compile conditionals.
Obtained from: Semihalf
|
|
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
|