Re: [PATCH v2] omapdrm: hdmi4: Correct the SoC revision matching

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

 



Hi Peter,

Thank you for the patch.

On Monday, 20 November 2017 11:51:40 EET Peter Ujfalusi wrote:
> I believe the intention of the commit 2c9fc9bf45f8
> ("drm: omapdrm: Move FEAT_HDMI_* features to hdmi4 driver")
> was to identify omap4430 ES1.x, omap4430 ES2.x and other OMAP4 revisions,
> like omap4460.
> 
> By using family=OMAP4 in the match the code will treat omap4460 ES1.x in a
> same way as it would treat omap4430 ES1.x
> 
> This breaks HDMI audio on OMAP4460 devices (PandaES for example).

Sorry for breaking this :-(

> Correct the match rule so we are not going to get false positive match.
> 
> Fixes: 2c9fc9bf45f8 ("drm: omapdrm: Move FEAT_HDMI_* features to hdmi4
> driver")
> 
> CC: stable@xxxxxxxxxxxxxxx # 4.14
> Signed-off-by: Peter Ujfalusi <peter.ujfalusi@xxxxxx>

Reviewed-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>

> ---
> Hi,
> 
> Changes since v1:
> - fix the hdmi4_features structure names for clarity.
> 
> Regards,
> Peter
> 
>  drivers/gpu/drm/omapdrm/dss/hdmi4_core.c | 23 +++++++++++++++++------
>  1 file changed, 17 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/gpu/drm/omapdrm/dss/hdmi4_core.c
> b/drivers/gpu/drm/omapdrm/dss/hdmi4_core.c index 62e451162d96..b06f9956e733
> 100644
> --- a/drivers/gpu/drm/omapdrm/dss/hdmi4_core.c
> +++ b/drivers/gpu/drm/omapdrm/dss/hdmi4_core.c
> @@ -886,25 +886,36 @@ struct hdmi4_features {
>  	bool audio_use_mclk;
>  };
> 
> -static const struct hdmi4_features hdmi4_es1_features = {
> +static const struct hdmi4_features hdmi4430_es1_features = {
>  	.cts_swmode = false,
>  	.audio_use_mclk = false,
>  };
> 
> -static const struct hdmi4_features hdmi4_es2_features = {
> +static const struct hdmi4_features hdmi4430_es2_features = {
>  	.cts_swmode = true,
>  	.audio_use_mclk = false,
>  };
> 
> -static const struct hdmi4_features hdmi4_es3_features = {
> +static const struct hdmi4_features hdmi4_features = {
>  	.cts_swmode = true,
>  	.audio_use_mclk = true,
>  };
> 
>  static const struct soc_device_attribute hdmi4_soc_devices[] = {
> -	{ .family = "OMAP4", .revision = "ES1.?", .data = &hdmi4_es1_features },
> -	{ .family = "OMAP4", .revision = "ES2.?", .data = &hdmi4_es2_features },
> -	{ .family = "OMAP4",			  .data = &hdmi4_es3_features },
> +	{
> +		.machine = "OMAP4430",
> +		.revision = "ES1.?",
> +		.data = &hdmi4430_es1_features,
> +	},
> +	{
> +		.machine = "OMAP4430",
> +		.revision = "ES2.?",
> +		.data = &hdmi4430_es2_features,
> +	},
> +	{
> +		.family = "OMAP4",
> +		.data = &hdmi4_features,
> +	},
>  	{ /* sentinel */ }
>  };

-- 
Regards,

Laurent Pinchart




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]