From: Hans Verkuil <hverkuil@xs4all.nl>
To: Pavel Machek <pavel@ucw.cz>,
pali.rohar@gmail.com, sre@kernel.org,
kernel list <linux-kernel@vger.kernel.org>,
linux-arm-kernel <linux-arm-kernel@lists.infradead.org>,
linux-omap@vger.kernel.org, tony@atomide.com, khilman@kernel.org,
aaro.koskinen@iki.fi, ivo.g.dimitrov.75@gmail.com,
patrikbachan@gmail.com, serge@hallyn.com, sakari.ailus@iki.fi,
tuukkat76@gmail.com
Cc: mchehab@osg.samsung.com, linux-media@vger.kernel.org
Subject: Re: v4l subdevs without big device was Re: drivers/media/i2c/adp1653.c: does not show as /dev/video* or v4l-subdev*
Date: Fri, 29 Apr 2016 09:31:51 +0200 [thread overview]
Message-ID: <57230DE7.3020701@xs4all.nl> (raw)
In-Reply-To: <20160429071525.GA4823@amd>
On 04/29/2016 09:15 AM, Pavel Machek wrote:
> Hi!
>
>> On n900, probe finishes ok (verified by adding printks), and the
>> device shows up in /sys, but I don't get /dev/video* or
>> /dev/v4l-subdev*.
>>
>> Other drivers (back and front camera) load ok, and actually work. Any
>> idea what could be wrong?
>
> Ok, so I guess I realized what is the problem:
>
> adp1653 registers itself as a subdev, but there's no device that
> register it as its part.
>
> (ad5820 driver seems to have the same problem).
>
> Is there example "dummy" device I could use, for sole purpose of
> having these devices appear in /dev? They are on i2c, so both can work
> on their own.
Ah, interesting. This was discussed a little bit during the Media Summit
a few weeks back:
http://linuxtv.org/news.php?entry=2016-04-20.mchehab
See section 5:
"5. DT Bindings for flash & lens controllers
There are drivers that create their MC topology using the device tree information,
which works great for entities that transport data, but how to detect entities
that don’t transport data such as flash devices, focusers, etc.? How can those be
deduced using the device tree?
Sensor DT node add phandle to focus controller: add generic v4l binding properties
to reference such devices."
This wasn't a problem with the original N900 since that didn't use DT AFAIK and
these devices were loaded explicitly through board code.
But now you run into the same problem that I have.
The solution is that sensor devices have to provide phandles to those controller
devices. And to do that you need to define bindings which is always the hard part.
Look in Documentation/devicetree/bindings/media/video-interfaces.txt, section
"Optional endpoint properties".
Something like:
controllers: an array of phandles to controller devices associated with this
endpoint such as flash and lens controllers.
Warning: I'm no DT expert, so this is just a first attempt.
Platform drivers (omap3isp) will have to add these controller devices to the list
of subdevs to load asynchronously.
Regards,
Hans
next prev parent reply other threads:[~2016-04-29 7:32 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-04-28 8:45 drivers/media/i2c/adp1653.c: does not show as /dev/video* or v4l-subdev* Pavel Machek
2016-04-29 7:15 ` v4l subdevs without big device was " Pavel Machek
2016-04-29 7:31 ` Hans Verkuil [this message]
2016-04-29 7:56 ` Sakari Ailus
2016-04-29 9:50 ` Pavel Machek
2016-04-29 10:59 ` Sakari Ailus
2016-04-29 11:05 ` Pali Rohár
2016-04-29 11:23 ` Sakari Ailus
2016-04-29 14:06 ` Pavel Machek
2016-04-29 10:15 ` Pavel Machek
2016-04-29 21:30 ` [pre-rfc] focus and flash for Nokia N900 (was Re: v4l subdevs without big device was Re: drivers/media/i2c/adp1653.c: does not show as /dev/video* or v4l-subdev*) Pavel Machek
2016-04-29 22:13 ` camera application for testing (was Re: v4l subdevs without big device) Pavel Machek
2016-04-29 22:20 ` Pali Rohár
2016-04-29 22:47 ` Ivaylo Dimitrov
2016-05-01 14:08 ` Sakari Ailus
2016-05-01 19:21 ` Pavel Machek
2016-06-21 22:32 ` Pavel Machek
2016-06-21 23:59 ` Laurent Pinchart
2016-06-22 11:52 ` Pavel Machek
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=57230DE7.3020701@xs4all.nl \
--to=hverkuil@xs4all.nl \
--cc=aaro.koskinen@iki.fi \
--cc=ivo.g.dimitrov.75@gmail.com \
--cc=khilman@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=mchehab@osg.samsung.com \
--cc=pali.rohar@gmail.com \
--cc=patrikbachan@gmail.com \
--cc=pavel@ucw.cz \
--cc=sakari.ailus@iki.fi \
--cc=serge@hallyn.com \
--cc=sre@kernel.org \
--cc=tony@atomide.com \
--cc=tuukkat76@gmail.com \
/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