<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/net/ethernet/stmicro, branch linux-3.2.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.2.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.2.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2015-08-12T14:33:17Z</updated>
<entry>
<title>stmmac: troubleshoot unexpected bits in des0 &amp; des1</title>
<updated>2015-08-12T14:33:17Z</updated>
<author>
<name>Alexey Brodkin</name>
</author>
<published>2015-06-24T08:47:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6ee65539ef4a1f14a972b2370985870f399b2555'/>
<id>urn:sha1:6ee65539ef4a1f14a972b2370985870f399b2555</id>
<content type='text'>
commit f1590670ce069eefeb93916391a67643e6ad1630 upstream.

Current implementation of descriptor init procedure only takes
care about setting/clearing ownership flag in "des0"/"des1"
fields while it is perfectly possible to get unexpected bits
set because of the following factors:

 [1] On driver probe underlying memory allocated with
     dma_alloc_coherent() might not be zeroed and so
     it will be filled with garbage.

 [2] During driver operation some bits could be set by SD/MMC
     controller (for example error flags etc).

And unexpected and/or randomly set flags in "des0"/"des1"
fields may lead to unpredictable behavior of GMAC DMA block.

This change addresses both items above with:

 [1] Use of dma_zalloc_coherent() instead of simple
     dma_alloc_coherent() to make sure allocated memory is
     zeroed. That shouldn't affect performance because
     this allocation only happens once on driver probe.

 [2] Do explicit zeroing of both "des0" and "des1" fields
     of all buffer descriptors during initialization of
     DMA transfer.

And while at it fixed identation of dma_free_coherent()
counterpart as well.

Signed-off-by: Alexey Brodkin &lt;abrodkin@synopsys.com&gt;
Cc: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&gt;
Cc: arc-linux-dev@synopsys.com
Cc: linux-kernel@vger.kernel.org
Cc: David Miller &lt;davem@davemloft.net&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
[bwh: Backported to 3.2:
 - Adjust context, indentation
 - Normal and extended descriptors are allocated in the same place here]
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
Acked-by: Alexey Brodkin &lt;Alexey.Brodkin@synopsys.com&gt;
</content>
</entry>
<entry>
<title>stmmac: Fix for nfs hang on multiple reboot</title>
<updated>2012-07-25T03:11:45Z</updated>
<author>
<name>Deepak Sikri</name>
</author>
<published>2012-07-08T21:14:45Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b5ff5ad1b9299fccc11c801764fa23ca696161cf'/>
<id>urn:sha1:b5ff5ad1b9299fccc11c801764fa23ca696161cf</id>
<content type='text'>
commit 8e83989106562326bfd6aaf92174fe138efd026b upstream.

It was observed that during multiple reboots nfs hangs. The status of
receive descriptors shows that all the descriptors were in control of
CPU, and none were assigned to DMA.
Also the DMA status register confirmed that the Rx buffer is
unavailable.

This patch adds the fix for the same by adding the memory barriers to
ascertain that the all instructions before enabling the Rx or Tx DMA are
completed which involves the proper setting of the ownership bit in DMA
descriptors.

Signed-off-by: Deepak Sikri &lt;deepak.sikri@st.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>stmmac: Fix compilation error in mmc_core.c</title>
<updated>2012-05-20T21:56:52Z</updated>
<author>
<name>Stefan Roese</name>
</author>
<published>2012-01-10T01:47:40Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7338d50a12ca0b3af8460896c6aa554a33a731b8'/>
<id>urn:sha1:7338d50a12ca0b3af8460896c6aa554a33a731b8</id>
<content type='text'>
commit 1dd8117e3320fb42ec40ef2ace982871572d34ed upstream.

Fix this error:

  CC      drivers/net/ethernet/stmicro/stmmac/mmc_core.o
drivers/net/ethernet/stmicro/stmmac/mmc_core.c: In function 'dwmac_mmc_ctrl':
drivers/net/ethernet/stmicro/stmmac/mmc_core.c:143:2: error: implicit
  declaration of function 'pr_debug' [-Werror=implicit-function-declaration]

Signed-off-by: Stefan Roese &lt;sr@denx.de&gt;
Cc: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&gt;
Acked-by: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>stmmac: mask mmc interrupts</title>
<updated>2011-11-21T20:31:15Z</updated>
<author>
<name>Giuseppe CAVALLARO</name>
</author>
<published>2011-11-18T05:00:20Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4f795b25eaf1109c77abfc3b57cef9b993f3aede'/>
<id>urn:sha1: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>
</entry>
<entry>
<title>stmmac: fix pm functions avoiding sleep on spinlock</title>
<updated>2011-11-17T08:13:42Z</updated>
<author>
<name>Francesco Virlinzi</name>
</author>
<published>2011-11-16T21:58:02Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=102463b18d922dd55c29fbfa222e0355ecf3e42f'/>
<id>urn:sha1: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>
</entry>
<entry>
<title>stmmac: remove spin_lock in stmmac_ioctl.</title>
<updated>2011-11-17T08:13:42Z</updated>
<author>
<name>Srinivas Kandagatla</name>
</author>
<published>2011-11-16T21:58:01Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=989508ba60da6dce79f8aaee1be6c092fd4c67f8'/>
<id>urn:sha1: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>
</entry>
<entry>
<title>stmmac: parameters auto-tuning through HW cap reg</title>
<updated>2011-11-17T08:13:41Z</updated>
<author>
<name>Giuseppe CAVALLARO</name>
</author>
<published>2011-11-16T21:58:00Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=19e30c14371f7afd38d1d35a693b96423a4db144'/>
<id>urn:sha1: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>
</entry>
<entry>
<title>stmmac: fix advertising 1000Base capabilties for non GMII iface</title>
<updated>2011-11-17T08:13:41Z</updated>
<author>
<name>Srinivas Kandagatla</name>
</author>
<published>2011-11-16T21:57:59Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c5b9b4e4b9076089fe7f9d4f5d1f2bba776646d2'/>
<id>urn:sha1: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>
</entry>
<entry>
<title>stmmac: use mdelay on timeout of sw reset</title>
<updated>2011-11-17T08:13:41Z</updated>
<author>
<name>Francesco Virlinzi</name>
</author>
<published>2011-11-16T21:57:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=bbc1754639f771cd2b515fed39b977549b373034'/>
<id>urn:sha1: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>
</entry>
<entry>
<title>Merge branch 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild</title>
<updated>2011-11-07T02:54:53Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2011-11-07T02:54:53Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=02ebbbd481635fd3ce7018e5bb19c18c0f1e4561'/>
<id>urn:sha1: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>
</entry>
</feed>
