From: Stefan Agner <stefan@agner.ch>
To: Mark yao <mark.yao@rock-chips.com>
Cc: dri-devel@lists.freedesktop.org, thierry.reding@gmail.com,
jianwei.wang.chn@gmail.com, meng.yi@nxp.com,
linux@arm.linux.org.uk, eric@eukrea.com,
alison.wang@freescale.com, daniel.vetter@ffwll.ch,
linux-kernel@vger.kernel.org, denis@eukrea.com
Subject: Re: [PATCH RESEND v3 1/2] drm: introduce bus_flags in drm_display_info
Date: Thu, 05 May 2016 09:19:53 -0700 [thread overview]
Message-ID: <3ef5018d5af4e405ac43accea72f802e@agner.ch> (raw)
In-Reply-To: <572AE5BA.3060003@rock-chips.com>
Hi Mark,
On 2016-05-04 23:18, Mark yao wrote:
> Hi Stefan
>
> Actually, the pixel clock or data enable polarity are also needed by
> drm/rockchip,
>
> but I have a question:
>
> why not add these polarity into drm_display_mode->flags.
> drm_display_mode->flags has hsync and vsync polarity,
> I think it's cool that add pixel clock or data enable polarity on
> drm_display_mode->flags.
This has been proposed several times, including me (v1 of this
patchset). However, there are good reasons why this has not been
accepted, mainly since mode flags leak to user space and the kernel
developer wanted to avoid that (even more) such hardware configuration
gets leaked to user space... This is how I understand it, but you might
want to read the archives for details.
--
Stefan
>
> The polarity seems should be used on crtc, but crtc can't direct get
> the panel, save polarity on panel_desc means need more work to
> transmit it to crtc.
>
> Thanks.
>
> On 2016年05月05日 13:08, Stefan Agner wrote:
>> Introduce bus_flags to specify display bus properties like signal
>> polarities. This is useful for parallel display buses, e.g. to
>> specify the pixel clock or data enable polarity.
>>
>> Suggested-by: Thierry Reding <thierry.reding@gmail.com>
>> Acked-by: Philipp Zabel <p.zabel@pengutronix.de>
>> Acked-by: Manfred Schlaegl <manfred.schlaegl@gmx.at>
>> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
>> Signed-off-by: Stefan Agner <stefan@agner.ch>
>> ---
>> drivers/gpu/drm/panel/panel-simple.c | 2 ++
>> include/drm/drm_crtc.h | 9 +++++++++
>> 2 files changed, 11 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
>> index ceb2048..77ae07f 100644
>> --- a/drivers/gpu/drm/panel/panel-simple.c
>> +++ b/drivers/gpu/drm/panel/panel-simple.c
>> @@ -72,6 +72,7 @@ struct panel_desc {
>> } delay;
>> u32 bus_format;
>> + u32 bus_flags;
>> };
>> struct panel_simple {
>> @@ -144,6 +145,7 @@ static int panel_simple_get_fixed_modes(struct panel_simple *panel)
>> if (panel->desc->bus_format)
>> drm_display_info_set_bus_formats(&connector->display_info,
>> &panel->desc->bus_format, 1);
>> + connector->display_info.bus_flags = panel->desc->bus_flags;
>> return num;
>> }
>> diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h
>> index 4acdaf5..d1559cd 100644
>> --- a/include/drm/drm_crtc.h
>> +++ b/include/drm/drm_crtc.h
>> @@ -118,6 +118,14 @@ enum subpixel_order {
>> #define DRM_COLOR_FORMAT_RGB444 (1<<0)
>> #define DRM_COLOR_FORMAT_YCRCB444 (1<<1)
>> #define DRM_COLOR_FORMAT_YCRCB422 (1<<2)
>> +
>> +#define DRM_BUS_FLAG_DE_LOW (1<<0)
>> +#define DRM_BUS_FLAG_DE_HIGH (1<<1)
>> +/* drive data on pos. edge */
>> +#define DRM_BUS_FLAG_PIXDATA_POSEDGE (1<<2)
>> +/* drive data on neg. edge */
>> +#define DRM_BUS_FLAG_PIXDATA_NEGEDGE (1<<3)
>> +
>> /*
>> * Describes a given display (e.g. CRT or flat panel) and its limitations.
>> */
>> @@ -139,6 +147,7 @@ struct drm_display_info {
>> const u32 *bus_formats;
>> unsigned int num_bus_formats;
>> + u32 bus_flags;
>> /* Mask of supported hdmi deep color modes */
>> u8 edid_hdmi_dc_modes;
next prev parent reply other threads:[~2016-05-05 16:23 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-05-05 5:08 [PATCH RESEND v3 0/2] drm: introduce bus_flags for pixel clock polarity Stefan Agner
2016-05-05 5:08 ` [PATCH RESEND v3 1/2] drm: introduce bus_flags in drm_display_info Stefan Agner
2016-05-05 6:18 ` Mark yao
2016-05-05 16:19 ` Stefan Agner [this message]
2016-05-05 10:06 ` Daniel Vetter
2016-05-05 16:23 ` Stefan Agner
2016-05-05 5:09 ` [PATCH RESEND v3 2/2] drm/fsl-dcu: use bus_flags for pixel clock polarity Stefan Agner
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=3ef5018d5af4e405ac43accea72f802e@agner.ch \
--to=stefan@agner.ch \
--cc=alison.wang@freescale.com \
--cc=daniel.vetter@ffwll.ch \
--cc=denis@eukrea.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=eric@eukrea.com \
--cc=jianwei.wang.chn@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
--cc=mark.yao@rock-chips.com \
--cc=meng.yi@nxp.com \
--cc=thierry.reding@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