From: Tomi Valkeinen <tomi.valkeinen@ti.com>
To: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: Sascha Hauer <s.hauer@pengutronix.de>,
linux-omap@vger.kernel.org, linux-fbdev@vger.kernel.org,
devicetree@vger.kernel.org, Tony Lindgren <tony@atomide.com>
Subject: Re: [PATCHv2 23/27] OMAPDSS: connector-dvi: Add DT support
Date: Wed, 18 Dec 2013 10:41:03 +0000 [thread overview]
Message-ID: <52B17BBF.8090003@ti.com> (raw)
In-Reply-To: <1651476.iaILztiDEi@avalon>
[-- Attachment #1: Type: text/plain, Size: 3952 bytes --]
On 2013-12-17 17:15, Laurent Pinchart wrote:
>>> Either the driver is too specific or the binding is too generic, but
>>> having such a generic name for an omap specific driver seems wrong. Same
>>> for panel-dpi, svideo-connector, composite-video-connector and
>>> hdmi-connector,
>>
>> Hmm. Good point. I was thinking that the driver is only used on OMAP, but of
>> course that's not true, the driver is there for all platforms if the kernel
>> just happens to be compiled with the driver.
>>
>> And it's not just about those drivers you mention. The same issue is there
>> for, say, "ti,tpd12s015". I have an omapdss specific driver for that, but if
>> some other platform uses the same chip, they'll have a driver for it also...
>>
>> Sigh. I wonder how this should be handled... The only solution that comes to
>> my mind is to have all the compatible strings as "ti,...". But that's not
>> correct, as they are not TI components, but some are generic ones and some
>> from another vendor.
>>
>> And even "ti,..." is not good, as there are other TI SoCs with other display
>> drivers. So I'd need to prepend the compatible strings with "omapdss,...",
>> making the hardware components driver specific.
>>
>> The long term plan is to make the drivers generic (or implement the same
>> driver for common display framework). But for now I need to have future
>> proof DT bindings with omapdss specific drivers...
>
> I'll refrain from mentioning that the problem has been identified more than a
> year ago. Oh, wait, I've metioned it, sorry :-D
>
> We really want to make drivers generic enough to be shared by multiple display
> controllers. I would vote for making the DT bindings generic now already,
> which would be enough to buy some time to fix the problem properly. If we
> start prepending driver-specific prefixes such as "omapdss," to compatible
> string we'll just make the mess even larger and reduce the incentive to fix
> it. It would be the worst decision we could make.
Well... I think there are no good options here. I see the following options:
1. Add "omapdss," or similar to compat strings in DT, and the same for
the drivers. This solves the issue, but then we'll have bad DT data,
although I see similar method already being used in some places. When we
have common drivers, we can remove the "omapdss," strings from DT, but
we still need to keep them in the drivers to have backward compatibility.
2. Keep the compat strings generic in DT. This way we'll have correct DT
data, but if anyone happens to create a new driver with the same compat
string, things will break. omapdss can only be compiled for a kernel
with OMAP and ARM support, so it narrows the problematic drivers a bit.
3. Have correct DT data, but at init time, in omap arch code, go through
the DT data and change the compat strings for the display nodes to
include "omapdss,". This way the drivers would only work for omap
platforms. Like a combination of 1. and 2. I'm not sure if the DT-code
allows this at the moment, though.
We could also now select option 2., and go for 3. later if someone else
creates a driver with the same compat string.
While I'm obviously not very impartial here, I do think that using
generic bindings for omapdss is not the worst possible case, as:
I'm very much dedicated to get CDF merged at some point, and I already
have been working on it for each revision.
I also think that even if the omap panel drivers are currently omap
specific, they are not very much so. I have been changing them over the
years to be more and more generic, and I have used them as a base for
CDF panel drivers. If some platform specific driver may have a generic
compat string, omap panel drivers are not the worst option.
I will look at the option 3., hopefully that will be possible and
everybody will be happy. Any other ideas appreciated.
Tomi
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 901 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: Tomi Valkeinen <tomi.valkeinen@ti.com>
To: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: Sascha Hauer <s.hauer@pengutronix.de>,
linux-omap@vger.kernel.org, linux-fbdev@vger.kernel.org,
devicetree@vger.kernel.org, Tony Lindgren <tony@atomide.com>
Subject: Re: [PATCHv2 23/27] OMAPDSS: connector-dvi: Add DT support
Date: Wed, 18 Dec 2013 12:41:03 +0200 [thread overview]
Message-ID: <52B17BBF.8090003@ti.com> (raw)
In-Reply-To: <1651476.iaILztiDEi@avalon>
[-- Attachment #1: Type: text/plain, Size: 3952 bytes --]
On 2013-12-17 17:15, Laurent Pinchart wrote:
>>> Either the driver is too specific or the binding is too generic, but
>>> having such a generic name for an omap specific driver seems wrong. Same
>>> for panel-dpi, svideo-connector, composite-video-connector and
>>> hdmi-connector,
>>
>> Hmm. Good point. I was thinking that the driver is only used on OMAP, but of
>> course that's not true, the driver is there for all platforms if the kernel
>> just happens to be compiled with the driver.
>>
>> And it's not just about those drivers you mention. The same issue is there
>> for, say, "ti,tpd12s015". I have an omapdss specific driver for that, but if
>> some other platform uses the same chip, they'll have a driver for it also...
>>
>> Sigh. I wonder how this should be handled... The only solution that comes to
>> my mind is to have all the compatible strings as "ti,...". But that's not
>> correct, as they are not TI components, but some are generic ones and some
>> from another vendor.
>>
>> And even "ti,..." is not good, as there are other TI SoCs with other display
>> drivers. So I'd need to prepend the compatible strings with "omapdss,...",
>> making the hardware components driver specific.
>>
>> The long term plan is to make the drivers generic (or implement the same
>> driver for common display framework). But for now I need to have future
>> proof DT bindings with omapdss specific drivers...
>
> I'll refrain from mentioning that the problem has been identified more than a
> year ago. Oh, wait, I've metioned it, sorry :-D
>
> We really want to make drivers generic enough to be shared by multiple display
> controllers. I would vote for making the DT bindings generic now already,
> which would be enough to buy some time to fix the problem properly. If we
> start prepending driver-specific prefixes such as "omapdss," to compatible
> string we'll just make the mess even larger and reduce the incentive to fix
> it. It would be the worst decision we could make.
Well... I think there are no good options here. I see the following options:
1. Add "omapdss," or similar to compat strings in DT, and the same for
the drivers. This solves the issue, but then we'll have bad DT data,
although I see similar method already being used in some places. When we
have common drivers, we can remove the "omapdss," strings from DT, but
we still need to keep them in the drivers to have backward compatibility.
2. Keep the compat strings generic in DT. This way we'll have correct DT
data, but if anyone happens to create a new driver with the same compat
string, things will break. omapdss can only be compiled for a kernel
with OMAP and ARM support, so it narrows the problematic drivers a bit.
3. Have correct DT data, but at init time, in omap arch code, go through
the DT data and change the compat strings for the display nodes to
include "omapdss,". This way the drivers would only work for omap
platforms. Like a combination of 1. and 2. I'm not sure if the DT-code
allows this at the moment, though.
We could also now select option 2., and go for 3. later if someone else
creates a driver with the same compat string.
While I'm obviously not very impartial here, I do think that using
generic bindings for omapdss is not the worst possible case, as:
I'm very much dedicated to get CDF merged at some point, and I already
have been working on it for each revision.
I also think that even if the omap panel drivers are currently omap
specific, they are not very much so. I have been changing them over the
years to be more and more generic, and I have used them as a base for
CDF panel drivers. If some platform specific driver may have a generic
compat string, omap panel drivers are not the worst option.
I will look at the option 3., hopefully that will be possible and
everybody will be happy. Any other ideas appreciated.
Tomi
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 901 bytes --]
next prev parent reply other threads:[~2013-12-18 10:41 UTC|newest]
Thread overview: 98+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-12-16 14:56 [PATCHv2 00/27] OMAPDSS: DT support v2 Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 01/27] ARM: OMAP: remove DSS DT hack Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 18:41 ` Tony Lindgren
2013-12-16 18:41 ` Tony Lindgren
2013-12-17 6:45 ` Tomi Valkeinen
2013-12-17 6:45 ` Tomi Valkeinen
2013-12-17 15:30 ` Tony Lindgren
2013-12-17 15:30 ` Tony Lindgren
2013-12-18 7:12 ` Tomi Valkeinen
2013-12-18 7:12 ` Tomi Valkeinen
2013-12-18 10:21 ` Tomi Valkeinen
2013-12-18 10:21 ` Tomi Valkeinen
2013-12-18 17:33 ` Tony Lindgren
2013-12-18 17:33 ` Tony Lindgren
2013-12-18 17:32 ` Tony Lindgren
2013-12-18 17:32 ` Tony Lindgren
2013-12-16 14:56 ` [PATCHv2 02/27] OMAPDSS: remove DT hacks for regulators Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 18:42 ` Tony Lindgren
2013-12-16 18:42 ` Tony Lindgren
2013-12-17 6:42 ` Tomi Valkeinen
2013-12-17 6:42 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 03/27] ARM: OMAP2+: add omapdss_init_of() Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 18:46 ` Tony Lindgren
2013-12-16 18:46 ` Tony Lindgren
2013-12-17 6:20 ` Tomi Valkeinen
2013-12-17 6:20 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 04/27] OMAPDSS: add 'label' support for DT Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 05/27] OMAPDSS: get dssdev->alias from DT alias Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 06/27] OMAPFB: clean up default display search Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
[not found] ` <1387205794-32246-1-git-send-email-tomi.valkeinen-l0cyMroinI0@public.gmane.org>
2013-12-16 14:56 ` [PATCHv2 07/27] OMAPFB: search for default display with DT alias Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 17/27] ARM: omap3-tobi.dts: add lcd (TEST) Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-17 17:17 ` Florian Vaussard
2013-12-17 17:17 ` Florian Vaussard
2013-12-16 14:56 ` [PATCHv2 08/27] OMAPDSS: add of helpers Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-17 7:00 ` Archit Taneja
2013-12-17 7:12 ` Archit Taneja
2013-12-17 7:01 ` Tomi Valkeinen
2013-12-17 7:01 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 09/27] OMAPDSS: Add DT support to DSS, DISPC, DPI and SDI Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 10/27] OMAPDSS: Add DT support to HDMI Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 11/27] OMAPDSS: Add DT support to VENC Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 12/27] OMAPDSS: Add DT support to DSI Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 13/27] ARM: omap3.dtsi: add omapdss information Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 14/27] ARM: omap4.dtsi: " Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 15/27] ARM: omap4-panda.dts: add display information Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 16/27] ARM: omap4-sdp.dts: " Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 18/27] ARM: omap3-beagle.dts: " Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 19/27] ARM: omap3-beagle-xm.dts: " Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 20/27] ARM: omap3-igep0020.dts: " Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 21/27] OMAPDSS: panel-dsi-cm: Add DT support Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 22/27] OMAPDSS: encoder-tfp410: " Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 23/27] OMAPDSS: connector-dvi: " Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-17 7:05 ` Sascha Hauer
2013-12-17 7:05 ` Sascha Hauer
2013-12-17 7:15 ` Tomi Valkeinen
2013-12-17 7:15 ` Tomi Valkeinen
2013-12-17 15:15 ` Laurent Pinchart
2013-12-17 15:15 ` Laurent Pinchart
2013-12-18 10:41 ` Tomi Valkeinen [this message]
2013-12-18 10:41 ` Tomi Valkeinen
[not found] ` <52B17BBF.8090003-l0cyMroinI0@public.gmane.org>
2013-12-18 14:02 ` Tomi Valkeinen
2013-12-18 14:02 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 24/27] OMAPDSS: encoder-tpd12s015: " Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 25/27] OMAPDSS: hdmi-connector: " Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 26/27] OMAPDSS: panel-dpi: " Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
2013-12-16 14:56 ` [PATCHv2 27/27] OMAPDSS: connector-analog-tv: " Tomi Valkeinen
2013-12-16 14:56 ` Tomi Valkeinen
[not found] ` <1387205794-32246-28-git-send-email-tomi.valkeinen-l0cyMroinI0@public.gmane.org>
2014-08-26 16:58 ` Laurent Pinchart
2014-08-26 16:58 ` Laurent Pinchart
2014-08-27 9:37 ` Tomi Valkeinen
2014-08-27 9:37 ` Tomi Valkeinen
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=52B17BBF.8090003@ti.com \
--to=tomi.valkeinen@ti.com \
--cc=devicetree@vger.kernel.org \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-fbdev@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=s.hauer@pengutronix.de \
--cc=tony@atomide.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 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.