<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:syn="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/">
  <channel rdf:about="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure">
    <title>gmane.linux.drivers.video-input-infrastructure</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure</link>
    <description/>
    <syn:updatePeriod>hourly</syn:updatePeriod>
    <syn:updateFrequency>1</syn:updateFrequency>
    <syn:updateBase>1901-01-01T00:00+00:00</syn:updateBase>
    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48728"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48727"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48726"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48725"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48724"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48723"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48722"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48721"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48720"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48719"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48718"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48717"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48716"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48715"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48714"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48713"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48712"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48711"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48710"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48709"/>
      </rdf:Seq>
    </items>
    <image rdf:resource="http://gmane.org/img/gmane-25t.png"/>
    <textinput rdf:resource=""/>
  </channel>
  <image rdf:about="http://gmane.org/img/gmane-25t.png">
    <title>Gmane</title>
    <url>http://gmane.org/img/gmane-25t.png</url>
    <link>http://gmane.org</link>
  </image>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48728">
    <title>Re: [PATCH 1/1] as3645a: Remove set_power() from platform data</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48728</link>
    <description>&lt;pre&gt;Hi Sakari,

On Wednesday 23 May 2012 14:19:51 Sakari Ailus wrote:

What about on the N9 ?

&lt;/pre&gt;</description>
    <dc:creator>Laurent Pinchart</dc:creator>
    <dc:date>2012-05-23T11:31:26</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48727">
    <title>Re: [PATCH 0/2] s5p-mfc: added encoder support for end of stream handling</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48727</link>
    <description>&lt;pre&gt;
Application can always set this flag, it will be ignored by drivers not
requiring it.

I see some drawback of this solution - application should know if the
frame enqueued to the driver is the last one. If the application
receives frames to encode form an external source (for example via pipe)
it often does not know if the frame it received is the last one. So to
be able to properly queue frame to the driver it should wait with frame
queuing until it knows there is next frame or end-of-stream is reached,
in such situation it will properly set flag before queuing.

Alternative to "V4L2_BUF_FLAG_EOS" solution is to implement "wait for
next frame" logic directly into the driver. In such case application can
use empty buffer to signal the end of the stream. Driver waits with
frame processing if there are at least two buffers in output queue. Then
it checks if the second buffer is empty if not it process the first
buffer as a normal frame and repeats procedure, if yes it process the
first buffer as the last fram&lt;/pre&gt;</description>
    <dc:creator>Andrzej Hajda</dc:creator>
    <dc:date>2012-05-23T11:20:03</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48726">
    <title>Re: [PATCH 1/1] as3645a: Remove set_power() from platform data</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48726</link>
    <description>&lt;pre&gt;Hi Laurent,

On Wed, May 23, 2012 at 01:00:08PM +0200, Laurent Pinchart wrote:

I don't know why was it there in the first place. Probably to make it easier
to use the driver on boards that required e.g. a regulator for the chip.

But typically they're connected to battery directly. The idle power
consumption is just some tens of µA.

Cheers,

&lt;/pre&gt;</description>
    <dc:creator>Sakari Ailus</dc:creator>
    <dc:date>2012-05-23T11:19:51</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48725">
    <title>Re: [PATCH 1/1] as3645a: Remove set_power() from platform data</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48725</link>
    <description>&lt;pre&gt;Hi Sakari,

Thanks for the patch.

On Wednesday 16 May 2012 06:12:49 Sakari Ailus wrote:

If the chip is powered on constantly, why do we need a .s_power() subdev 
operation at all ?


&lt;/pre&gt;</description>
    <dc:creator>Laurent Pinchart</dc:creator>
    <dc:date>2012-05-23T11:00:08</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48724">
    <title>[PATCH] dma-buf: minor documentation fixes.</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48724</link>
    <description>&lt;pre&gt;Some minor inline documentation fixes for gaps resulting from new patches.

Signed-off-by: Sumit Semwal &amp;lt;sumit.semwal&amp;lt; at &amp;gt;ti.com&amp;gt;
---
 drivers/base/dma-buf.c  |    9 +++++----
 include/linux/dma-buf.h |    3 +++
 2 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/base/dma-buf.c b/drivers/base/dma-buf.c
index c3c88b0..24e88fe 100644
--- a/drivers/base/dma-buf.c
+++ b/drivers/base/dma-buf.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -429,7 +429,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; EXPORT_SYMBOL_GPL(dma_buf_kunmap);
 
 /**
  * dma_buf_mmap - Setup up a userspace mmap with the given vma
- * &amp;lt; at &amp;gt;dma_buf:[in]buffer that should back the vma
+ * &amp;lt; at &amp;gt;dmabuf:[in]buffer that should back the vma
  * &amp;lt; at &amp;gt;vma:[in]vma for the mmap
  * &amp;lt; at &amp;gt;pgoff:[in]offset in pages where this mmap should start within the
  * dma-buf buffer.
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -470,8 +470,9 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; int dma_buf_mmap(struct dma_buf *dmabuf, struct vm_area_struct *vma,
 EXPORT_SYMBOL_GPL(dma_buf_mmap);
 
 /**
- * dma_buf_vmap - Create virtual mapping for the buffer object into kernel address space. Same restrictions as for vmap and frien&lt;/pre&gt;</description>
    <dc:creator>Sumit Semwal</dc:creator>
    <dc:date>2012-05-23T10:08:48</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48723">
    <title>[PATCH 39/43] rc-core: use struct rc_event to signal TX events from userspace</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48723</link>
    <description>&lt;pre&gt;Using struct rc_event as the data unit for writes from userspace provides
more flexibility and easier future compatibility with future developments
(e.g. if rc-core grew support for some very different transmission, such
as RF transmission).

Signed-off-by: David Härdeman &amp;lt;david&amp;lt; at &amp;gt;hardeman.nu&amp;gt;
---
 drivers/media/rc/ene_ir.c        |   24 ++++++------
 drivers/media/rc/ene_ir.h        |    2 -
 drivers/media/rc/ir-lirc-codec.c |   12 +++---
 drivers/media/rc/ite-cir.c       |   19 +++++----
 drivers/media/rc/mceusb.c        |   10 +++--
 drivers/media/rc/nuvoton-cir.c   |   10 +++--
 drivers/media/rc/rc-loopback.c   |   10 ++++-
 drivers/media/rc/rc-main.c       |   18 +++------
 drivers/media/rc/redrat3.c       |   20 ++++++++--
 drivers/media/rc/winbond-cir.c   |   22 +++++------
 include/media/rc-core.h          |   79 +++++++++++++++++++-------------------
 include/media/rc-ir-raw.h        |    6 +++
 12 files changed, 133 insertions(+), 99 deletions(-)

diff --git a/drivers/media/rc/ene_ir.c b/drivers/med&lt;/pre&gt;</description>
    <dc:creator>David Härdeman</dc:creator>
    <dc:date>2012-05-23T09:45:25</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48722">
    <title>[PATCH 31/43] rc-core: allow empty keymaps</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48722</link>
    <description>&lt;pre&gt;Remove the RC_MAP_EMPTY hack and instead allow for empty keymaps.

Signed-off-by: David Härdeman &amp;lt;david&amp;lt; at &amp;gt;hardeman.nu&amp;gt;
---
 drivers/media/dvb/dvb-usb/af9015.c         |    4 ----
 drivers/media/dvb/dvb-usb/af9035.c         |    1 -
 drivers/media/dvb/dvb-usb/dvb-usb-remote.c |    4 +---
 drivers/media/dvb/dvb-usb/rtl28xxu.c       |    2 --
 drivers/media/rc/gpio-ir-recv.c            |    1 -
 drivers/media/rc/rc-keytable.c             |   13 ++++---------
 drivers/media/rc/rc-loopback.c             |    1 -
 drivers/media/rc/rc-main.c                 |   17 +----------------
 drivers/media/video/cx88/cx88-input.c      |    6 ------
 drivers/media/video/ir-kbd-i2c.c           |    4 +---
 drivers/media/video/ivtv/ivtv-i2c.c        |    2 +-
 include/media/rc-map.h                     |    1 -
 12 files changed, 8 insertions(+), 48 deletions(-)

diff --git a/drivers/media/dvb/dvb-usb/af9015.c b/drivers/media/dvb/dvb-usb/af9015.c
index 4733044..b82e235 100644
--- a/drivers/media/dvb/dvb-usb/af9015.c
+++ b/driver&lt;/pre&gt;</description>
    <dc:creator>David Härdeman</dc:creator>
    <dc:date>2012-05-23T09:44:43</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48721">
    <title>[PATCH 21/43] rc-loopback: add RCIOCGIRTX ioctl support</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48721</link>
    <description>&lt;pre&gt;As an example, this patch adds support for the new RCIOCGIRRX ioctl
to rc-loopback.

Signed-off-by: David Härdeman &amp;lt;david&amp;lt; at &amp;gt;hardeman.nu&amp;gt;
---
 drivers/media/rc/rc-loopback.c |   26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/drivers/media/rc/rc-loopback.c b/drivers/media/rc/rc-loopback.c
index 6d0e9fb..a04b39b 100644
--- a/drivers/media/rc/rc-loopback.c
+++ b/drivers/media/rc/rc-loopback.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -196,6 +196,31 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int loop_set_ir_rx(struct rc_dev *dev, struct rc_ir_rx *rx)
 return 0;
 }
 
+/**
+ * loop_get_ir_tx() - returns the current TX settings
+ * &amp;lt; at &amp;gt;dev: the &amp;amp;struct rc_dev to get the settings for
+ * &amp;lt; at &amp;gt;tx: the &amp;amp;struct rc_ir_tx to fill in with the current settings
+ *
+ * This function is used to return the current TX settings.
+ */
+static void loop_get_ir_tx(struct rc_dev *dev, struct rc_ir_tx *tx)
+{
+struct loopback_dev *lodev = dev-&amp;gt;priv;
+
+tx-&amp;gt;tx_supported = RXMASK_REGULAR | RXMASK_LEARNING;
+tx-&amp;gt;tx_connected = RXMASK_REGULAR | RXMASK_LEARNING;
+tx-&amp;gt;tx_enabled = l&lt;/pre&gt;</description>
    <dc:creator>David Härdeman</dc:creator>
    <dc:date>2012-05-23T09:43:50</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48720">
    <title>[PATCH 08/43] rc-core: use a device table rather than an atomic number</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48720</link>
    <description>&lt;pre&gt;This patch changes rc-core to use a device table rather than atomic integers
to assign unique numbers to each rc device. This is in preparation for
introducing rc-core chardevs.

Signed-off-by: David Härdeman &amp;lt;david&amp;lt; at &amp;gt;hardeman.nu&amp;gt;
---
 drivers/media/rc/ir-raw.c  |    2 +-
 drivers/media/rc/rc-main.c |   41 +++++++++++++++++++++++++++++++++++------
 include/media/rc-core.h    |    4 ++--
 3 files changed, 38 insertions(+), 9 deletions(-)

diff --git a/drivers/media/rc/ir-raw.c b/drivers/media/rc/ir-raw.c
index 6b3c9e5..7729abe 100644
--- a/drivers/media/rc/ir-raw.c
+++ b/drivers/media/rc/ir-raw.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -268,7 +268,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; int ir_raw_event_register(struct rc_dev *dev)
 
 spin_lock_init(&amp;amp;dev-&amp;gt;raw-&amp;gt;lock);
 dev-&amp;gt;raw-&amp;gt;thread = kthread_run(ir_raw_event_thread, dev-&amp;gt;raw,
-       "rc%ld", dev-&amp;gt;devno);
+       "rc%u", dev-&amp;gt;minor);
 
 if (IS_ERR(dev-&amp;gt;raw-&amp;gt;thread)) {
 rc = PTR_ERR(dev-&amp;gt;raw-&amp;gt;thread);
diff --git a/drivers/media/rc/rc-main.c b/drivers/media/rc/rc-main.c
index 6e02314..8da7701 100644
--- a/drivers/med&lt;/pre&gt;</description>
    <dc:creator>David Härdeman</dc:creator>
    <dc:date>2012-05-23T09:42:42</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48719">
    <title>[PATCH 43/43] rc-core: make rc-core.h userspace friendly</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48719</link>
    <description>&lt;pre&gt;A few ifdef __KERNEL__ and some reorganisation to make rc-core.h usable from
userspace programs.

Signed-off-by: David Härdeman &amp;lt;david&amp;lt; at &amp;gt;hardeman.nu&amp;gt;
---
 include/media/rc-core.h |   76 +++++++++++++++++++++++++++++++++--------------
 1 file changed, 54 insertions(+), 22 deletions(-)

diff --git a/include/media/rc-core.h b/include/media/rc-core.h
index e311242..0685a4c 100644
--- a/include/media/rc-core.h
+++ b/include/media/rc-core.h
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -16,20 +16,21 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt;
 #ifndef _RC_CORE
 #define _RC_CORE
 
+#ifdef __KERNEL__
 #include &amp;lt;linux/spinlock.h&amp;gt;
 #include &amp;lt;linux/kfifo.h&amp;gt;
 #include &amp;lt;linux/time.h&amp;gt;
 #include &amp;lt;linux/timer.h&amp;gt;
 #include &amp;lt;media/rc-map.h&amp;gt;
+#else
+#include &amp;lt;sys/time.h&amp;gt;
+#include &amp;lt;sys/ioctl.h&amp;gt;
+#include &amp;lt;sys/types.h&amp;gt;
+#include &amp;lt;linux/types.h&amp;gt;
+#endif
 
-extern int rc_core_debug;
-#define IR_dprintk(level, fmt, ...)\
-do {\
-if (rc_core_debug &amp;gt;= level)\
-pr_debug("%s: " fmt, __func__, ##__VA_ARGS__);\
-} while (0)
-
-#define RC_VERSION 0x010000
+#define RC_VERSION0x010000
+#define RC_MAX_&lt;/pre&gt;</description>
    <dc:creator>David Härdeman</dc:creator>
    <dc:date>2012-05-23T09:45:46</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48718">
    <title>[PATCH 14/43] rc-core: allow chardev to be written</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48718</link>
    <description>&lt;pre&gt;Add write functionality to the rc chardev (for use in transmitting remote
control commands on capable hardware).

The data format of the TX data is probably going to have to be dependent
on the rc_driver_type.

Signed-off-by: David Härdeman &amp;lt;david&amp;lt; at &amp;gt;hardeman.nu&amp;gt;
---
 drivers/media/rc/rc-main.c |   68 ++++++++++++++++++++++++++++++++++++++++++++
 include/media/rc-core.h    |    2 +
 2 files changed, 70 insertions(+)

diff --git a/drivers/media/rc/rc-main.c b/drivers/media/rc/rc-main.c
index 80d6dac..3389822 100644
--- a/drivers/media/rc/rc-main.c
+++ b/drivers/media/rc/rc-main.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1211,6 +1211,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; struct rc_dev *rc_allocate_device(void)
 INIT_KFIFO(dev-&amp;gt;txfifo);
 spin_lock_init(&amp;amp;dev-&amp;gt;txlock);
 init_waitqueue_head(&amp;amp;dev-&amp;gt;rxwait);
+init_waitqueue_head(&amp;amp;dev-&amp;gt;txwait);
 spin_lock_init(&amp;amp;dev-&amp;gt;rc_map.lock);
 spin_lock_init(&amp;amp;dev-&amp;gt;keylock);
 mutex_init(&amp;amp;dev-&amp;gt;lock);
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1409,6 +1410,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; void rc_unregister_device(struct rc_dev *dev)
 kill_fasync(&amp;amp;client-&amp;gt;fasync, SIGIO, POLL_HUP);
 spin_unlock(&amp;amp;dev-&amp;gt;client_loc&lt;/pre&gt;</description>
    <dc:creator>David Härdeman</dc:creator>
    <dc:date>2012-05-23T09:43:14</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48717">
    <title>[PATCH 27/43] rc-core: make the keytable of rc_dev an array</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48717</link>
    <description>&lt;pre&gt;This is another step towards allowing multiple keytables per rc_dev.

struct rc_dev is changed to hold an array of keytables (used later for
indexed access to keytables) as well as a list of the same keytables
(used for iteration in fast paths).

Signed-off-by: David Härdeman &amp;lt;david&amp;lt; at &amp;gt;hardeman.nu&amp;gt;
---
 drivers/media/rc/rc-keytable.c |   61 ++++++++++++++++++++++++----------
 drivers/media/rc/rc-main.c     |   71 +++++++++++++++++++++++++++++++++++-----
 include/media/rc-core.h        |    6 +++
 3 files changed, 110 insertions(+), 28 deletions(-)

diff --git a/drivers/media/rc/rc-keytable.c b/drivers/media/rc/rc-keytable.c
index 7096f44..f422a3b 100644
--- a/drivers/media/rc/rc-keytable.c
+++ b/drivers/media/rc/rc-keytable.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -568,6 +568,35 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; out:
 return retval;
 }
 
+static u32 rc_get_keycode(struct rc_keytable *kt,
+  enum rc_type protocol, u64 scancode)
+{
+struct rc_map *rc_map;
+unsigned int keycode = KEY_RESERVED;
+unsigned int index;
+unsigned long flags;
+
+rc_map = &amp;amp;kt-&amp;gt;rc_map;
+if (!rc&lt;/pre&gt;</description>
    <dc:creator>David Härdeman</dc:creator>
    <dc:date>2012-05-23T09:44:22</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48716">
    <title>[PATCH 20/43] rc-core: add an ioctl for getting IR TX settings</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48716</link>
    <description>&lt;pre&gt;This ioctl follows the same rationale and structure as the ioctl for
getting IR RX settings (RCIOCGIRRX) but it works on TX settings instead.

As with the RX ioctl, it would be nice if people could check struct
rc_ir_tx carefully to make sure that their favourite parameter
hasn't been left out.

Signed-off-by: David Härdeman &amp;lt;david&amp;lt; at &amp;gt;hardeman.nu&amp;gt;
---
 drivers/media/rc/rc-main.c |   12 ++++++++++++
 include/media/rc-core.h    |   38 ++++++++++++++++++++++++++++++++++++++
 2 files changed, 50 insertions(+)

diff --git a/drivers/media/rc/rc-main.c b/drivers/media/rc/rc-main.c
index 390673c..e2b2e8c 100644
--- a/drivers/media/rc/rc-main.c
+++ b/drivers/media/rc/rc-main.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1703,6 +1703,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static long rc_do_ioctl(struct rc_dev *dev, unsigned int cmd, unsigned long arg)
 void __user *p = (void __user *)arg;
 unsigned int __user *ip = (unsigned int __user *)p;
 struct rc_ir_rx rx;
+struct rc_ir_tx tx;
 int error;
 
 switch (cmd) {
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1740,6 +1741,17 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static long rc_do_ioctl(struct rc_dev *dev, unsigned &lt;/pre&gt;</description>
    <dc:creator>David Härdeman</dc:creator>
    <dc:date>2012-05-23T09:43:45</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48715">
    <title>[PATCH 19/43] rc-loopback: add RCIOCSIRRX ioctl support</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48715</link>
    <description>&lt;pre&gt;As an example, this patch adds support for the new RCIOCSIRRX ioctl
to rc-loopback and removes deprecated functions without a loss in
functionality (as LIRC will automatically use the new functions).

Signed-off-by: David Härdeman &amp;lt;david&amp;lt; at &amp;gt;hardeman.nu&amp;gt;
---
 drivers/media/rc/rc-loopback.c |   84 ++++++++++++++++++++--------------------
 1 file changed, 42 insertions(+), 42 deletions(-)

diff --git a/drivers/media/rc/rc-loopback.c b/drivers/media/rc/rc-loopback.c
index 7977b75..6d0e9fb 100644
--- a/drivers/media/rc/rc-loopback.c
+++ b/drivers/media/rc/rc-loopback.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -86,21 +86,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int loop_set_tx_duty_cycle(struct rc_dev *dev, u32 duty_cycle)
 return 0;
 }
 
-static int loop_set_rx_carrier_range(struct rc_dev *dev, u32 min, u32 max)
-{
-struct loopback_dev *lodev = dev-&amp;gt;priv;
-
-if (min &amp;lt; 1 || min &amp;gt; max) {
-dprintk("invalid rx carrier range %u to %u\n", min, max);
-return -EINVAL;
-}
-
-dprintk("setting rx carrier range %u to %u\n", min, max);
-lodev-&amp;gt;rxcarriermin = min;
-lodev-&amp;gt;rxcarrierma&lt;/pre&gt;</description>
    <dc:creator>David Härdeman</dc:creator>
    <dc:date>2012-05-23T09:43:40</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48714">
    <title>[PATCH 11/43] mceusb: remove pointless kmalloc</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48714</link>
    <description>&lt;pre&gt;The previous code allocated a char buffer of size MCE_CMDBUF_SIZE (384) by
kzalloc():ing sizeof(unsigned) * MCE_CMDBUF_SIZE bytes.

The buffer was therefore 4 * the necessary size.

Additionally, zeroing out the buffer is pointless.

Replace the allocated buffer with a stack buffer.

Signed-off-by: David Härdeman &amp;lt;david&amp;lt; at &amp;gt;hardeman.nu&amp;gt;
---
 drivers/media/rc/mceusb.c |    7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/drivers/media/rc/mceusb.c b/drivers/media/rc/mceusb.c
index f0f053d..9f546be 100644
--- a/drivers/media/rc/mceusb.c
+++ b/drivers/media/rc/mceusb.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -785,11 +785,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int mceusb_tx_ir(struct rc_dev *dev, unsigned *txbuf, unsigned count)
 struct mceusb_dev *ir = dev-&amp;gt;priv;
 int i, ret = 0;
 int cmdcount = 0;
-unsigned char *cmdbuf; /* MCE command buffer */
-
-cmdbuf = kzalloc(sizeof(unsigned) * MCE_CMDBUF_SIZE, GFP_KERNEL);
-if (!cmdbuf)
-return -ENOMEM;
+unsigned char cmdbuf[MCE_CMDBUF_SIZE]; /* MCE command buffer */
 
 /* MCE tx init header */
 cmdbuf[&lt;/pre&gt;</description>
    <dc:creator>David Härdeman</dc:creator>
    <dc:date>2012-05-23T09:42:58</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48713">
    <title>[PATCH 30/43] rc-core: make keytable RCU-friendly</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48713</link>
    <description>&lt;pre&gt;Change struct rc_keytable to be RCU-friendly by kmalloc():ing an
entire new scancode,protocol &amp;lt;-&amp;gt; keycode table every time the table
is changed (i.e. via EVIOCSKEYCODE(_V2)).

The advantage is that the performance-critical keycode lookup path
can be made entirely lock-free and that GFP_ATOMIC allocations
can be avoided entirely at the cost of a couple of extra kmalloc()
calls when changing a keytable (which is normally done once during
boot).

Signed-off-by: David Härdeman &amp;lt;david&amp;lt; at &amp;gt;hardeman.nu&amp;gt;
---
 drivers/media/rc/rc-keytable.c |  671 +++++++++++++++++++---------------------
 include/media/rc-core.h        |   32 +-
 2 files changed, 334 insertions(+), 369 deletions(-)

diff --git a/drivers/media/rc/rc-keytable.c b/drivers/media/rc/rc-keytable.c
index eb48358..d6e68d0 100644
--- a/drivers/media/rc/rc-keytable.c
+++ b/drivers/media/rc/rc-keytable.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -24,12 +24,10 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt;
 #include &amp;lt;linux/poll.h&amp;gt;
 #include "rc-core-priv.h"
 
-/* Sizes are in bytes, 256 bytes allows for 32 entries on x64 */
-#define RC_TAB_MIN_SI&lt;/pre&gt;</description>
    <dc:creator>David Härdeman</dc:creator>
    <dc:date>2012-05-23T09:44:38</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48712">
    <title>[PATCH 05/43] rc-core: merge rc5 and streamzap decoders</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48712</link>
    <description>&lt;pre&gt;Now that the protocol is part of the scancode, it is pretty easy to merge
the rc5 and streamzap decoders. An additional advantage is that the decoder
is now stricter as it waits for the trailing silence before determining that
a command is a valid rc5/streamzap command (which avoids collisions that I've
seen with e.g. Sony protocols).

Signed-off-by: David Härdeman &amp;lt;david&amp;lt; at &amp;gt;hardeman.nu&amp;gt;
---
 drivers/media/rc/Kconfig                |   12 --
 drivers/media/rc/Makefile               |    1 
 drivers/media/rc/ir-rc5-decoder.c       |   51 ++++++----
 drivers/media/rc/ir-rc5-sz-decoder.c    |  154 -------------------------------
 drivers/media/rc/keymaps/rc-streamzap.c |    4 -
 drivers/media/rc/rc-core-priv.h         |    8 --
 drivers/media/rc/streamzap.c            |   10 --
 7 files changed, 31 insertions(+), 209 deletions(-)
 delete mode 100644 drivers/media/rc/ir-rc5-sz-decoder.c

diff --git a/drivers/media/rc/Kconfig b/drivers/media/rc/Kconfig
index f97eeb8..090872b 100644
--- a/drivers/media/rc/Kconfig
++&lt;/pre&gt;</description>
    <dc:creator>David Härdeman</dc:creator>
    <dc:date>2012-05-23T09:42:27</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48711">
    <title>[PATCH 07/43] rc-core: initialize rc-core earlier if built-in</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48711</link>
    <description>&lt;pre&gt;rc-core is a subsystem so it should be registered earlier if built into the
kernel.

Signed-off-by: David Härdeman &amp;lt;david&amp;lt; at &amp;gt;hardeman.nu&amp;gt;
---
 drivers/media/rc/rc-main.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/media/rc/rc-main.c b/drivers/media/rc/rc-main.c
index 0e50a84..6e02314 100644
--- a/drivers/media/rc/rc-main.c
+++ b/drivers/media/rc/rc-main.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1302,7 +1302,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void __exit rc_core_exit(void)
 rc_map_unregister(&amp;amp;empty_map);
 }
 
-module_init(rc_core_init);
+subsys_initcall(rc_core_init);
 module_exit(rc_core_exit);
 
 int rc_core_debug;    /* ir_debug level (0,1,2) */

&lt;/pre&gt;</description>
    <dc:creator>David Härdeman</dc:creator>
    <dc:date>2012-05-23T09:42:37</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48710">
    <title>[PATCH 37/43] rc-core: don't report scancodes via input devices</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48710</link>
    <description>&lt;pre&gt;The scancode that is reported via the input device(s) is now incomplete
(missing the protocol) and redundant.

Signed-off-by: David Härdeman &amp;lt;david&amp;lt; at &amp;gt;hardeman.nu&amp;gt;
---
 drivers/media/rc/rc-keytable.c |   21 +++++----------------
 1 file changed, 5 insertions(+), 16 deletions(-)

diff --git a/drivers/media/rc/rc-keytable.c b/drivers/media/rc/rc-keytable.c
index 84c6e96..d0777cb 100644
--- a/drivers/media/rc/rc-keytable.c
+++ b/drivers/media/rc/rc-keytable.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -611,17 +611,10 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; void rc_keytable_repeat(struct rc_keytable *kt)
 unsigned long flags;
 
 spin_lock_irqsave(&amp;amp;kt-&amp;gt;key_lock, flags);
-
-input_event(kt-&amp;gt;idev, EV_MSC, MSC_SCAN, kt-&amp;gt;last_scancode);
-input_sync(kt-&amp;gt;idev);
-
-if (!kt-&amp;gt;key_pressed)
-goto out;
-
-kt-&amp;gt;keyup_jiffies = jiffies + msecs_to_jiffies(RC_KEYPRESS_TIMEOUT);
-mod_timer(&amp;amp;kt-&amp;gt;timer_keyup, kt-&amp;gt;keyup_jiffies);
-
-out:
+if (kt-&amp;gt;key_pressed) {
+kt-&amp;gt;keyup_jiffies = jiffies + msecs_to_jiffies(RC_KEYPRESS_TIMEOUT);
+mod_timer(&amp;amp;kt-&amp;gt;timer_keyup, kt-&amp;gt;keyup_jiffies);
+}
 spin_unlock_ir&lt;/pre&gt;</description>
    <dc:creator>David Härdeman</dc:creator>
    <dc:date>2012-05-23T09:45:14</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48709">
    <title>[PATCH 23/43] rc-loopback: add RCIOCSIRTX ioctl support</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48709</link>
    <description>&lt;pre&gt;As an example, this patch adds support for the new RCIOCSIRTX ioctl
to rc-loopback and removes deprecated functions without a loss in
functionality (as LIRC will automatically use the new functions).

Signed-off-by: David Härdeman &amp;lt;david&amp;lt; at &amp;gt;hardeman.nu&amp;gt;
---
 drivers/media/rc/rc-loopback.c |   59 +++++++++++++---------------------------
 1 file changed, 19 insertions(+), 40 deletions(-)

diff --git a/drivers/media/rc/rc-loopback.c b/drivers/media/rc/rc-loopback.c
index a04b39b..de9a75e 100644
--- a/drivers/media/rc/rc-loopback.c
+++ b/drivers/media/rc/rc-loopback.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -49,43 +49,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; struct loopback_dev {
 
 static struct loopback_dev loopdev;
 
-static int loop_set_tx_mask(struct rc_dev *dev, u32 mask)
-{
-struct loopback_dev *lodev = dev-&amp;gt;priv;
-
-if ((mask &amp;amp; (RXMASK_REGULAR | RXMASK_LEARNING)) != mask) {
-dprintk("invalid tx mask: %u\n", mask);
-return -EINVAL;
-}
-
-dprintk("setting tx mask: %u\n", mask);
-lodev-&amp;gt;txmask = mask;
-return 0;
-}
-
-static int loop_set_tx_carrier(struct rc_dev *dev, u3&lt;/pre&gt;</description>
    <dc:creator>David Härdeman</dc:creator>
    <dc:date>2012-05-23T09:44:01</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48708">
    <title>[PATCH 22/43] rc-core: add an ioctl for setting IR TX settings</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.video-input-infrastructure/48708</link>
    <description>&lt;pre&gt;This adds a complementary ioctl to allow IR TX settings to be
changed.

Much like the RCIOCSIRRX functionality, userspace is expected to call
RCIOCGIRTX, change values and then call RCIOCSIRTX and finally inspect
the struct rc_ir_tx to see the results.

Also, LIRC is changed to use the new functionality as an alternative to the
old one and another bunch of operations in struct rc_dev are now deprecated.

Signed-off-by: David Härdeman &amp;lt;david&amp;lt; at &amp;gt;hardeman.nu&amp;gt;
---
 drivers/media/rc/ir-lirc-codec.c |   42 +++++++++++++++++++++++++++++---------
 drivers/media/rc/rc-main.c       |   13 ++++++++++++
 include/media/rc-core.h          |   13 ++++++++----
 3 files changed, 54 insertions(+), 14 deletions(-)

diff --git a/drivers/media/rc/ir-lirc-codec.c b/drivers/media/rc/ir-lirc-codec.c
index 767fd06..6811db9 100644
--- a/drivers/media/rc/ir-lirc-codec.c
+++ b/drivers/media/rc/ir-lirc-codec.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -161,6 +161,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static long ir_lirc_ioctl(struct file *filep, unsigned int cmd,
 int ret = 0;
 __u32 val = 0, tmp;
 struct &lt;/pre&gt;</description>
    <dc:creator>David Härdeman</dc:creator>
    <dc:date>2012-05-23T09:43:56</dc:date>
  </item>
  <textinput rdf:about="http://search.gmane.org/?group=$group=gmane.linux.drivers.video-input-infrastructure">
    <title>Search Engine</title>
    <description>Search the mailing list at Gmane</description>
    <name>query</name>
    <link>http://search.gmane.org/?group=$group=gmane.linux.drivers.video-input-infrastructure</link>
  </textinput>
</rdf:RDF>

