RE: [PATCH 3/3] OMAP: use generic panel driver in board files

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

linux-omap-owner@xxxxxxxxxxxxxxx wrote:
> Introduce some fields in struct panel, which will be used to
> match the right panel configurations in generic panel driver.
> 
> Still keep sharp_ls_panel, since the sharp_ls_panel driver
> contains blacklight control driver code which will be moved
> out later. Then we can use generic driver for sharp_ls_panel.
> 
> Signed-off-by: Bryan Wu <bryan.wu@xxxxxxxxxxxxx>

[snip]

> diff --git a/arch/arm/plat-omap/include/plat/display.h
> b/arch/arm/plat-omap/include/plat/display.h
> index c915a66..6e1fbbd 100644
> --- a/arch/arm/plat-omap/include/plat/display.h
> +++ b/arch/arm/plat-omap/include/plat/display.h
> @@ -346,6 +346,24 @@ struct omap_overlay_manager {
>  	int (*disable)(struct omap_overlay_manager *mgr);  };
> 
> +struct omap_display_panel {
> +	struct omap_video_timings timings;
> +
> +	int acbi;	/* ac-bias pin transitions per interrupt */ +	/* Unit: line
> clocks */ +	int acb;	/* ac-bias pin frequency */
> +
> +	enum omap_panel_config config;
> +
> +	int power_on_delay;
> +	int power_off_delay;
> +	/*
> +	 * Used to match device to panel configuration
> +	 * when use generic panel driver
> +	 */
> +	const char *name;
> +};
> +
>  struct omap_dss_device {
>  	struct device dev;
> 
> @@ -395,15 +413,7 @@ struct omap_dss_device {
>  		} venc;
>  	} phy;
> 
> -	struct {
> -		struct omap_video_timings timings;
> -
> -		int acbi;	/* ac-bias pin transitions per
> interrupt */
> -		/* Unit: line clocks */
> -		int acb;	/* ac-bias pin frequency */
> -
> -		enum omap_panel_config config;
> -	} panel;
> +	struct omap_display_panel panel;
> 
>  	struct {
>  		u8 pixel_size;

I don't think that changing the omap_dss_device structure is the best way
to go about this. Members like power_on_delay and power_off_delay may not
be required by all types of panels. Same goes for the new "name" member since
its only used by the dummy dpi panels.

I think it would be better to go with the approach taken in panel-taal.c
where a struct "panel_config" exists to take care of extra requirements.

The omap_dss_device struct should contain only those members which would be
needed by the interface driver files like dsi.c, dpi.c etc. The rest should be
taken care of the panel drivers internally.

Archit--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux