Linux Framebuffer Layer development
 help / color / mirror / Atom feed
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
To: Jaya Kumar <jayakumar.lkml@gmail.com>
Cc: linux-fbdev@vger.kernel.org,
	Linux Media Mailing List <linux-media@vger.kernel.org>
Subject: Re: Idea of a v4l -> fb interface driver
Date: Thu, 27 May 2010 12:48:54 +0000	[thread overview]
Message-ID: <Pine.LNX.4.64.1005271338370.2293@axis700.grange> (raw)
In-Reply-To: <AANLkTik0DHDhmr78xOG2cTUgrTWZKzYDwBl27TXHgcGp@mail.gmail.com>

On Thu, 27 May 2010, Jaya Kumar wrote:

> You've raised the MIPI-DSI issue. It is a good area to focus the
> discussion on for fbdev minded people and one that needs to be
> resolved soon so that we don't get dozens of host controller specific
> mipi display panel drivers. I had seen that omap2 fbdev has a portion
> of the MIPI-DSI command set exposed to their various display panel
> drivers which then hands off these commands to the omap specific
> lcd_mipid.c which uses spi. I see you've also implemented a similar
> concept in sh-mobile. When I saw the multiple display panel drivers
> showing up in omap, I raised a concern with Tomi and I think there was
> an intent to try to improve the abstraction. I'm not sure how far that
> has progressed. Are you saying v4l would help us in that area? I'm not
> yet able to follow the details of how using v4l would help address the
> need for mipi-dsi abstraction. Could you elaborate on that?

Well, I thought about an abstract driver for MIPI DSI... But, there is not 
really much there, that you can abstract. I've created a generic 
mipi_display.h header, that contains defines for display related (DSI, 
DCS) commands and transaction types. Once this header is in the mainline, 
we plan to convert OMAP drivers to it too. To talk to MIPI displays you 
need a capability to send and receive generic short and long telegrams, 
so, providing higher level functions like get_display_id() or 
soft_reset(), probably, wouldn't make sense. What you do need a proper API 
for is, when you start supporting proprietary display-specific commands 
and want to reuse those display drivers with different MIPI DSI hosts. For 
that we will want a generic API like .send_short_command(), 
.send_short_command_param(), etc.

As for using v4l2 for MIPI displays - well, I am not sure it makes sense 
at all. This could make sense if, e.g., you were writing a driver for a 
graphics controller, capable to talk to various PHYs over a fixed bus 
(which is actually also the case with the sh-mobile LCDC), then you could 
design it, using V4L2, in the following way:

/dev/videoX                /dev/fbX
   |                           |
   |   /- - fbdev translate - -/
   v   v
v4l2 output device driver
       |
       v
   v4l2-subdev API
    |    ...    |
    v           v
MIPI PHY ...  parallel PHY
 driver  ...    driver
    |
    v
 MIPI bus
abstraction
    |
    v
MIPI display
  driver

So, you would use the v4l2-subdev API to abstract various PHY drivers. The 
/dev/fbX link above would, certainly, only exist if we implement the 
v4l2-output - fbdev translation driver.

Thanks
Guennadi
---
Guennadi Liakhovetski, Ph.D.
Freelance Open-Source Software Developer
http://www.open-technology.de/

  reply	other threads:[~2010-05-27 12:48 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-26 14:09 Idea of a v4l -> fb interface driver Guennadi Liakhovetski
2010-05-27  0:21 ` Jaya Kumar
2010-05-27  6:56   ` Guennadi Liakhovetski
2010-05-27 11:05     ` Jaya Kumar
2010-05-27 12:48       ` Guennadi Liakhovetski [this message]
2010-05-27 19:55     ` Alex Deucher
2010-05-28  8:21       ` Guennadi Liakhovetski
2010-05-28 17:47         ` Alex Deucher
2010-05-28 19:15           ` Florian Tobias Schandinat
2010-05-28 19:25             ` Guennadi Liakhovetski
2010-05-28 19:58               ` Florian Tobias Schandinat
2010-05-28 19:41             ` Alex Deucher
2010-05-28 20:06               ` Ville Syrjälä
2010-05-30 11:15                 ` Dave Airlie
     [not found]     ` <4BFED8B0.8010504@ti.com>
2010-05-28 10:07       ` Guennadi Liakhovetski
2010-05-27  6:56 ` Hiremath, Vaibhav
2010-05-27  7:35   ` Guennadi Liakhovetski
2010-05-27 19:00   ` Udo Richter

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=Pine.LNX.4.64.1005271338370.2293@axis700.grange \
    --to=g.liakhovetski@gmx.de \
    --cc=jayakumar.lkml@gmail.com \
    --cc=linux-fbdev@vger.kernel.org \
    --cc=linux-media@vger.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