From: Mauro Carvalho Chehab <mchehab@redhat.com>
To: Antti Palosaari <crope@iki.fi>
Cc: mkrufky@linuxtv.org,
Linux Media Mailing List <linux-media@vger.kernel.org>
Subject: Re: [PATCH] tda18271-common: hold the I2C adapter during write transfers
Date: Mon, 1 Oct 2012 07:42:19 -0300 [thread overview]
Message-ID: <20121001074219.14ae1de0@redhat.com> (raw)
In-Reply-To: <5065ECEB.30807@iki.fi>
Em Fri, 28 Sep 2012 21:31:07 +0300
Antti Palosaari <crope@iki.fi> escreveu:
> Hello,
> Did not fix the issue. Problem remains same.
Ok, that's what I was afraid: there's likely something at drxk firmware that
it is needed for tda18271 to be visible - maybe gpio settings.
> With the sleep + that patch
> it works still.
Good, no regressions added.
IMO, we should add a defer job at dvb_attach, that will postpone the
tuner attach to happen after drxk firmware is loaded, or add there a
wait queue. Still, I think that this patch is needed anyway, in order
to avoid race conditions with CI and Remote Controller polls that may
affect devices with tda18271.
It should be easy to check if the firmware is loaded: all it is needed
is to, for example, call:
drxk_ops.get_tune_settings()
This function returns -ENODEV if firmware load fails; -EAGAIN if
firmware was not loaded yet and 0 or -EINVAL if firmware is OK.
So, instead of using sleep, you could do:
static bool is_drxk_firmware_loaded(struct dvb_frontend *fe) {
struct dvb_frontend_tune_settings sets;
int ret = fe->ops.get_tune_settings(fe, &sets);
if (ret == -ENODEV || ret == -EAGAIN)
return false;
else
return true;
};
and, at the place you coded the sleep(), replace it by:
ret = wait_event_interruptible(waitq, is_drxk_firmware_loaded(dev->dvb->fe[0]));
if (ret < 0) {
dvb_frontend_detach(dev->dvb->fe[0]);
dev->dvb->fe[0] = NULL;
return -EINVAL;
}
It might have sense to add an special callback to return the tuner
state (firmware not loaded, firmware loaded, firmware load failed).
Regards,
Mauro
next prev parent reply other threads:[~2012-10-01 10:42 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-07-22 19:59 tda18271 driver power consumption Antti Palosaari
2012-07-24 21:55 ` Michael Krufky
2012-07-24 22:12 ` Antti Palosaari
2012-07-24 22:17 ` Michael Krufky
2012-07-25 0:15 ` Michael Krufky
2012-07-25 0:43 ` Antti Palosaari
2012-07-26 3:18 ` Michael Krufky
2012-07-26 12:48 ` Michael Krufky
2012-08-06 13:30 ` Antti Palosaari
[not found] ` <20120927161940.0f673e2e@redhat.com>
2012-09-27 19:59 ` Antti Palosaari
2012-09-27 21:20 ` Michael Krufky
2012-09-27 21:38 ` Antti Palosaari
2012-09-27 21:58 ` Michael Krufky
2012-09-27 22:26 ` Antti Palosaari
2012-09-27 22:43 ` Michael Krufky
2012-09-27 22:46 ` Antti Palosaari
2012-09-27 22:55 ` Michael Krufky
2012-09-27 23:05 ` Antti Palosaari
[not found] ` <20120928084337.1db94b8c@redhat.com>
2012-09-28 15:04 ` [PATCH] tda18271-common: hold the I2C adapter during write transfers Mauro Carvalho Chehab
2012-09-28 18:31 ` Antti Palosaari
2012-09-28 18:56 ` Michael Krufky
2012-09-29 19:20 ` Michael Krufky
2012-10-07 12:42 ` Mauro Carvalho Chehab
2012-10-07 13:18 ` Michael Krufky
2012-10-01 10:42 ` Mauro Carvalho Chehab [this message]
2012-10-01 11:31 ` Antti Palosaari
2012-10-01 12:36 ` Mauro Carvalho Chehab
2012-09-28 16:19 ` tda18271 driver power consumption Antti Palosaari
2012-08-06 18:19 ` Antti Palosaari
2012-08-06 18:35 ` Devin Heitmueller
2012-08-06 18:57 ` Michael Krufky
2012-08-06 19:13 ` Antti Palosaari
2012-08-06 20:19 ` Manu Abraham
2012-09-20 17:47 ` Michael Krufky
2012-09-20 17:49 ` Michael Krufky
2012-09-22 17:21 ` Antti Palosaari
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=20121001074219.14ae1de0@redhat.com \
--to=mchehab@redhat.com \
--cc=crope@iki.fi \
--cc=linux-media@vger.kernel.org \
--cc=mkrufky@linuxtv.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).