All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sylwester Nawrocki <sylvester.nawrocki@gmail.com>
To: Mauro Carvalho Chehab <mchehab@infradead.org>
Cc: Sangwook Lee <sangwook.lee@linaro.org>,
	linux-media@vger.kernel.org, laurent.pinchart@ideasonboard.com,
	kyungmin.park@samsung.com, hans.verkuil@cisco.com,
	linaro-dev@lists.linaro.org, patches@linaro.org,
	Francesco Lavra <francescolavra.fl@gmail.com>,
	Scott Bambrough <scott.bambrough@linaro.org>,
	Homin Lee <suapapa@insignal.co.kr>
Subject: Re: [RFC PATCH v8] media: add v4l2 subdev driver for S5K4ECGX sensor
Date: Thu, 27 Sep 2012 00:00:20 +0200	[thread overview]
Message-ID: <50637AF4.9080002@gmail.com> (raw)
In-Reply-To: <20120926173233.01d64f9a@infradead.org>

On 09/26/2012 10:32 PM, Mauro Carvalho Chehab wrote:
> Em Thu, 13 Sep 2012 12:02:14 +0100
> Sangwook Lee<sangwook.lee@linaro.org>  escreveu:
> 
>> This patch adds driver for S5K4ECGX sensor with embedded ISP SoC,
>> S5K4ECGX, which is a 5M CMOS Image sensor from Samsung
>> The driver implements preview mode of the S5K4ECGX sensor.
>> capture (snapshot) operation, face detection are missing now.
>> Following controls are supported:
>> contrast/saturation/brightness/sharpness
>>
>> Signed-off-by: Sangwook Lee<sangwook.lee@linaro.org>
>> Reviewed-by: Sylwester Nawrocki<s.nawrocki@samsung.com>
>> Cc: Francesco Lavra<francescolavra.fl@gmail.com>
>> Cc: Scott Bambrough<scott.bambrough@linaro.org>
>> Cc: Homin Lee<suapapa@insignal.co.kr>
> 
> ...
> 
>> +static int s5k4ecgx_load_firmware(struct v4l2_subdev *sd)
>> +{
>> +	const struct firmware *fw;
>> +	const u8 *ptr;
>> +	int err, i, regs_num;
>> +	struct i2c_client *client = v4l2_get_subdevdata(sd);
>> +	u16 val;
>> +	u32 addr, crc, crc_file, addr_inc = 0;
>> +
>> +	err = request_firmware(&fw, S5K4ECGX_FIRMWARE, sd->v4l2_dev->dev);
> 
> The patch looks correct on my eyes... Yet, calling request_firmware()
> might not be the right thing to do. The thing is that newer versions of
> udev refuse to load firmware synchronously during probe/init time.
> 
> As this function is actually called by s_power, maybe this driver doesn't
> suffer from that new udev behavior, so, I'll be merging it as-is. However,
> I suggest you to take a deeper review on that and, if possible, test it with
> the latest udev.

True, it's indeed a bit tricky. The host interface driver this sensor driver
has been tested with calls s_power on a subdev only in response to a video
device open(). During probe only subdev's .registered() callback is called.
And there is no request_firmware() there, as it is not needed to boot the 
sensor's MCU. The "firmware" is really just a set of settings that are 
normally needed only before streaming needs to be started. We have analysed 
this issue and hopefully there should be no request_firmware() calls from 
within probe(), as long as the host interface driver doesn't call s_power 
from it's probe() callback. I'm afraid it's not the case for all bridge 
drivers though. If needed we could probably try and use 
request_firmware_nowait(), but it seems better to me to make sure the bridge
drivers don't call s_power from within their probe() callback.

--

Thanks,
Sylwester

  reply	other threads:[~2012-09-26 22:00 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-13 11:02 [RFC PATCH v8] media: add v4l2 subdev driver for S5K4ECGX sensor Sangwook Lee
2012-09-26 20:32 ` Mauro Carvalho Chehab
2012-09-26 22:00   ` Sylwester Nawrocki [this message]
2012-09-27 10:29     ` Laurent Pinchart

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=50637AF4.9080002@gmail.com \
    --to=sylvester.nawrocki@gmail.com \
    --cc=francescolavra.fl@gmail.com \
    --cc=hans.verkuil@cisco.com \
    --cc=kyungmin.park@samsung.com \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linaro-dev@lists.linaro.org \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab@infradead.org \
    --cc=patches@linaro.org \
    --cc=sangwook.lee@linaro.org \
    --cc=scott.bambrough@linaro.org \
    --cc=suapapa@insignal.co.kr \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.