<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/drivers/fpga, branch v4.9.16</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>fpga manager: Add hardware dependency to Zynq driver</title>
<updated>2016-09-08T15:31:44+00:00</updated>
<author>
<name>Jean Delvare</name>
<email>jdelvare@suse.de</email>
</author>
<published>2016-09-08T14:38:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=54e9b099724a135a3c3cba1d90c0f2b7dd037815'/>
<id>54e9b099724a135a3c3cba1d90c0f2b7dd037815</id>
<content type='text'>
The Zynq FPGA manager driver serves no purpose on other architectures
so hide it unless build-testing.

Signed-off-by: Jean Delvare &lt;jdelvare@suse.de&gt;
Acked-by: Moritz Fischer &lt;moritz.fischer@ettus.com&gt;
Acked-by: Alan Tull &lt;atull@opensource.altera.com&gt;
Acked-by: Michal Simek &lt;michal.simek@xilinx.com&gt;
Cc: "Sören Brinkmann" &lt;soren.brinkmann@xilinx.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The Zynq FPGA manager driver serves no purpose on other architectures
so hide it unless build-testing.

Signed-off-by: Jean Delvare &lt;jdelvare@suse.de&gt;
Acked-by: Moritz Fischer &lt;moritz.fischer@ettus.com&gt;
Acked-by: Alan Tull &lt;atull@opensource.altera.com&gt;
Acked-by: Michal Simek &lt;michal.simek@xilinx.com&gt;
Cc: "Sören Brinkmann" &lt;soren.brinkmann@xilinx.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>drivers/fpga/Kconfig: fix build failure</title>
<updated>2016-08-04T12:50:07+00:00</updated>
<author>
<name>Sudip Mukherjee</name>
<email>sudipm.mukherjee@gmail.com</email>
</author>
<published>2016-08-03T20:45:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=1c8cb409491403036919dd1c6b45013dc8835a44'/>
<id>1c8cb409491403036919dd1c6b45013dc8835a44</id>
<content type='text'>
While building m32r allmodconfig the build is failing with the error:

  ERROR: "bad_dma_ops" [drivers/fpga/zynq-fpga.ko] undefined!

Xilinx Zynq FPGA is using DMA but there was no dependency while
building.

Link: http://lkml.kernel.org/r/1464346526-13913-1-git-send-email-sudipm.mukherjee@gmail.com
Signed-off-by: Sudip Mukherjee &lt;sudip.mukherjee@codethink.co.uk&gt;
Acked-by: Moritz Fischer &lt;moritz.fischer@ettus.com&gt;
Cc: Alan Tull &lt;atull@opensource.altera.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
While building m32r allmodconfig the build is failing with the error:

  ERROR: "bad_dma_ops" [drivers/fpga/zynq-fpga.ko] undefined!

Xilinx Zynq FPGA is using DMA but there was no dependency while
building.

Link: http://lkml.kernel.org/r/1464346526-13913-1-git-send-email-sudipm.mukherjee@gmail.com
Signed-off-by: Sudip Mukherjee &lt;sudip.mukherjee@codethink.co.uk&gt;
Acked-by: Moritz Fischer &lt;moritz.fischer@ettus.com&gt;
Cc: Alan Tull &lt;atull@opensource.altera.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>fpga manager: Fix firmware resource leak on error</title>
<updated>2015-11-24T23:25:46+00:00</updated>
<author>
<name>Tobias Klauser</name>
<email>tklauser@distanz.ch</email>
</author>
<published>2015-11-18T09:48:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=e8c77bda05e5d93cce6f38cfdde4192307951dea'/>
<id>e8c77bda05e5d93cce6f38cfdde4192307951dea</id>
<content type='text'>
If fpga_mgr_buf_load() fails, the firmware resource previously allocated
by request_firmware() is leaked. Fix it by calling release_firmware()
regardless of the return value of fpga_mgr_buf_load().

Found by the Coverity scanner (CID 1339653).

Fixes: 6a8c3be7ec8e ("add FPGA manager core")
Signed-off-by: Tobias Klauser &lt;tklauser@distanz.ch&gt;
Acked-by: Alan Tull &lt;atull@opensource.altera.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If fpga_mgr_buf_load() fails, the firmware resource previously allocated
by request_firmware() is leaked. Fix it by calling release_firmware()
regardless of the return value of fpga_mgr_buf_load().

Found by the Coverity scanner (CID 1339653).

Fixes: 6a8c3be7ec8e ("add FPGA manager core")
Signed-off-by: Tobias Klauser &lt;tklauser@distanz.ch&gt;
Acked-by: Alan Tull &lt;atull@opensource.altera.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>fpga manager: remove label</title>
<updated>2015-11-24T23:25:46+00:00</updated>
<author>
<name>Alan Tull</name>
<email>atull@opensource.altera.com</email>
</author>
<published>2015-10-29T19:39:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=07687c031d14a1f36613231c0ea13ce3c4025615'/>
<id>07687c031d14a1f36613231c0ea13ce3c4025615</id>
<content type='text'>
Remove implementation of 'label' DT binding.

Signed-off-by: Alan Tull &lt;atull@opensource.altera.com&gt;
Reviewed-by: Moritz Fischer &lt;moritz.fischer@ettus.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove implementation of 'label' DT binding.

Signed-off-by: Alan Tull &lt;atull@opensource.altera.com&gt;
Reviewed-by: Moritz Fischer &lt;moritz.fischer@ettus.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>fpga: socfpga: Fix check of return value of devm_request_irq</title>
<updated>2015-10-29T22:20:25+00:00</updated>
<author>
<name>Moritz Fischer</name>
<email>moritz.fischer@ettus.com</email>
</author>
<published>2015-10-29T15:56:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=e2d8680741edec84f843f783a7f4a44418b818d7'/>
<id>e2d8680741edec84f843f783a7f4a44418b818d7</id>
<content type='text'>
The return value should be checked for non-zero, instead
of checking it being IS_ERR_VALUE().

Acked-by: Alan Tull &lt;atull@opensource.altera.com&gt;
Reviewed-by: Josh Cartwright &lt;joshc@eso.teric.us&gt;
Signed-off-by: Moritz Fischer &lt;moritz.fischer@ettus.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The return value should be checked for non-zero, instead
of checking it being IS_ERR_VALUE().

Acked-by: Alan Tull &lt;atull@opensource.altera.com&gt;
Reviewed-by: Josh Cartwright &lt;joshc@eso.teric.us&gt;
Signed-off-by: Moritz Fischer &lt;moritz.fischer@ettus.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>fpga: zynq-fpga: Fix issue with drvdata being overwritten.</title>
<updated>2015-10-23T23:49:44+00:00</updated>
<author>
<name>Moritz Fischer</name>
<email>moritz.fischer@ettus.com</email>
</author>
<published>2015-10-22T18:56:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=28f98a12f7bac9c3e5ba85d245d32ec0910cf8e5'/>
<id>28f98a12f7bac9c3e5ba85d245d32ec0910cf8e5</id>
<content type='text'>
Upon registering a FPGA Manager low level driver, FPGA Manager
core overwrites the platform drvdata pointer. Prior to this commit
zynq-fpga falsely relied on this pointer to still be valid at remove()
time.

Reported-by: Alan Tull &lt;atull@opensource.altera.com&gt;
Signed-off-by: Moritz Fischer &lt;moritz.fischer@ettus.com&gt;
Acked-by: Alan Tull &lt;atull@opensource.altera.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Upon registering a FPGA Manager low level driver, FPGA Manager
core overwrites the platform drvdata pointer. Prior to this commit
zynq-fpga falsely relied on this pointer to still be valid at remove()
time.

Reported-by: Alan Tull &lt;atull@opensource.altera.com&gt;
Signed-off-by: Moritz Fischer &lt;moritz.fischer@ettus.com&gt;
Acked-by: Alan Tull &lt;atull@opensource.altera.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>fpga manager: remove unnecessary null pointer checks</title>
<updated>2015-10-23T23:49:44+00:00</updated>
<author>
<name>Alan Tull</name>
<email>atull@opensource.altera.com</email>
</author>
<published>2015-10-22T17:38:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=92d94a7ec552fafaa036fdb04d0894d6c444cafb'/>
<id>92d94a7ec552fafaa036fdb04d0894d6c444cafb</id>
<content type='text'>
Remove unnecessary null pointer checks.  We want the caller of
these functions to do their own pointer checks.  Add some
comments to document this.

Signed-off-by: Alan Tull &lt;atull@opensource.altera.com&gt;
Reviewed-by: Moritz Fischer &lt;moritz.fischer@ettus.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove unnecessary null pointer checks.  We want the caller of
these functions to do their own pointer checks.  Add some
comments to document this.

Signed-off-by: Alan Tull &lt;atull@opensource.altera.com&gt;
Reviewed-by: Moritz Fischer &lt;moritz.fischer@ettus.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>fpga manager: ensure lifetime with of_fpga_mgr_get</title>
<updated>2015-10-23T23:49:44+00:00</updated>
<author>
<name>Alan Tull</name>
<email>atull@opensource.altera.com</email>
</author>
<published>2015-10-22T17:38:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=654ba4cc0f3ed7c0f08bfb39f66059d8c42943ee'/>
<id>654ba4cc0f3ed7c0f08bfb39f66059d8c42943ee</id>
<content type='text'>
Ensure device and driver lifetime from of_fpga_mgr_get() to
fpga_mgr_put().

* Don't put_device() in of_fpga_mgr_get, do it in fpga_mgr_put().
  (still do put_device if there is an error).
* Do module_get on the low level driver.
* Don't need to module_get(THIS_MODULE) since we won't be allowed
  to unload the fpga manager core without unloading low level
  driver first.
* Remove unnedessary null check for node pointer.

Signed-off-by: Alan Tull &lt;atull@opensource.altera.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Ensure device and driver lifetime from of_fpga_mgr_get() to
fpga_mgr_put().

* Don't put_device() in of_fpga_mgr_get, do it in fpga_mgr_put().
  (still do put_device if there is an error).
* Do module_get on the low level driver.
* Don't need to module_get(THIS_MODULE) since we won't be allowed
  to unload the fpga manager core without unloading low level
  driver first.
* Remove unnedessary null check for node pointer.

Signed-off-by: Alan Tull &lt;atull@opensource.altera.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>fpga: zynq-fpga: Change fw format to handle bin instead of bit.</title>
<updated>2015-10-23T23:49:12+00:00</updated>
<author>
<name>Moritz Fischer</name>
<email>moritz.fischer@ettus.com</email>
</author>
<published>2015-10-20T17:19:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=4d10eaff5bfc69997a769f9c83b749f0a8c542fa'/>
<id>4d10eaff5bfc69997a769f9c83b749f0a8c542fa</id>
<content type='text'>
This gets rid of the code to strip away the header and byteswap,
as well as the check for the sync word.

Signed-off-by: Moritz Fischer &lt;moritz.fischer@ettus.com&gt;
Reviewed-by: Josh Cartwright &lt;joshc@ni.com&gt;
Acked-by: Michal Simek &lt;michal.simek@xilinx.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This gets rid of the code to strip away the header and byteswap,
as well as the check for the sync word.

Signed-off-by: Moritz Fischer &lt;moritz.fischer@ettus.com&gt;
Reviewed-by: Josh Cartwright &lt;joshc@ni.com&gt;
Acked-by: Michal Simek &lt;michal.simek@xilinx.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>fpga: zynq-fpga: Fix unbalanced clock handling</title>
<updated>2015-10-23T23:49:12+00:00</updated>
<author>
<name>Moritz Fischer</name>
<email>moritz.fischer@ettus.com</email>
</author>
<published>2015-10-19T20:35:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=6376931babd833dbd6f51e22a3de449ce6c60d61'/>
<id>6376931babd833dbd6f51e22a3de449ce6c60d61</id>
<content type='text'>
This commit fixes the unbalanced clock handling, where
a failed probe would leave the clock with an enable count of -1.

Reported-by: Josh Cartwright &lt;joshc@ni.com&gt;
Signed-off-by: Moritz Fischer &lt;moritz.fischer@ettus.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This commit fixes the unbalanced clock handling, where
a failed probe would leave the clock with an enable count of -1.

Reported-by: Josh Cartwright &lt;joshc@ni.com&gt;
Signed-off-by: Moritz Fischer &lt;moritz.fischer@ettus.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
</feed>
