<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/dev/fxp, branch release/10.1.0</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=release%2F10.1.0</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=release%2F10.1.0'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2014-04-14T04:51:59Z</updated>
<entry>
<title>MFC r263957:</title>
<updated>2014-04-14T04:51:59Z</updated>
<author>
<name>Pyun YongHyeon</name>
<email>yongari@FreeBSD.org</email>
</author>
<published>2014-04-14T04:51:59Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=a4908ea27c1f209f3665f6c072ab50bd5aa67503'/>
<id>urn:sha1:a4908ea27c1f209f3665f6c072ab50bd5aa67503</id>
<content type='text'>
  Increase the number of TX DMA segments from 32 to 35.  It turned
  out 32 is not enough to support a full sized TSO packet.
  While I'm here fix a long standing bug introduced in r169632 in
  bce(4) where it didn't include L2 header length of TSO packet in
  the maximum DMA segment size calculation.
</content>
</entry>
<entry>
<title>Update PCI drivers to no longer look at the MEMIO-enabled bit in the PCI</title>
<updated>2013-08-12T23:30:01Z</updated>
<author>
<name>Scott Long</name>
<email>scottl@FreeBSD.org</email>
</author>
<published>2013-08-12T23:30:01Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=c68534f1d5bab4ad466384c4fb9bb2956811e8b9'/>
<id>urn:sha1:c68534f1d5bab4ad466384c4fb9bb2956811e8b9</id>
<content type='text'>
command register.  The lazy BAR allocation code in FreeBSD sometimes
disables this bit when it detects a range conflict, and will re-enable
it on demand when a driver allocates the BAR.  Thus, the bit is no longer
a reliable indication of capability, and should not be checked.  This
results in the elimination of a lot of code from drivers, and also gives
the opportunity to simplify a lot of drivers to use a helper API to set
the busmaster enable bit.

This changes fixes some recent reports of disk controllers and their
associated drives/enclosures disappearing during boot.

Submitted by:	jhb
Reviewed by:	jfv, marius, achadd, achim
MFC after:	1 day
</content>
</entry>
<entry>
<title>Avoid unnecessary controller reinitialization by checking driver</title>
<updated>2013-06-10T07:31:49Z</updated>
<author>
<name>Pyun YongHyeon</name>
<email>yongari@FreeBSD.org</email>
</author>
<published>2013-06-10T07:31:49Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=5506afef173146aea78b11afe5e46f3e2f4e5951'/>
<id>urn:sha1:5506afef173146aea78b11afe5e46f3e2f4e5951</id>
<content type='text'>
running state.  fxp(4) requires controller reinitialization for the
following cases.
 o RX lockup condition on i82557
 o promiscuous mode change
 o multicast filter change
 o WOL configuration
 o TSO/VLAN hardware tagging/checksum offloading configuration
 o MAC reprogramming after speed/duplex/flow-control resolution
 o Any events that result in MAC reprogramming(link UP/DOWN,
   remote link partner's restart of auto-negotiation etc)
 o Microcode loading/unloading
Apart from above cases which come from hardware limitation, upper
stack also blindly reinitializes controller whenever an IP address
is assigned. After r194573, fxp(4) no longer needs to reinitialize
the controller to program multicast filter after upping the
interface. So keeping track of driver running state should remove
all unnecessary controller reinitializations.

This change will also address endless controller reinitialization
triggered by dhclient(8).

Tested by:	hrs, Alban Hertroys &lt;haramrae@gmail.com&gt;
</content>
</entry>
<entry>
<title>Mechanically substitute flags from historic mbuf allocator with</title>
<updated>2012-12-04T09:32:43Z</updated>
<author>
<name>Gleb Smirnoff</name>
<email>glebius@FreeBSD.org</email>
</author>
<published>2012-12-04T09:32:43Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=c6499eccad497913a5025fbde8ae76da70e08043'/>
<id>urn:sha1:c6499eccad497913a5025fbde8ae76da70e08043</id>
<content type='text'>
malloc(9) flags in sys/dev.
</content>
</entry>
<entry>
<title>Remove duplicate const specifiers in many drivers (I hope I got all of</title>
<updated>2012-11-05T19:16:27Z</updated>
<author>
<name>Dimitry Andric</name>
<email>dim@FreeBSD.org</email>
</author>
<published>2012-11-05T19:16:27Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=29658c96ce9914fdf4ff4e3519fbec696ef32118'/>
<id>urn:sha1:29658c96ce9914fdf4ff4e3519fbec696ef32118</id>
<content type='text'>
them, please let me know if not).  Most of these are of the form:

static const struct bzzt_type {
	[...list of members...]
} const bzzt_devs[] = {
	[...list of initializers...]
};

The second const is unnecessary, as arrays cannot be modified anyway,
and if the elements are const, the whole thing is const automatically
(e.g. it is placed in .rodata).

I have verified this does not change the binary output of a full kernel
build (except for build timestamps embedded in the object files).

Reviewed by:	yongari, marius
MFC after:	1 week
</content>
</entry>
<entry>
<title>- Change the module order of these MAC drivers to be last so they are</title>
<updated>2012-05-11T02:40:40Z</updated>
<author>
<name>Marius Strobl</name>
<email>marius@FreeBSD.org</email>
</author>
<published>2012-05-11T02:40:40Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=e4029d4cac5e82fdda4e715c8a006a74e17adc70'/>
<id>urn:sha1:e4029d4cac5e82fdda4e715c8a006a74e17adc70</id>
<content type='text'>
  deterministically handled after the corresponding PHY drivers when
  loaded as modules. Otherwise, when these MAC/PHY driver pairs are
  compiled into a single module probing the PHY driver may fail. This
  makes r151438 and r226154 actually work. [1]
  Reported and tested by: yongari (fxp(4))
- Use DEVMETHOD_END.
- Use NULL instead of 0 for pointers.

Submitted by:	jhb [1]
MFC after:	3 days
</content>
</entry>
<entry>
<title>Remove unnecessary #if as the software workaround for PCI protocol</title>
<updated>2012-03-28T01:52:38Z</updated>
<author>
<name>Pyun YongHyeon</name>
<email>yongari@FreeBSD.org</email>
</author>
<published>2012-03-28T01:52:38Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=c3f52a31a58d5ffe2a816a8ccb609e45112648b7'/>
<id>urn:sha1:c3f52a31a58d5ffe2a816a8ccb609e45112648b7</id>
<content type='text'>
violation should be activated unless the system is cold-booted
after updating EEPROM.
The PCI protocol violation happens only when established link is
10Mbps so the workaround should be updated whenever link state
change is detected.  Previously the workaround was activated only
when user checks current media status with ifconfig(8).
</content>
</entry>
<entry>
<title>Load entire EEPROM contents in device attach time and verify</title>
<updated>2012-03-28T01:27:27Z</updated>
<author>
<name>Pyun YongHyeon</name>
<email>yongari@FreeBSD.org</email>
</author>
<published>2012-03-28T01:27:27Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=8262183e5bef4c91c0ed2fcf9f028349375a1b54'/>
<id>urn:sha1:8262183e5bef4c91c0ed2fcf9f028349375a1b54</id>
<content type='text'>
whether the checksum of EEPROM is valid or not.  Because driver
heavily relies on EEPROM information when it selectively enables
features/workarounds, it would be helpful to know whether driver
sees valid EEPROM.
While I'm here remove all other EEPROM accesses since the entire
EEPROM is loaded at device attach time.

MFC after:	2 weeks
</content>
</entry>
<entry>
<title>Partially revert r223608 and selectively allow microcode loading</title>
<updated>2012-03-28T01:08:55Z</updated>
<author>
<name>Pyun YongHyeon</name>
<email>yongari@FreeBSD.org</email>
</author>
<published>2012-03-28T01:08:55Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=1343a72fe2e47101186daabe801576f16b21b72c'/>
<id>urn:sha1:1343a72fe2e47101186daabe801576f16b21b72c</id>
<content type='text'>
for 82550C.  For 82550 controllers this change restores CPUSaver
microcode loading.  Due to silicon bug on 82550 and 82550C with
server extension, these controllers seem to require CPUSaver
microcode to receive fragmented UDP datagrams.  However the
microcode shouldn't be used on client featured 82550C as it locks
up the controller.  In addition, client featured 82550C does not
have the silicon bug.  Also clear temporary memory used for
microcode loading since the same memory area is used for other
commands.
While I'm here use 82550C in probe message instead of generic
82550.

Reported by:	Andreas Longwitz &lt;longwitz &lt;&gt; incore de&gt;
Tested by:	Andreas Longwitz &lt;longwitz &lt;&gt; incore de&gt;
MFC after:	2 weeks
</content>
</entry>
<entry>
<title>Do not change current media when driver is already running.  If</title>
<updated>2012-03-19T02:10:40Z</updated>
<author>
<name>Pyun YongHyeon</name>
<email>yongari@FreeBSD.org</email>
</author>
<published>2012-03-19T02:10:40Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=a461b2014239ef28d116bab505e115521f0487e6'/>
<id>urn:sha1:a461b2014239ef28d116bab505e115521f0487e6</id>
<content type='text'>
driver is running driver would have already completed flow control
configuration.  This change removes unnecessary media changes in
controller reconfiguration cases such that it does not trigger link
reestablishment for configuration change requests like promiscuous
mode change.

Reported by:	Many
Tested by:	Mike Tancsa &lt;mike &lt;&gt; sentex dot net&gt;
MFC after:	1 week
</content>
</entry>
</feed>
