<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in Makefile</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>48b66f8f - iio: Add hardware consumer buffer support</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/iio/buffer/Makefile#48b66f8f</link>
        <description>iio: Add hardware consumer buffer supportHardware consumer interface can be used when one IIO device hasa direct connection to another device in hardware.Signed-off-by: Lars-Peter Clausen &lt;lars@metafoo.de&gt;Signed-off-by: Arnaud Pouliquen &lt;arnaud.pouliquen@st.com&gt;Reviewed-by: Jonathan Cameron &lt;Jonathan.Cameron@huawei.com&gt;Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;

            List of files:
            /linux-6.15/drivers/iio/buffer/Makefile</description>
        <pubDate>Wed, 10 Jan 2018 10:13:03 +0000</pubDate>
        <dc:creator>Lars-Peter Clausen &lt;lars@metafoo.de&gt;</dc:creator>
    </item>
<item>
        <title>b2441318 - License cleanup: add SPDX GPL-2.0 license identifier to files with no license</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/iio/buffer/Makefile#b2441318</link>
        <description>License cleanup: add SPDX GPL-2.0 license identifier to files with no licenseMany source files in the tree are missing licensing information, whichmakes it harder for compliance tools to determine the correct license.By default all files without license information are under the defaultlicense of the kernel, which is GPL version 2.Update the files which contain no license information with the &apos;GPL-2.0&apos;SPDX license identifier.  The SPDX identifier is a legally bindingshorthand, which can be used instead of the full boiler plate text.This patch is based on work done by Thomas Gleixner and Kate Stewart andPhilippe Ombredanne.How this work was done:Patches were generated and checked against linux-4.14-rc6 for a subset ofthe use cases: - file had no licensing information it it. - file was a */uapi/* one with no licensing information in it, - file was a */uapi/* one with existing licensing information,Further patches will be generated in subsequent months to fix up caseswhere non-standard license headers were used, and references to licensehad to be inferred by heuristics based on keywords.The analysis to determine which SPDX License Identifier to be applied toa file was done in a spreadsheet of side by side results from of theoutput of two independent scanners (ScanCode &amp; Windriver) producing SPDXtag:value files created by Philippe Ombredanne.  Philippe prepared thebase worksheet, and did an initial spot review of a few 1000 files.The 4.13 kernel was the starting point of the analysis with 60,537 filesassessed.  Kate Stewart did a file by file comparison of the scannerresults in the spreadsheet to determine which SPDX license identifier(s)to be applied to the file. She confirmed any determination that was notimmediately clear with lawyers working with the Linux Foundation.Criteria used to select files for SPDX license identifier tagging was: - Files considered eligible had to be source code files. - Make and config files were included as candidates if they contained &gt;5   lines of source - File already had some variant of a license header in it (even if &lt;5   lines).All documentation files were explicitly excluded.The following heuristics were used to determine which SPDX licenseidentifiers to apply. - when both scanners couldn&apos;t find any license traces, file was   considered to have no license information in it, and the top level   COPYING file license applied.   For non */uapi/* files that summary was:   SPDX license identifier                            # files   ---------------------------------------------------|-------   GPL-2.0                                              11139   and resulted in the first patch in this series.   If that file was a */uapi/* path one, it was &quot;GPL-2.0 WITH   Linux-syscall-note&quot; otherwise it was &quot;GPL-2.0&quot;.  Results of that was:   SPDX license identifier                            # files   ---------------------------------------------------|-------   GPL-2.0 WITH Linux-syscall-note                        930   and resulted in the second patch in this series. - if a file had some form of licensing information in it, and was one   of the */uapi/* ones, it was denoted with the Linux-syscall-note if   any GPL family license was found in the file or had no licensing in   it (per prior point).  Results summary:   SPDX license identifier                            # files   ---------------------------------------------------|------   GPL-2.0 WITH Linux-syscall-note                       270   GPL-2.0+ WITH Linux-syscall-note                      169   ((GPL-2.0 WITH Linux-syscall-note) OR BSD-2-Clause)    21   ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)    17   LGPL-2.1+ WITH Linux-syscall-note                      15   GPL-1.0+ WITH Linux-syscall-note                       14   ((GPL-2.0+ WITH Linux-syscall-note) OR BSD-3-Clause)    5   LGPL-2.0+ WITH Linux-syscall-note                       4   LGPL-2.1 WITH Linux-syscall-note                        3   ((GPL-2.0 WITH Linux-syscall-note) OR MIT)              3   ((GPL-2.0 WITH Linux-syscall-note) AND MIT)             1   and that resulted in the third patch in this series. - when the two scanners agreed on the detected license(s), that became   the concluded license(s). - when there was disagreement between the two scanners (one detected a   license but the other didn&apos;t, or they both detected different   licenses) a manual inspection of the file occurred. - In most cases a manual inspection of the information in the file   resulted in a clear resolution of the license that should apply (and   which scanner probably needed to revisit its heuristics). - When it was not immediately clear, the license identifier was   confirmed with lawyers working with the Linux Foundation. - If there was any question as to the appropriate license identifier,   the file was flagged for further research and to be revisited later   in time.In total, over 70 hours of logged manual review was done on thespreadsheet to determine the SPDX license identifiers to apply to thesource files by Kate, Philippe, Thomas and, in some cases, confirmationby lawyers working with the Linux Foundation.Kate also obtained a third independent scan of the 4.13 code base fromFOSSology, and compared selected files where the other two scannersdisagreed against that SPDX file, to see if there was new insights.  TheWindriver scanner is based on an older version of FOSSology in part, sothey are related.Thomas did random spot checks in about 500 files from the spreadsheetsfor the uapi headers and agreed with SPDX license identifier in thefiles he inspected. For the non-uapi files Thomas did random spot checksin about 15000 files.In initial set of patches against 4.14-rc6, 3 files were found to havecopy/paste license identifier errors, and have been fixed to reflect thecorrect identifier.Additionally Philippe spent 10 hours this week doing a detailed manualinspection and review of the 12,461 patched files from the initial patchversion early this week with: - a full scancode scan run, collecting the matched texts, detected   license ids and scores - reviewing anything where there was a license detected (about 500+   files) to ensure that the applied SPDX license was correct - reviewing anything where there was no detection but the patch license   was not GPL-2.0 WITH Linux-syscall-note to ensure that the applied   SPDX license was correctThis produced a worksheet with 20 files needing minor correction.  Thisworksheet was then exported into 3 different .csv files for thedifferent types of files to be modified.These .csv files were then reviewed by Greg.  Thomas wrote a script toparse the csv files and add the proper SPDX tag to the file, in theformat that the file expected.  This script was further refined by Gregbased on the output to detect more types of files automatically and todistinguish between header and source .c files (which need differentcomment types.)  Finally Greg ran the script using the .csv files togenerate the patches.Reviewed-by: Kate Stewart &lt;kstewart@linuxfoundation.org&gt;Reviewed-by: Philippe Ombredanne &lt;pombredanne@nexb.com&gt;Reviewed-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

            List of files:
            /linux-6.15/drivers/iio/buffer/Makefile</description>
        <pubDate>Wed, 01 Nov 2017 14:07:57 +0000</pubDate>
        <dc:creator>Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;</dc:creator>
    </item>
<item>
        <title>2d6ca60f - iio: Add a DMAengine framework based buffer</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/iio/buffer/Makefile#2d6ca60f</link>
        <description>iio: Add a DMAengine framework based bufferAdd a generic fully device independent DMA buffer implementation that usesthe DMAegnine framework to perform the DMA transfers. This can be used byconverter drivers that whish to provide a DMA buffer for converters thatare connected to a DMA core that implements the DMAengine API.Apart from allocating the buffer using iio_dmaengine_buffer_alloc() andfreeing it using iio_dmaengine_buffer_free() no additional converter driverspecific code is required when using this DMA buffer implementation.Signed-off-by: Lars-Peter Clausen &lt;lars@metafoo.de&gt;Signed-off-by: Jonathan Cameron &lt;jic23@kernel.org&gt;

            List of files:
            /linux-6.15/drivers/iio/buffer/Makefile</description>
        <pubDate>Tue, 13 Oct 2015 16:10:29 +0000</pubDate>
        <dc:creator>Lars-Peter Clausen &lt;lars@metafoo.de&gt;</dc:creator>
    </item>
<item>
        <title>670b19ae - iio: Add generic DMA buffer infrastructure</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/iio/buffer/Makefile#670b19ae</link>
        <description>iio: Add generic DMA buffer infrastructureThe traditional approach used in IIO to implement buffered capture requiresthe generation of at least one interrupt per sample. In the interrupthandler the driver reads the sample from the device and copies it to asoftware buffer. This approach has a rather large per sample overheadassociated with it. And while it works fine for samplerates in the range ofup to 1000 samples per second it starts to consume a rather large share ofthe available CPU processing time once we go beyond that, this isespecially true on an embedded system with limited processing power. Theregular interrupt also causes increased power consumption by not allowingthe hardware into deeper sleep states, which is something that becomes moreand more important on mobile battery powered devices.And while the recently added watermark support mitigates some of the issuesby allowing the device to generate interrupts at a rate lower than the dataoutput rate, this still requires a storage buffer inside the device andeven if it exists it is only a few 100 samples deep at most.DMA support on the other hand allows to capture multiple millions or evenmore samples without any CPU interaction. This allows the CPU to either goto sleep for longer periods or focus on other tasks which increases overallsystem performance and power consumption. In addition to that some devicesmight not even offer a way to read the data other than using DMA, whichmakes DMA mandatory to use for them.The tasks involved in implementing a DMA buffer can be divided into twocategories. The first category is memory buffer management (allocation,mapping, etc.) and hooking this up the IIO buffer callbacks like read(),enable(), disable(), etc. The second category of tasks is to setup theDMA hardware and manage the DMA transfers. Tasks from the first categorywill be very similar for all IIO drivers supporting DMA buffers, while thetasks from the second category will be hardware specific.This patch implements a generic infrastructure that take care of the formertasks. It provides a set of functions that implement the standard IIObuffer iio_buffer_access_funcs callbacks. These can either be used as is orbe overloaded and augmented with driver specific code where necessary.For the DMA buffer support infrastructure that is introduced in this seriessample data is grouped by so called blocks. A block is the basic unit atwhich data is exchanged between the application and the hardware. Theapplication is responsible for allocating the memory associated with theblock and then passes the block to the hardware. When the hardware hascaptured the amount of samples equal to size of a block it will notify theapplication, which can then read the data from the block and process it.The block size can freely chosen (within the constraints of the hardware).This allows to make a trade-off between latency and management overhead.The larger the block size the lower the per sample overhead but the latencybetween when the data was captured and when the application will be able toaccess it increases, in a similar way smaller block sizes have a larger persample management overhead but a lower latency. The ideal block size thusdepends on system and application requirements.For the time being the infrastructure only implements a simple doublebuffered scheme which allocates two blocks each with half the size of theconfigured buffer size. This provides basic support for capturingcontinuous uninterrupted data over the existing file-IO ABI. Futureextensions to the DMA buffer infrastructure will give applications a morefine grained control over how many blocks are allocated and the size ofeach block. But this requires userspace ABI additions which areintentionally not part of this patch and will be added separately.Tasks of the second category need to be implemented by a device specificdriver. They can be hooked up into the generic infrastructure using twosimple callbacks, submit() and abort().The submit() callback is used to schedule DMA transfers for blocks. Once aDMA transfer has been completed it is expected that the buffer driver callsiio_dma_buffer_block_done() to notify. The abort() callback is used forstopping all pending and active DMA transfers when the buffer is disabled.Signed-off-by: Lars-Peter Clausen &lt;lars@metafoo.de&gt;Signed-off-by: Jonathan Cameron &lt;jic23@kernel.org&gt;

            List of files:
            /linux-6.15/drivers/iio/buffer/Makefile</description>
        <pubDate>Tue, 13 Oct 2015 16:10:28 +0000</pubDate>
        <dc:creator>Lars-Peter Clausen &lt;lars@metafoo.de&gt;</dc:creator>
    </item>
<item>
        <title>8548a63b - iio: Move generic buffer implementations to sub-directory</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/iio/buffer/Makefile#8548a63b</link>
        <description>iio: Move generic buffer implementations to sub-directoryFor generic IIO trigger implementations we already have a sub-directory,but the generic buffer implementations currently reside in the IIOtop-level directory. The main reason is that things have historically growninto this form.With more generic buffer implementations on its way now is the perfect timeto clean this up and introduce a sub-directory for generic bufferimplementations to avoid too much clutter in the top-level directory.Signed-off-by: Lars-Peter Clausen &lt;lars@metafoo.de&gt;Signed-off-by: Jonathan Cameron &lt;jic23@kernel.org&gt;

            List of files:
            /linux-6.15/drivers/iio/buffer/Makefile</description>
        <pubDate>Fri, 14 Aug 2015 14:54:55 +0000</pubDate>
        <dc:creator>Lars-Peter Clausen &lt;lars@metafoo.de&gt;</dc:creator>
    </item>
</channel>
</rss>
