From: Sean Young <sean@mess.org>
To: Andi Shyti <andi.shyti@samsung.com>
Cc: "Mauro Carvalho Chehab" <mchehab@osg.samsung.com>,
"Rob Herring" <robh+dt@kernel.org>,
"Mark Rutland" <mark.rutland@arm.com>,
linux-media@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, "Andi Shyti" <andi@etezian.org>,
"David Härdeman" <david@hardeman.nu>
Subject: Re: [PATCH v2 5/7] [media] ir-lirc-codec: don't wait any transmitting time for tx only devices
Date: Fri, 2 Sep 2016 09:41:59 +0100 [thread overview]
Message-ID: <20160902084158.GA25342@gofer.mess.org> (raw)
In-Reply-To: <20160901171629.15422-6-andi.shyti@samsung.com>
On Fri, Sep 02, 2016 at 02:16:27AM +0900, Andi Shyti wrote:
> Transmitters do not need to wait until the data has been sent
> (and of course received). Return before waiting.
>
> Signed-off-by: Andi Shyti <andi.shyti@samsung.com>
> ---
> drivers/media/rc/ir-lirc-codec.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/media/rc/ir-lirc-codec.c b/drivers/media/rc/ir-lirc-codec.c
> index c327730..d8953fb 100644
> --- a/drivers/media/rc/ir-lirc-codec.c
> +++ b/drivers/media/rc/ir-lirc-codec.c
> @@ -153,7 +153,7 @@ static ssize_t ir_lirc_transmit_ir(struct file *file, const char __user *buf,
> }
>
> ret = dev->tx_ir(dev, txbuf, count);
> - if (ret < 0)
> + if (ret < 0 || dev->driver_type == RC_DRIVER_IR_RAW_TX)
Just because a driver only does transmit doesn't mean its transmit ABI
should change.
Now this bit of code is pretty horrible. It ensures that the call to write()
takes at least as long as the length of the transmit IR by sleeping. That's
not much of a guarantee that the IR has been sent.
Note that in the case of ir-spi, since your spi transfer is sync no sleep
should be introduced here.
The gap calculation in lirc checks that if the call to write() took _longer_
than expected wait before sending the next IR code (when either multiple
IR codes or repeats are specified). Introducing the sleep in the kernel
here does not help at all, lirc already ensures that it waits as long as
the IR is long (see schedule_repeat_timer in lirc).
This change was introduced in 3.10, commit f8e00d5.
Sean
next prev parent reply other threads:[~2016-09-02 8:41 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-09-01 17:16 [PATCH v2 0/7] Add support for IR transmitters Andi Shyti
2016-09-01 17:16 ` [PATCH v2 1/7] [media] rc-main: assign driver type during allocation Andi Shyti
2016-09-01 21:23 ` Sean Young
[not found] ` <20160901212351.GB22198-3XSxi2G4b3iXFJAUJl40Xg@public.gmane.org>
2016-09-02 5:25 ` Andi Shyti
2016-09-01 17:16 ` [PATCH v2 2/7] [media] rc-main: split setup and unregister functions Andi Shyti
2016-09-01 17:16 ` [PATCH v2 3/7] [media] rc-core: add support for IR raw transmitters Andi Shyti
2016-09-01 21:31 ` Sean Young
[not found] ` <20160901171629.15422-4-andi.shyti-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
2016-09-02 0:21 ` kbuild test robot
2016-09-01 17:16 ` [PATCH v2 4/7] [media] rc-ir-raw: do not generate any receiving thread for " Andi Shyti
2016-09-01 17:16 ` [PATCH v2 5/7] [media] ir-lirc-codec: don't wait any transmitting time for tx only devices Andi Shyti
2016-09-02 8:41 ` Sean Young [this message]
[not found] ` <20160902084158.GA25342-3XSxi2G4b3iXFJAUJl40Xg@public.gmane.org>
2016-10-27 7:44 ` Andi Shyti
2016-10-27 14:36 ` Sean Young
2016-10-31 14:31 ` David Härdeman
2016-10-31 17:05 ` Sean Young
[not found] ` <20161031170526.GA8183-3XSxi2G4b3iXFJAUJl40Xg@public.gmane.org>
2016-11-01 6:51 ` Andi Shyti
2016-11-01 10:34 ` Sean Young
2016-11-02 4:39 ` Andi Shyti
2016-09-01 17:16 ` [PATCH v2 6/7] Documentation: bindings: add documentation for ir-spi device driver Andi Shyti
2016-09-01 21:40 ` Rob Herring
2016-09-02 5:33 ` Andi Shyti
[not found] ` <20160902053320.wqe5hklklnyvcc5m-4M0o0xkwKdT35fTxX1Dczw@public.gmane.org>
2016-09-12 13:27 ` Rob Herring
2016-09-01 17:16 ` [PATCH v2 7/7] [media] rc: add support for IR LEDs driven through SPI Andi Shyti
2016-09-01 21:12 ` Sean Young
[not found] ` <20160901211232.GA22198-3XSxi2G4b3iXFJAUJl40Xg@public.gmane.org>
2016-09-02 5:27 ` Andi Shyti
2016-09-02 8:43 ` Sean Young
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160902084158.GA25342@gofer.mess.org \
--to=sean@mess.org \
--cc=andi.shyti@samsung.com \
--cc=andi@etezian.org \
--cc=david@hardeman.nu \
--cc=devicetree@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=mchehab@osg.samsung.com \
--cc=robh+dt@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).