<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/drivers/net/r8169.c, branch v2.6.23.8</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>r8169: revert part of 6dccd16b7c2703e8bbf8bca62b5cf248332afbe2</title>
<updated>2007-10-05T18:05:48+00:00</updated>
<author>
<name>Francois Romieu</name>
<email>romieu@fr.zoreil.com</email>
</author>
<published>2007-10-03T22:42:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=c946b3047205d7e107be16885bbb42ab9f10350a'/>
<id>c946b3047205d7e107be16885bbb42ab9f10350a</id>
<content type='text'>
The 8169/8110SC currently announces itself as:
[...]
eth0: RTL8169sc/8110sc at 0x........, ..:..:..:..:..:.., XID 18000000 IRQ ..
                                                             ^^^^^^^^
It uses RTL_GIGA_MAC_VER_05 and this part of the changeset can cut
its performance by a factor of 2~2.5 as reported by Timo.

(the driver includes code just before the hunk to write the ChipCmd
register when mac_version == RTL_GIGA_MAC_VER_0[1-4])

Signed-off-by: Francois Romieu &lt;romieu@fr.zoreil.com&gt;
Cc: Timo Jantunen &lt;jeti@welho.com&gt;
Signed-off-by: Jeff Garzik &lt;jeff@garzik.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The 8169/8110SC currently announces itself as:
[...]
eth0: RTL8169sc/8110sc at 0x........, ..:..:..:..:..:.., XID 18000000 IRQ ..
                                                             ^^^^^^^^
It uses RTL_GIGA_MAC_VER_05 and this part of the changeset can cut
its performance by a factor of 2~2.5 as reported by Timo.

(the driver includes code just before the hunk to write the ChipCmd
register when mac_version == RTL_GIGA_MAC_VER_0[1-4])

Signed-off-by: Francois Romieu &lt;romieu@fr.zoreil.com&gt;
Cc: Timo Jantunen &lt;jeti@welho.com&gt;
Signed-off-by: Jeff Garzik &lt;jeff@garzik.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>r8169: workaround against ignored TxPoll writes (8168)</title>
<updated>2007-09-19T19:52:18+00:00</updated>
<author>
<name>Francois Romieu</name>
<email>romieu@fr.zoreil.com</email>
</author>
<published>2007-08-26T18:08:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=d78ae2dcc2acebb9a1048278f47f762c069db75c'/>
<id>d78ae2dcc2acebb9a1048278f47f762c069db75c</id>
<content type='text'>
The 8168 ignores the requests to fetch the Tx descriptors when
the relevant TxPoll bit is already set. It easily kills the
performances of the 8168. David Gundersen has noticed that it
is enough to wait for the completion of the DMA transfer (NPQ
bit is cleared) before writing the TxPoll register again.

The extra IO traffic added by the proposed workaround could be
minimalized but it is not a high-priority task.

Fix for:
http://bugzilla.kernel.org/show_bug.cgi?id=7924
http://bugzilla.kernel.org/show_bug.cgi?id=8688
(http://bugzilla.kernel.org/show_bug.cgi?id=7555 ?)

Signed-off-by: Francois Romieu &lt;romieu@fr.zoreil.com&gt;
Cc: David Gundersen &lt;gundy@iinet.net.au&gt;
Cc: Edward Hsu &lt;edward_hsu@realtek.com.tw&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The 8168 ignores the requests to fetch the Tx descriptors when
the relevant TxPoll bit is already set. It easily kills the
performances of the 8168. David Gundersen has noticed that it
is enough to wait for the completion of the DMA transfer (NPQ
bit is cleared) before writing the TxPoll register again.

The extra IO traffic added by the proposed workaround could be
minimalized but it is not a high-priority task.

Fix for:
http://bugzilla.kernel.org/show_bug.cgi?id=7924
http://bugzilla.kernel.org/show_bug.cgi?id=8688
(http://bugzilla.kernel.org/show_bug.cgi?id=7555 ?)

Signed-off-by: Francois Romieu &lt;romieu@fr.zoreil.com&gt;
Cc: David Gundersen &lt;gundy@iinet.net.au&gt;
Cc: Edward Hsu &lt;edward_hsu@realtek.com.tw&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>r8169: correct phy parameters for the 8110SC</title>
<updated>2007-09-19T19:52:18+00:00</updated>
<author>
<name>Edward Hsu</name>
<email>edward_hsu@realtek.com.tw</email>
</author>
<published>2007-08-17T08:14:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=65d916d95314566f426cc40ff0f17b754a773b0b'/>
<id>65d916d95314566f426cc40ff0f17b754a773b0b</id>
<content type='text'>
The phys of the 8110SC (RTL_GIGA_MAC_VER_{05/06}) act abnormally in
gigabit mode if they are applied the parameters in rtl8169_hw_phy_config
which actually aim the 8110S/SB.

It is ok to return early from rtl8169_hw_phy_config as it does not
apply to the 8101 and 8168 families.

Signed-off-by: Edward Hsu &lt;edward_hsu@realtek.com.tw&gt;
Signed-off-by: Francois Romieu &lt;romieu@fr.zoreil.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The phys of the 8110SC (RTL_GIGA_MAC_VER_{05/06}) act abnormally in
gigabit mode if they are applied the parameters in rtl8169_hw_phy_config
which actually aim the 8110S/SB.

It is ok to return early from rtl8169_hw_phy_config as it does not
apply to the 8101 and 8168 families.

Signed-off-by: Edward Hsu &lt;edward_hsu@realtek.com.tw&gt;
Signed-off-by: Francois Romieu &lt;romieu@fr.zoreil.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'r8169-for-jeff-20070806' of git://electric-eye.fr.zoreil.com/home/romieu/linux-2.6 into upstream-fixes</title>
<updated>2007-08-07T21:28:23+00:00</updated>
<author>
<name>Jeff Garzik</name>
<email>jeff@garzik.org</email>
</author>
<published>2007-08-07T21:28:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=c21723edd5f6c288ab613ed658b7140e07fc7209'/>
<id>c21723edd5f6c288ab613ed658b7140e07fc7209</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>r8169: avoid needless NAPI poll scheduling</title>
<updated>2007-08-06T22:07:36+00:00</updated>
<author>
<name>Francois Romieu</name>
<email>romieu@fr.zoreil.com</email>
</author>
<published>2007-08-01T22:00:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=313b0305b5a1e7e0fb39383befbf79558ce68a9c'/>
<id>313b0305b5a1e7e0fb39383befbf79558ce68a9c</id>
<content type='text'>
Theory  : though needless, it should not have hurt.
Practice: it does not play nice with DEBUG_SHIRQ + LOCKDEP + UP
(see https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=242572).

The patch makes sense in itself but I should dig why it has an effect
on #242572 (assuming that NAPI do not change in a near future).

Signed-off-by: Francois Romieu &lt;romieu@fr.zoreil.com&gt;
Cc: Edward Hsu &lt;edward_hsu@realtek.com.tw&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Theory  : though needless, it should not have hurt.
Practice: it does not play nice with DEBUG_SHIRQ + LOCKDEP + UP
(see https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=242572).

The patch makes sense in itself but I should dig why it has an effect
on #242572 (assuming that NAPI do not change in a near future).

Signed-off-by: Francois Romieu &lt;romieu@fr.zoreil.com&gt;
Cc: Edward Hsu &lt;edward_hsu@realtek.com.tw&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>r8169: PHY power-on fix</title>
<updated>2007-08-06T21:58:02+00:00</updated>
<author>
<name>Roger So</name>
<email>roger.so@gmail.com</email>
</author>
<published>2007-07-31T21:52:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=2584fbc3a61897de5eddd56b39a4fa9cd074eca2'/>
<id>2584fbc3a61897de5eddd56b39a4fa9cd074eca2</id>
<content type='text'>
Fix extracted from Realtek's driver (8.002.00/20070713) for the PHY
attached to 8111/8168b chipsets.

The check against mac_version is just usual paranoia during the bugfix
period of the kernel cycle. -- FR

Tested on Asus M2A-VM motherboard by Roger So.
No regression on my Asrock 945G DVI either (built-in 8168 + 2x8169).

Signed-off-by: Roger So &lt;roger.so@gmail.com&gt;
Signed-off-by: Francois Romieu &lt;romieu@fr.zoreil.com&gt;
Cc: Edward Hsu &lt;edward_hsu@realtek.com.tw&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix extracted from Realtek's driver (8.002.00/20070713) for the PHY
attached to 8111/8168b chipsets.

The check against mac_version is just usual paranoia during the bugfix
period of the kernel cycle. -- FR

Tested on Asus M2A-VM motherboard by Roger So.
No regression on my Asrock 945G DVI either (built-in 8168 + 2x8169).

Signed-off-by: Roger So &lt;roger.so@gmail.com&gt;
Signed-off-by: Francois Romieu &lt;romieu@fr.zoreil.com&gt;
Cc: Edward Hsu &lt;edward_hsu@realtek.com.tw&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[NET]: ethtool_perm_addr only has one implementation</title>
<updated>2007-07-31T21:00:29+00:00</updated>
<author>
<name>Matthew Wilcox</name>
<email>matthew@wil.cx</email>
</author>
<published>2007-07-31T21:00:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=313674afa8fdced2fe79f50f38e1c387b63d8790'/>
<id>313674afa8fdced2fe79f50f38e1c387b63d8790</id>
<content type='text'>
All drivers implement ethtool get_perm_addr the same way -- by calling
the generic function.  So we can inline the generic function into the
caller and avoid going through the drivers.

Signed-off-by: Matthew Wilcox &lt;matthew@wil.cx&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
All drivers implement ethtool get_perm_addr the same way -- by calling
the generic function.  So we can inline the generic function into the
caller and avoid going through the drivers.

Signed-off-by: Matthew Wilcox &lt;matthew@wil.cx&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>drivers/*: mark variables with uninitialized_var()</title>
<updated>2007-07-17T20:23:19+00:00</updated>
<author>
<name>Jeff Garzik</name>
<email>jeff@garzik.org</email>
</author>
<published>2007-07-17T09:39:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=a6343afb6e16b65b9f0b264f94f8207212e7e3ae'/>
<id>a6343afb6e16b65b9f0b264f94f8207212e7e3ae</id>
<content type='text'>
Mark variables in drivers/* with uninitialized_var() if such a warning
appears, and analysis proves that the var is initialized properly on all
paths it is used.

Signed-off-by: Jeff Garzik &lt;jeff@garzik.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Mark variables in drivers/* with uninitialized_var() if such a warning
appears, and analysis proves that the var is initialized properly on all
paths it is used.

Signed-off-by: Jeff Garzik &lt;jeff@garzik.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>r8169: perform RX config change after mac filtering</title>
<updated>2007-07-09T02:16:45+00:00</updated>
<author>
<name>Francois Romieu</name>
<email>romieu@fr.zoreil.com</email>
</author>
<published>2007-06-04T20:10:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=57a9f236ebe76be6fe1c85b5f7b3cea842e44177'/>
<id>57a9f236ebe76be6fe1c85b5f7b3cea842e44177</id>
<content type='text'>
It does not really make sense to update the RX config register
before the mac filtering registers.

Signed-off-by: Francois Romieu &lt;romieu@fr.zoreil.com&gt;
Cc: Edward Hsu &lt;edward_hsu@realtek.com.tw&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It does not really make sense to update the RX config register
before the mac filtering registers.

Signed-off-by: Francois Romieu &lt;romieu@fr.zoreil.com&gt;
Cc: Edward Hsu &lt;edward_hsu@realtek.com.tw&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>r8169: mac address change support</title>
<updated>2007-07-09T02:16:45+00:00</updated>
<author>
<name>Francois Romieu</name>
<email>romieu@fr.zoreil.com</email>
</author>
<published>2007-01-31T22:47:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=773d202194be84cc17d35f62516eac6d8db833e6'/>
<id>773d202194be84cc17d35f62516eac6d8db833e6</id>
<content type='text'>
Merged from Realtek's r8169-6.001 driver.

I have added some locking to protect against the arp monitoring
timer in the bonding driver. Accessing the configuration registers
is otherwise performed under RTNL locking.

Signed-off-by: Francois Romieu &lt;romieu@fr.zoreil.com&gt;
Cc: Edward Hsu &lt;edward_hsu@realtek.com.tw&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Merged from Realtek's r8169-6.001 driver.

I have added some locking to protect against the arp monitoring
timer in the bonding driver. Accessing the configuration registers
is otherwise performed under RTNL locking.

Signed-off-by: Francois Romieu &lt;romieu@fr.zoreil.com&gt;
Cc: Edward Hsu &lt;edward_hsu@realtek.com.tw&gt;
</pre>
</div>
</content>
</entry>
</feed>
