Re: [PATCH] V4L: soc-camera: provide support for S_INPUT.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 16 Dec 2011, Scott Jiang wrote:

> >> How about this implementation? I know it's not for soc, but I post it
> >> to give my idea.
> >> Bridge knows the layout, so it doesn't need to query the subdevice.
> >
> > Where from? AFAIU, we are talking here about subdevice inputs, right? In
> > this case about various inputs of the TV decoder. How shall the bridge
> > driver know about that?
> 
> I have asked this question before. Laurent reply me:
> 
> > >> ENUMINPUT as defined by V4L2 enumerates input connectors available on
> > >> the board. Which inputs the board designer hooked up is something that
> > >> only the top-level V4L driver will know. Subdevices do not have that
> > >> information, so enuminputs is not applicable there.
> > >>
> > >> Of course, subdevices do have input pins and output pins, but these are
> > >> assumed to be fixed. With the s_routing ops the top level driver selects
> > >> which input and output pins are active. Enumeration of those inputs and
> > >> outputs wouldn't gain you anything as far as I can tell since the
> > >> subdevice simply does not know which inputs/outputs are actually hooked
> > >> up. It's the top level driver that has that information (usually passed
> > >> in through board/card info structures).

Laurent, right, I now remember reading this discussion before. But I'm not 
sure I completely agree:-) Yes, you're right - the board decides which 
pins are routed to which connectors. And it has to provide this 
information to the driver in its platform data. But - I think, this 
information should be provided not to the bridge driver, but to respective 
subdevice drivers, because only they know what exactly those interfaces 
are good for and how to report them to the bridge or the user, if we 
decide to also export this information over the subdevice user-space API.

So, I would say, the board has to tell the subdevice driver: yes, your 
inputs 0 and 1 are routed to external connectors. On input 1 I've put a 
pullup, it is connected to connector of type X over a circuit Y, clocked 
from your output Z, if the driver needs to know all that. And the subdev 
driver will just tell the bridge only what that one needs to know - number 
of inputs and their capabilities.

Thanks
Guennadi
---
Guennadi Liakhovetski, Ph.D.
Freelance Open-Source Software Developer
http://www.open-technology.de/
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux