Re: [RFC 08/17] OMAPDSS: DSI: Maintain own copy of timings in driver data

Tomi Valkeinen
2012-08-07T14:07:48Z

[-- Attachment #1: Type: text/plain, Size: 1827 bytes --]

On Wed, 2012-08-01 at 16:01 +0530, Archit Taneja wrote:
> The DSI driver currently relies on the timings in omap_dss_device struct to
> configure the DISPC and DSI blocks accordingly. This makes the DSI interface
> driver dependent on the omap_dss_device struct.
>
> Make the DPI driver data maintain it's own timings field. The panel driver is
^^^
DSI

> expected to call omapdss_dsi_set_timings() to set these timings before the panel
> is enabled.
>
> Signed-off-by: Archit Taneja <archit@ti.com>d
> ---
> drivers/video/omap2/displays/panel-taal.c | 2 ++
> drivers/video/omap2/dss/dsi.c | 27 ++++++++++++++++++++++-----
> include/video/omapdss.h | 2 ++
> 3 files changed, 26 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/video/omap2/displays/panel-taal.c b/drivers/video/omap2/displays/panel-taal.c
> index 3f5acc7..4775580 100644
> --- a/drivers/video/omap2/displays/panel-taal.c
> +++ b/drivers/video/omap2/displays/panel-taal.c
> @@ -1060,6 +1060,8 @@ static int taal_power_on(struct omap_dss_device *dssdev)
> goto err0;
> };
>
> + omapdss_dsi_set_timings(dssdev, &td->panel_config->timings);
> +
> r = omapdss_dsi_display_enable(dssdev);
> if (r) {
> dev_err(&dssdev->dev, "failed to enable DSI\n");

Video timings for command mode panel are meaningless. If we need to pass
the resolution of the panel, perhaps we should have a separate function
for that.

However, with a quick glance at dsi.c, we don't even use the
dssdev->panel.timings for cmd mode panel. But we do use
dssdev->get_resolution() in a few places. Those calls could be replaced
by storing the panel size in dsi.c, given with omapdss_dsi_set_size() or
such. We could use the timings field in dsi.c to store them, though.

Tomi

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 836 bytes --]