<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux.git/drivers/net/ethernet/stmicro, branch v3.2</title>
<subtitle>Linux kernel source tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/'/>
<entry>
<title>stmmac: mask mmc interrupts</title>
<updated>2011-11-21T20:31:15+00:00</updated>
<author>
<name>Giuseppe CAVALLARO</name>
<email>peppe.cavallaro@st.com</email>
</author>
<published>2011-11-18T05:00:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=4f795b25eaf1109c77abfc3b57cef9b993f3aede'/>
<id>4f795b25eaf1109c77abfc3b57cef9b993f3aede</id>
<content type='text'>
We need to mask the MMC irq otherwise if we raise the mmc
interrupts that are not handled the driver loops in the
handler.
In fact, by default all mmc counters (only used for stats)
are managed in SW and registers are cleared on each READ.

Signed-off-by: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&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>
We need to mask the MMC irq otherwise if we raise the mmc
interrupts that are not handled the driver loops in the
handler.
In fact, by default all mmc counters (only used for stats)
are managed in SW and registers are cleared on each READ.

Signed-off-by: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>stmmac: fix pm functions avoiding sleep on spinlock</title>
<updated>2011-11-17T08:13:42+00:00</updated>
<author>
<name>Francesco Virlinzi</name>
<email>francesco.virlinzi@st.com</email>
</author>
<published>2011-11-16T21:58:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=102463b18d922dd55c29fbfa222e0355ecf3e42f'/>
<id>102463b18d922dd55c29fbfa222e0355ecf3e42f</id>
<content type='text'>
This patch fixes the pm functions to avoid the system
sleeps while a spinlock is taken.

Signed-off-by: Francesco Virlinzi &lt;francesco.virlinzi@st.com&gt;
Signed-off-by: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&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>
This patch fixes the pm functions to avoid the system
sleeps while a spinlock is taken.

Signed-off-by: Francesco Virlinzi &lt;francesco.virlinzi@st.com&gt;
Signed-off-by: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>stmmac: remove spin_lock in stmmac_ioctl.</title>
<updated>2011-11-17T08:13:42+00:00</updated>
<author>
<name>Srinivas Kandagatla</name>
<email>srinivas.kandagatla@st.com</email>
</author>
<published>2011-11-16T21:58:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=989508ba60da6dce79f8aaee1be6c092fd4c67f8'/>
<id>989508ba60da6dce79f8aaee1be6c092fd4c67f8</id>
<content type='text'>
This patch removes un-needed spin_lock in stmmac_ioctl while reading and
writing mdio registers. While holding spin_lock the code must be
atomic, which is not true in this case as both mdiobus_read and writes
have mutex locks.

Without this patch reading mdio registers via mii-tool results in below
BUG:
mii-tool -vvv eth0"
Using SIOCGMIIPHY=0x8947
BUG: sleeping function called from invalid context at kernel/mutex.c:287
in_atomic(): 1, irqs_disabled(): 0, pid: 614, name: mii-tool
2 locks held by mii-tool/614:
 #0:  (rtnl_mutex){......}, at: [&lt;c01fd80c&gt;] dev_ioctl+0x550/0x674
 #1:  (&amp;priv-&gt;lock){......}, at: [&lt;c01b34ec&gt;] stmmac_ioctl+0x4c/0x78
[&lt;c002ea14&gt;] (unwind_backtrace+0x0/0xcc) from [&lt;c0272c38&gt;]
(mutex_lock_nested+0x24/0x35c)
[&lt;c0272c38&gt;] (mutex_lock_nested+0x24/0x35c) from [&lt;c01b237c&gt;]
(mdiobus_read+0x44/0x70)
[&lt;c01b237c&gt;] (mdiobus_read+0x44/0x70) from [&lt;c01b0c64&gt;]
(phy_mii_ioctl+0x4c/0x138)
[&lt;c01b0c64&gt;] (phy_mii_ioctl+0x4c/0x138) from [&lt;c01b34fc&gt;]
(stmmac_ioctl+0x5c/0x78)
[&lt;c01b34fc&gt;] (stmmac_ioctl+0x5c/0x78) from [&lt;c01fcec8&gt;]
(dev_ifsioc+0x2a4/0x2c8)
[&lt;c01fcec8&gt;] (dev_ifsioc+0x2a4/0x2c8) from [&lt;c01fd81c&gt;]
(dev_ioctl+0x560/0x674)
[&lt;c01fd81c&gt;] (dev_ioctl+0x560/0x674) from [&lt;c00c36e0&gt;]
(vfs_ioctl+0x2c/0x8c)
[&lt;c00c36e0&gt;] (vfs_ioctl+0x2c/0x8c) from [&lt;c00c4130&gt;]
(do_vfs_ioctl+0x530/0x578)
[&lt;c00c4130&gt;] (do_vfs_ioctl+0x530/0x578) from [&lt;c00c41ac&gt;]
(sys_ioctl+0x34/0x54)
[&lt;c00c41ac&gt;] (sys_ioctl+0x34/0x54) from [&lt;c0028aa0&gt;]
(ret_fast_syscall+0x0/0x2c)

Signed-off-by: Srinivas Kandagatla &lt;srinivas.kandagatla@st.com&gt;
Signed-off-by: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&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>
This patch removes un-needed spin_lock in stmmac_ioctl while reading and
writing mdio registers. While holding spin_lock the code must be
atomic, which is not true in this case as both mdiobus_read and writes
have mutex locks.

Without this patch reading mdio registers via mii-tool results in below
BUG:
mii-tool -vvv eth0"
Using SIOCGMIIPHY=0x8947
BUG: sleeping function called from invalid context at kernel/mutex.c:287
in_atomic(): 1, irqs_disabled(): 0, pid: 614, name: mii-tool
2 locks held by mii-tool/614:
 #0:  (rtnl_mutex){......}, at: [&lt;c01fd80c&gt;] dev_ioctl+0x550/0x674
 #1:  (&amp;priv-&gt;lock){......}, at: [&lt;c01b34ec&gt;] stmmac_ioctl+0x4c/0x78
[&lt;c002ea14&gt;] (unwind_backtrace+0x0/0xcc) from [&lt;c0272c38&gt;]
(mutex_lock_nested+0x24/0x35c)
[&lt;c0272c38&gt;] (mutex_lock_nested+0x24/0x35c) from [&lt;c01b237c&gt;]
(mdiobus_read+0x44/0x70)
[&lt;c01b237c&gt;] (mdiobus_read+0x44/0x70) from [&lt;c01b0c64&gt;]
(phy_mii_ioctl+0x4c/0x138)
[&lt;c01b0c64&gt;] (phy_mii_ioctl+0x4c/0x138) from [&lt;c01b34fc&gt;]
(stmmac_ioctl+0x5c/0x78)
[&lt;c01b34fc&gt;] (stmmac_ioctl+0x5c/0x78) from [&lt;c01fcec8&gt;]
(dev_ifsioc+0x2a4/0x2c8)
[&lt;c01fcec8&gt;] (dev_ifsioc+0x2a4/0x2c8) from [&lt;c01fd81c&gt;]
(dev_ioctl+0x560/0x674)
[&lt;c01fd81c&gt;] (dev_ioctl+0x560/0x674) from [&lt;c00c36e0&gt;]
(vfs_ioctl+0x2c/0x8c)
[&lt;c00c36e0&gt;] (vfs_ioctl+0x2c/0x8c) from [&lt;c00c4130&gt;]
(do_vfs_ioctl+0x530/0x578)
[&lt;c00c4130&gt;] (do_vfs_ioctl+0x530/0x578) from [&lt;c00c41ac&gt;]
(sys_ioctl+0x34/0x54)
[&lt;c00c41ac&gt;] (sys_ioctl+0x34/0x54) from [&lt;c0028aa0&gt;]
(ret_fast_syscall+0x0/0x2c)

Signed-off-by: Srinivas Kandagatla &lt;srinivas.kandagatla@st.com&gt;
Signed-off-by: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>stmmac: parameters auto-tuning through HW cap reg</title>
<updated>2011-11-17T08:13:41+00:00</updated>
<author>
<name>Giuseppe CAVALLARO</name>
<email>peppe.cavallaro@st.com</email>
</author>
<published>2011-11-16T21:58:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=19e30c14371f7afd38d1d35a693b96423a4db144'/>
<id>19e30c14371f7afd38d1d35a693b96423a4db144</id>
<content type='text'>
New GMAC devices (newer than the databook 3.50a) have the
HW capability register that provides which features are actually
supported by the hardware.

On old devices many information have to be passed through the
platform, for example: enhanced descriptor structure,
TX COE etc. These are mandatory to properly configure the driver.
This remains still valid because the driver has to support old
Synopsys devices but now it's also able to override them using the
values from the HW capability register if supported.

Signed-off-by: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&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>
New GMAC devices (newer than the databook 3.50a) have the
HW capability register that provides which features are actually
supported by the hardware.

On old devices many information have to be passed through the
platform, for example: enhanced descriptor structure,
TX COE etc. These are mandatory to properly configure the driver.
This remains still valid because the driver has to support old
Synopsys devices but now it's also able to override them using the
values from the HW capability register if supported.

Signed-off-by: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>stmmac: fix advertising 1000Base capabilties for non GMII iface</title>
<updated>2011-11-17T08:13:41+00:00</updated>
<author>
<name>Srinivas Kandagatla</name>
<email>srinivas.kandagatla@st.com</email>
</author>
<published>2011-11-16T21:57:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=c5b9b4e4b9076089fe7f9d4f5d1f2bba776646d2'/>
<id>c5b9b4e4b9076089fe7f9d4f5d1f2bba776646d2</id>
<content type='text'>
This patch fixes the way to stop the 1000Base advertising
capabilties for non GMII interfaces.

Signed-off-by: Srinivas Kandagatla &lt;srinivas.kandagatla@st.com&gt;
Acked-by: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&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>
This patch fixes the way to stop the 1000Base advertising
capabilties for non GMII interfaces.

Signed-off-by: Srinivas Kandagatla &lt;srinivas.kandagatla@st.com&gt;
Acked-by: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>stmmac: use mdelay on timeout of sw reset</title>
<updated>2011-11-17T08:13:41+00:00</updated>
<author>
<name>Francesco Virlinzi</name>
<email>francesco.virlinzi@st.com</email>
</author>
<published>2011-11-16T21:57:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=bbc1754639f771cd2b515fed39b977549b373034'/>
<id>bbc1754639f771cd2b515fed39b977549b373034</id>
<content type='text'>
This patch uses an mdelay to manage the timeout on
sw reset to be independant of cpu_clk.

Signed-off-by: Francesco Virlinzi &lt;francesco.virlinzi@st.com&gt;
Reviewed-by: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&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>
This patch uses an mdelay to manage the timeout on
sw reset to be independant of cpu_clk.

Signed-off-by: Francesco Virlinzi &lt;francesco.virlinzi@st.com&gt;
Reviewed-by: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild</title>
<updated>2011-11-07T02:54:53+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2011-11-07T02:54:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=02ebbbd481635fd3ce7018e5bb19c18c0f1e4561'/>
<id>02ebbbd481635fd3ce7018e5bb19c18c0f1e4561</id>
<content type='text'>
* 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
  scsi: drop unused Kconfig symbol
  pci: drop unused Kconfig symbol
  stmmac: drop unused Kconfig symbol
  x86: drop unused Kconfig symbol
  powerpc: drop unused Kconfig symbols
  powerpc: 40x: drop unused Kconfig symbol
  mips: drop unused Kconfig symbols
  openrisc: drop unused Kconfig symbols
  arm: at91: drop unused Kconfig symbol
  samples: drop unused Kconfig symbol
  m32r: drop unused Kconfig symbol
  score: drop unused Kconfig symbols
  sh: drop unused Kconfig symbol
  um: drop unused Kconfig symbol
  sparc: drop unused Kconfig symbol
  alpha: drop unused Kconfig symbol

Fix up trivial conflict in drivers/net/ethernet/stmicro/stmmac/Kconfig
as per Michal: the STMMAC_DUAL_MAC config variable is still unused and
should be deleted.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
  scsi: drop unused Kconfig symbol
  pci: drop unused Kconfig symbol
  stmmac: drop unused Kconfig symbol
  x86: drop unused Kconfig symbol
  powerpc: drop unused Kconfig symbols
  powerpc: 40x: drop unused Kconfig symbol
  mips: drop unused Kconfig symbols
  openrisc: drop unused Kconfig symbols
  arm: at91: drop unused Kconfig symbol
  samples: drop unused Kconfig symbol
  m32r: drop unused Kconfig symbol
  score: drop unused Kconfig symbols
  sh: drop unused Kconfig symbol
  um: drop unused Kconfig symbol
  sparc: drop unused Kconfig symbol
  alpha: drop unused Kconfig symbol

Fix up trivial conflict in drivers/net/ethernet/stmicro/stmmac/Kconfig
as per Michal: the STMMAC_DUAL_MAC config variable is still unused and
should be deleted.
</pre>
</div>
</content>
</entry>
<entry>
<title>stmmac: update normal descriptor structure (v2)</title>
<updated>2011-10-28T03:17:12+00:00</updated>
<author>
<name>Giuseppe CAVALLARO</name>
<email>peppe.cavallaro@st.com</email>
</author>
<published>2011-10-26T19:43:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=3c20f72f9108b2fcf30ec63d8a4203736c01ccd0'/>
<id>3c20f72f9108b2fcf30ec63d8a4203736c01ccd0</id>
<content type='text'>
This patch updates the normal descriptor structure
to work fine on new GMAC Synopsys chips.

Normal descriptors were designed on the old MAC10/100
databook 1.91 where some bits were reserved: for example
the tx checksum insertion and rx checksum offload.

The patch maintains the back-compatibility with old
MAC devices (tested on STx7109 MAC10/100) and adds new
fields that actually new GMAC devices can use.

For example, STx7109 (MAC10/100) will pass from the platform
  tx_coe = 0, enh_desc = 0, has_gmac = 0.
A platform like Loongson1B (GMAC) will pass:
  tx_coe = 1, enh_desc = 0, has_gmac = 1.

Thanks to Kelvin, he enhanced the normal descriptors for
GMAC (on MIPS Loongson1B platform).

Signed-off-by: Kelvin Cheung &lt;keguang.zhang@gmail.com&gt;
Signed-off-by: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&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>
This patch updates the normal descriptor structure
to work fine on new GMAC Synopsys chips.

Normal descriptors were designed on the old MAC10/100
databook 1.91 where some bits were reserved: for example
the tx checksum insertion and rx checksum offload.

The patch maintains the back-compatibility with old
MAC devices (tested on STx7109 MAC10/100) and adds new
fields that actually new GMAC devices can use.

For example, STx7109 (MAC10/100) will pass from the platform
  tx_coe = 0, enh_desc = 0, has_gmac = 0.
A platform like Loongson1B (GMAC) will pass:
  tx_coe = 1, enh_desc = 0, has_gmac = 1.

Thanks to Kelvin, he enhanced the normal descriptors for
GMAC (on MIPS Loongson1B platform).

Signed-off-by: Kelvin Cheung &lt;keguang.zhang@gmail.com&gt;
Signed-off-by: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>stmmac: fix NULL pointer dereference in capabilities fixup (v2)</title>
<updated>2011-10-28T03:17:11+00:00</updated>
<author>
<name>Angus Clark</name>
<email>angus.clark@st.com</email>
</author>
<published>2011-10-26T19:43:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=e2c57f839c63f452b4704e048c8db9cf669ed410'/>
<id>e2c57f839c63f452b4704e048c8db9cf669ed410</id>
<content type='text'>
Signed-off-by: Angus Clark &lt;angus.clark@st.com&gt;
Acked-by: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&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>
Signed-off-by: Angus Clark &lt;angus.clark@st.com&gt;
Acked-by: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>stmmac: fix a bug while checking the HW cap reg (v2)</title>
<updated>2011-10-28T03:17:11+00:00</updated>
<author>
<name>Giuseppe CAVALLARO</name>
<email>peppe.cavallaro@st.com</email>
</author>
<published>2011-10-26T19:43:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=5e6efe88c54ad79353666f5371b5b97c0e16111e'/>
<id>5e6efe88c54ad79353666f5371b5b97c0e16111e</id>
<content type='text'>
The patch fixes a bug while checking the HW cap reg
on old MAC10/100 where this feature is not available.

Signed-off-by: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&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>
The patch fixes a bug while checking the HW cap reg
on old MAC10/100 where this feature is not available.

Signed-off-by: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
</feed>
