linux-fbdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Tomi Valkeinen <tomi.valkeinen@nokia.com>
To: ext Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Cc: "linux-sh@vger.kernel.org" <linux-sh@vger.kernel.org>,
	Magnus Damm <magnus.damm@gmail.com>,
	"linux-fbdev@vger.kernel.org" <linux-fbdev@vger.kernel.org>,
	"linux-omap@vger.kernel.org" <linux-omap@vger.kernel.org>
Subject: Re: [PATCH 1/4] fbdev: add a MIPI DSI header
Date: Wed, 19 May 2010 08:21:48 +0000	[thread overview]
Message-ID: <1274257308.2307.168.camel@tubuntu.research.nokia.com> (raw)
In-Reply-To: <Pine.LNX.4.64.1005190955500.3099@axis700.grange>

Hi,

On Wed, 2010-05-19 at 10:08 +0200, ext Guennadi Liakhovetski wrote:
> Hi Tomi
> 
> On Wed, 19 May 2010, Tomi Valkeinen wrote:

> > The file name is mipi_dsi.h, the comment talks about MIPI, and the file
> > contains defines for MIPI DSI and MIPI DCS. If you want the file to
> > contain defines about all MIPI specs, I think the file name should be
> > just mipi.h.
> 
> No, the header is just intended for DSI, the comment could be made more 
> specific, yes, but DCS is a part of DSI, isn't it?

No, DCS is a spec of its own. DCS can be used on non-DSI displays also.
For example N800 and N900 use DCS commands, but they are not DSI
displays.

> > > + *
> > > + * Copyright (C) 2010 Guennadi Liakhovetski <g.liakhovetski@gmx.de>
> > > + * Copyright (C) 2006 Nokia Corporation
> > > + * Author: Imre Deak <imre.deak@nokia.com>
> > > + *
> > > + * This program is free software; you can redistribute it and/or modify
> > > + * it under the terms of the GNU General Public License version 2 as
> > > + * published by the Free Software Foundation.
> > > + */
> > > +#ifndef MIPI_DSI_H
> > > +#define MIPI_DSI_H
> > > +
> > > +#include <linux/types.h>
> > > +
> > > +enum mipi_dsi_cmd {
> > 
> > I think these are DSI datatypes, not commands.
> 
> hm, "write," "shut down," "mode off," "mode on" sound like commands to me, 
> and I think I saw them called commands in the spec, but yes, some of them 
> are just packet or data types... I'll double-check, thanks.

Well, true, this is not a clear thing. MIPI DSI spec talks about "turn
on peripheral command". But the numbers are DSI data types, according to
the spec, and not all of them are commands.

> > > +	MIPI_DSI_DCS_SHORT_WRITE			= 5,
> > 
> > Please use the same number format for all enums. So this should be 0x05.
> 
> Where does this requirement come from? Is it in CodingStyle?;)

I don't know, but mixing different formats looks ugly to me =).

> > > +	MIPI_DSI_DCS_SHORT_WRITE_PARAM			= 0x15,
> > > +	MIPI_DSI_COLOR_MODE_OFF				= 2,
> > > +	MIPI_DSI_COLOR_MODE_ON				= 0x12,
> > > +	MIPI_DSI_SHUTDOWN_PERIPHERAL			= 0x22,
> > > +	MIPI_DSI_TURN_ON_PERIPHERAL			= 0x32,
> > > +	MIPI_DSI_GENERIC_SHORT_WRITE_0_PARAM		= 3,
> > > +	MIPI_DSI_GENERIC_SHORT_WRITE_1_PARAM		= 0x13,
> > > +	MIPI_DSI_GENERIC_SHORT_WRITE_2_PARAM		= 0x23,
> > > +	MIPI_DSI_GENERIC_READ_REQUEST_0_PARAM		= 4,
> > > +	MIPI_DSI_GENERIC_READ_REQUEST_1_PARAM		= 0x14,
> > > +	MIPI_DSI_GENERIC_READ_REQUEST_2_PARAM		= 0x24,
> > > +	MIPI_DSI_DCS_LONG_WRITE				= 0x39,
> > > +	MIPI_DSI_SET_MAXIMUM_RETURN_PACKET_SIZE		= 0x37,
> > > +	MIPI_DSI_NULL_PACKET				= 9,
> > > +	MIPI_DSI_BLANKING_PACKET			= 0x19,
> > > +	MIPI_DSI_GENERIC_LONG_WRITE			= 0x29,
> > > +	MIPI_DSI_LOOSELY_PACKED_PIXEL_STREAM_YCBCR20	= 0xc,
> > > +	MIPI_DSI_PACKED_PIXEL_STREAM_YCBCR24		= 0x1c,
> > > +	MIPI_DSI_PACKED_PIXEL_STREAM_YCBCR16		= 0x2c,
> > > +	MIPI_DSI_PACKED_PIXEL_STREAM_30			= 0xd,
> > > +	MIPI_DSI_PACKED_PIXEL_STREAM_36			= 0x1d,
> > > +	MIPI_DSI_PACKED_PIXEL_STREAM_YCBCR12		= 0x3d,
> > > +	MIPI_DSI_PACKED_PIXEL_STREAM_16			= 0xe,
> > > +	MIPI_DSI_PACKED_PIXEL_STREAM_18			= 0x1e,
> > > +	MIPI_DSI_PIXEL_STREAM_3BYTE_18			= 0x2e,
> > > +	MIPI_DSI_PACKED_PIXEL_STREAM_24			= 0x3e,
> > > +};
> > > +
> > > +enum mipi_dcs_cmd {
> > 
> > While the MIPI specs define a certain set of commands, the real panels
> > usually implement also their own custom commands. That's why I don't
> > think enum is a good choice here.
> 
> Yes, that's a valid point, I'll have to think about it more.

I think a simple solution would be to just use defines, and have
functions that take the command as u8. That's what the OMAP DSI driver
does. If you have better ideas, please share =).

The same applies for the DSI commands/datatypes, although I haven't seen
a panel that has custom DSI datatypes.

 Tomi



  reply	other threads:[~2010-05-19  8:21 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-07  9:07 [PATCH 0/4] MIPI DSI support for SH-mobile, common header, switch Guennadi Liakhovetski
2010-05-07  9:07 ` [PATCH 1/4] fbdev: add a MIPI DSI header Guennadi Liakhovetski
2010-05-19  4:42   ` Damian
2010-05-19  7:49   ` Tomi Valkeinen
2010-05-19  8:08     ` Guennadi Liakhovetski
2010-05-19  8:21       ` Tomi Valkeinen [this message]
2010-05-19 14:27         ` Ville Syrjälä
2010-05-19 15:00           ` Paul Mundt
2010-05-19 15:39             ` Ville Syrjälä
2010-05-20  8:07         ` Guennadi Liakhovetski
2010-05-20  8:32           ` Tomi Valkeinen
2010-05-20  8:54             ` Felipe Balbi
2010-05-20  9:02               ` Guennadi Liakhovetski
2010-05-20 11:03             ` Guennadi Liakhovetski
2010-05-20 14:20               ` Tomi Valkeinen
2010-05-07  9:07 ` [PATCH 2/4] sh-mobile: add support for displays, connected over the Guennadi Liakhovetski
2010-05-19  4:43   ` [PATCH 2/4] sh-mobile: add support for displays, connected over Damian
2010-05-07  9:07 ` [PATCH 3/4] ARM: add framebuffer support for ap4evb Guennadi Liakhovetski
2010-05-07 14:45   ` [PATCH 3/4 v2] " Guennadi Liakhovetski
2010-05-10  0:11     ` Kuninori Morimoto
2010-05-10  6:12       ` Guennadi Liakhovetski
2010-05-10  9:37         ` Kuninori Morimoto
2010-05-19  4:36     ` Damian
2010-05-19  4:47   ` [PATCH 3/4] " Damian
2010-05-07  9:07 ` [PATCH 4/4] video: switch OMAP LCD MIPI driver to use the common Guennadi Liakhovetski
2010-05-07 10:05 ` [PATCH 2.5/4] ARM: add LCDC and MIPI DSI-Tx clock definitions to Guennadi Liakhovetski
2010-05-07 10:49 ` [PATCH 1.5/4] sh: add a YUV422 output data format, that is also Guennadi Liakhovetski
2010-05-19  4:44   ` Damian

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=1274257308.2307.168.camel@tubuntu.research.nokia.com \
    --to=tomi.valkeinen@nokia.com \
    --cc=g.liakhovetski@gmx.de \
    --cc=linux-fbdev@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux-sh@vger.kernel.org \
    --cc=magnus.damm@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;
as well as URLs for NNTP newsgroup(s).