diff mbox

[1/4] drm/exynos: rename compatible strings for hdmi subsystem

Message ID 1371559778-9359-2-git-send-email-rahul.sharma@samsung.com (mailing list archive)
State New, archived
Headers show

Commit Message

Rahul Sharma June 18, 2013, 12:49 p.m. UTC
This patch renames the combatible strings for hdmi, mixer, ddc
and hdmiphy. It follows the convention of using compatible string
which represent the SoC in which the IP was added for the first
time.

Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
---
 Documentation/devicetree/bindings/video/exynos_hdmi.txt    |    6 ++++--
 Documentation/devicetree/bindings/video/exynos_hdmiddc.txt |    4 ++--
 Documentation/devicetree/bindings/video/exynos_hdmiphy.txt |    6 ++++--
 Documentation/devicetree/bindings/video/exynos_mixer.txt   |    7 +++++--
 drivers/gpu/drm/exynos/exynos_ddc.c                        |    2 +-
 drivers/gpu/drm/exynos/exynos_hdmi.c                       |    2 +-
 drivers/gpu/drm/exynos/exynos_hdmiphy.c                    |    4 +++-
 drivers/gpu/drm/exynos/exynos_mixer.c                      |   12 ++++++------
 8 files changed, 26 insertions(+), 17 deletions(-)

Comments

Seung-Woo Kim June 19, 2013, 5:43 a.m. UTC | #1
Hi Rahul,

It looks good, at least, to me.

Best Regards,
- Seung-Woo Kim

On 2013? 06? 18? 21:49, Rahul Sharma wrote:
> This patch renames the combatible strings for hdmi, mixer, ddc
> and hdmiphy. It follows the convention of using compatible string
> which represent the SoC in which the IP was added for the first
> time.
> 
> Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
> ---
>  Documentation/devicetree/bindings/video/exynos_hdmi.txt    |    6 ++++--
>  Documentation/devicetree/bindings/video/exynos_hdmiddc.txt |    4 ++--
>  Documentation/devicetree/bindings/video/exynos_hdmiphy.txt |    6 ++++--
>  Documentation/devicetree/bindings/video/exynos_mixer.txt   |    7 +++++--
>  drivers/gpu/drm/exynos/exynos_ddc.c                        |    2 +-
>  drivers/gpu/drm/exynos/exynos_hdmi.c                       |    2 +-
>  drivers/gpu/drm/exynos/exynos_hdmiphy.c                    |    4 +++-
>  drivers/gpu/drm/exynos/exynos_mixer.c                      |   12 ++++++------
>  8 files changed, 26 insertions(+), 17 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/video/exynos_hdmi.txt b/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> index 589edee..2ac01ca 100644
> --- a/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> +++ b/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> @@ -1,7 +1,9 @@
>  Device-Tree bindings for drm hdmi driver
>  
>  Required properties:
> -- compatible: value should be "samsung,exynos5-hdmi".
> +- compatible: value should be one among the following:
> +	1) "samsung,exynos4210-hdmi"
> +	2) "samsung,exynos4212-hdmi"
>  - reg: physical base address of the hdmi and length of memory mapped
>  	region.
>  - interrupts: interrupt number to the cpu.
> @@ -15,7 +17,7 @@ Required properties:
>  Example:
>  
>  	hdmi {
> -		compatible = "samsung,exynos5-hdmi";
> +		compatible = "samsung,exynos4212-hdmi";
>  		reg = <0x14530000 0x100000>;
>  		interrupts = <0 95 0>;
>  		hpd-gpio = <&gpx3 7 0xf 1 3>;
> diff --git a/Documentation/devicetree/bindings/video/exynos_hdmiddc.txt b/Documentation/devicetree/bindings/video/exynos_hdmiddc.txt
> index fa166d9..c1bd2ea 100644
> --- a/Documentation/devicetree/bindings/video/exynos_hdmiddc.txt
> +++ b/Documentation/devicetree/bindings/video/exynos_hdmiddc.txt
> @@ -1,12 +1,12 @@
>  Device-Tree bindings for hdmiddc driver
>  
>  Required properties:
> -- compatible: value should be "samsung,exynos5-hdmiddc".
> +- compatible: value should be "samsung,exynos4210-hdmiddc".
>  - reg: I2C address of the hdmiddc device.
>  
>  Example:
>  
>  	hdmiddc {
> -		compatible = "samsung,exynos5-hdmiddc";
> +		compatible = "samsung,exynos4210-hdmiddc";
>  		reg = <0x50>;
>  	};
> diff --git a/Documentation/devicetree/bindings/video/exynos_hdmiphy.txt b/Documentation/devicetree/bindings/video/exynos_hdmiphy.txt
> index 858f4f9..e59d793 100644
> --- a/Documentation/devicetree/bindings/video/exynos_hdmiphy.txt
> +++ b/Documentation/devicetree/bindings/video/exynos_hdmiphy.txt
> @@ -1,12 +1,14 @@
>  Device-Tree bindings for hdmiphy driver
>  
>  Required properties:
> -- compatible: value should be "samsung,exynos5-hdmiphy".
> +- compatible: value should be
> +	1) "samsung,exynos4210-hdmiphy".
> +	2) "samsung,exynos4212-hdmiphy".
>  - reg: I2C address of the hdmiphy device.
>  
>  Example:
>  
>  	hdmiphy {
> -		compatible = "samsung,exynos5-hdmiphy";
> +		compatible = "samsung,exynos4210-hdmiphy";
>  		reg = <0x38>;
>  	};
> diff --git a/Documentation/devicetree/bindings/video/exynos_mixer.txt b/Documentation/devicetree/bindings/video/exynos_mixer.txt
> index 9b2ea03..a8b063f 100644
> --- a/Documentation/devicetree/bindings/video/exynos_mixer.txt
> +++ b/Documentation/devicetree/bindings/video/exynos_mixer.txt
> @@ -1,7 +1,10 @@
>  Device-Tree bindings for mixer driver
>  
>  Required properties:
> -- compatible: value should be "samsung,exynos5-mixer".
> +- compatible: value should be:
> +	1) "samsung,exynos4210-mixer"
> +	2) "samsung,exynos5250-mixer"
> +
>  - reg: physical base address of the mixer and length of memory mapped
>  	region.
>  - interrupts: interrupt number to the cpu.
> @@ -9,7 +12,7 @@ Required properties:
>  Example:
>  
>  	mixer {
> -		compatible = "samsung,exynos5-mixer";
> +		compatible = "samsung,exynos5250-mixer";
>  		reg = <0x14450000 0x10000>;
>  		interrupts = <0 94 0>;
>  	};
> diff --git a/drivers/gpu/drm/exynos/exynos_ddc.c b/drivers/gpu/drm/exynos/exynos_ddc.c
> index 4e9b5ba..1a0cca1 100644
> --- a/drivers/gpu/drm/exynos/exynos_ddc.c
> +++ b/drivers/gpu/drm/exynos/exynos_ddc.c
> @@ -51,7 +51,7 @@ static struct i2c_device_id ddc_idtable[] = {
>  #ifdef CONFIG_OF
>  static struct of_device_id hdmiddc_match_types[] = {
>  	{
> -		.compatible = "samsung,exynos5-hdmiddc",
> +		.compatible = "samsung,exynos4210-hdmiddc",
>  	}, {
>  		/* end node */
>  	}
> diff --git a/drivers/gpu/drm/exynos/exynos_hdmi.c b/drivers/gpu/drm/exynos/exynos_hdmi.c
> index 743059f..8752171 100644
> --- a/drivers/gpu/drm/exynos/exynos_hdmi.c
> +++ b/drivers/gpu/drm/exynos/exynos_hdmi.c
> @@ -1913,7 +1913,7 @@ static struct platform_device_id hdmi_driver_types[] = {
>  #ifdef CONFIG_OF
>  static struct of_device_id hdmi_match_types[] = {
>  	{
> -		.compatible = "samsung,exynos5-hdmi",
> +		.compatible = "samsung,exynos4212-hdmi",
>  		.data	= (void	*)HDMI_TYPE14,
>  	}, {
>  		/* end node */
> diff --git a/drivers/gpu/drm/exynos/exynos_hdmiphy.c b/drivers/gpu/drm/exynos/exynos_hdmiphy.c
> index ea49d13..bf1718a 100644
> --- a/drivers/gpu/drm/exynos/exynos_hdmiphy.c
> +++ b/drivers/gpu/drm/exynos/exynos_hdmiphy.c
> @@ -49,7 +49,9 @@ static const struct i2c_device_id hdmiphy_id[] = {
>  #ifdef CONFIG_OF
>  static struct of_device_id hdmiphy_match_types[] = {
>  	{
> -		.compatible = "samsung,exynos5-hdmiphy",
> +		.compatible = "samsung,exynos4210-hdmiphy",
> +	}, {
> +		.compatible = "samsung,exynos4212-hdmiphy",
>  	}, {
>  		/* end node */
>  	}
> diff --git a/drivers/gpu/drm/exynos/exynos_mixer.c b/drivers/gpu/drm/exynos/exynos_mixer.c
> index f36f878..2fe6d33 100644
> --- a/drivers/gpu/drm/exynos/exynos_mixer.c
> +++ b/drivers/gpu/drm/exynos/exynos_mixer.c
> @@ -1115,12 +1115,12 @@ static int vp_resources_init(struct exynos_drm_hdmi_context *ctx,
>  	return 0;
>  }
>  
> -static struct mixer_drv_data exynos5_mxr_drv_data = {
> +static struct mixer_drv_data exynos5250_mxr_drv_data = {
>  	.version = MXR_VER_16_0_33_0,
>  	.is_vp_enabled = 0,
>  };
>  
> -static struct mixer_drv_data exynos4_mxr_drv_data = {
> +static struct mixer_drv_data exynos4210_mxr_drv_data = {
>  	.version = MXR_VER_0_0_0_16,
>  	.is_vp_enabled = 1,
>  };
> @@ -1128,10 +1128,10 @@ static struct mixer_drv_data exynos4_mxr_drv_data = {
>  static struct platform_device_id mixer_driver_types[] = {
>  	{
>  		.name		= "s5p-mixer",
> -		.driver_data	= (unsigned long)&exynos4_mxr_drv_data,
> +		.driver_data	= (unsigned long)&exynos4210_mxr_drv_data,
>  	}, {
>  		.name		= "exynos5-mixer",
> -		.driver_data	= (unsigned long)&exynos5_mxr_drv_data,
> +		.driver_data	= (unsigned long)&exynos5250_mxr_drv_data,
>  	}, {
>  		/* end node */
>  	}
> @@ -1139,8 +1139,8 @@ static struct platform_device_id mixer_driver_types[] = {
>  
>  static struct of_device_id mixer_match_types[] = {
>  	{
> -		.compatible = "samsung,exynos5-mixer",
> -		.data	= &exynos5_mxr_drv_data,
> +		.compatible = "samsung,exynos5250-mixer",
> +		.data	= &exynos5250_mxr_drv_data,
>  	}, {
>  		/* end node */
>  	}
>
Inki Dae June 19, 2013, 7:05 a.m. UTC | #2
> -----Original Message-----
> From: Rahul Sharma [mailto:rahul.sharma@samsung.com]
> Sent: Tuesday, June 18, 2013 9:50 PM
> To: linux-samsung-soc@vger.kernel.org;
devicetree-discuss@lists.ozlabs.org;
> dri-devel@lists.freedesktop.org
> Cc: kgene.kim@samsung.com; sw0312.kim@samsung.com; inki.dae@samsung.com;
> joshi@samsung.com; r.sh.open@gmail.com; Rahul Sharma
> Subject: [PATCH 1/4] drm/exynos: rename compatible strings for hdmi
> subsystem
> 
> This patch renames the combatible strings for hdmi, mixer, ddc
> and hdmiphy. It follows the convention of using compatible string
> which represent the SoC in which the IP was added for the first
> time.
> 

Hi Rahul,

Could you separate this patch into two patches, driver side and document
side, and the below patch also?
	[PATCH v2 2/4] drm/exynos: add support for exynos5420 mixer

Thanks,
Inki Dae

> Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
> ---
>  Documentation/devicetree/bindings/video/exynos_hdmi.txt    |    6 ++++--
>  Documentation/devicetree/bindings/video/exynos_hdmiddc.txt |    4 ++--
>  Documentation/devicetree/bindings/video/exynos_hdmiphy.txt |    6 ++++--
>  Documentation/devicetree/bindings/video/exynos_mixer.txt   |    7 +++++--
>  drivers/gpu/drm/exynos/exynos_ddc.c                        |    2 +-
>  drivers/gpu/drm/exynos/exynos_hdmi.c                       |    2 +-
>  drivers/gpu/drm/exynos/exynos_hdmiphy.c                    |    4 +++-
>  drivers/gpu/drm/exynos/exynos_mixer.c                      |   12
++++++------
>  8 files changed, 26 insertions(+), 17 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> b/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> index 589edee..2ac01ca 100644
> --- a/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> +++ b/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> @@ -1,7 +1,9 @@
>  Device-Tree bindings for drm hdmi driver
> 
>  Required properties:
> -- compatible: value should be "samsung,exynos5-hdmi".
> +- compatible: value should be one among the following:
> +	1) "samsung,exynos4210-hdmi"
> +	2) "samsung,exynos4212-hdmi"
>  - reg: physical base address of the hdmi and length of memory mapped
>  	region.
>  - interrupts: interrupt number to the cpu.
> @@ -15,7 +17,7 @@ Required properties:
>  Example:
> 
>  	hdmi {
> -		compatible = "samsung,exynos5-hdmi";
> +		compatible = "samsung,exynos4212-hdmi";
>  		reg = <0x14530000 0x100000>;
>  		interrupts = <0 95 0>;
>  		hpd-gpio = <&gpx3 7 0xf 1 3>;
> diff --git a/Documentation/devicetree/bindings/video/exynos_hdmiddc.txt
> b/Documentation/devicetree/bindings/video/exynos_hdmiddc.txt
> index fa166d9..c1bd2ea 100644
> --- a/Documentation/devicetree/bindings/video/exynos_hdmiddc.txt
> +++ b/Documentation/devicetree/bindings/video/exynos_hdmiddc.txt
> @@ -1,12 +1,12 @@
>  Device-Tree bindings for hdmiddc driver
> 
>  Required properties:
> -- compatible: value should be "samsung,exynos5-hdmiddc".
> +- compatible: value should be "samsung,exynos4210-hdmiddc".
>  - reg: I2C address of the hdmiddc device.
> 
>  Example:
> 
>  	hdmiddc {
> -		compatible = "samsung,exynos5-hdmiddc";
> +		compatible = "samsung,exynos4210-hdmiddc";
>  		reg = <0x50>;
>  	};
> diff --git a/Documentation/devicetree/bindings/video/exynos_hdmiphy.txt
> b/Documentation/devicetree/bindings/video/exynos_hdmiphy.txt
> index 858f4f9..e59d793 100644
> --- a/Documentation/devicetree/bindings/video/exynos_hdmiphy.txt
> +++ b/Documentation/devicetree/bindings/video/exynos_hdmiphy.txt
> @@ -1,12 +1,14 @@
>  Device-Tree bindings for hdmiphy driver
> 
>  Required properties:
> -- compatible: value should be "samsung,exynos5-hdmiphy".
> +- compatible: value should be
> +	1) "samsung,exynos4210-hdmiphy".
> +	2) "samsung,exynos4212-hdmiphy".
>  - reg: I2C address of the hdmiphy device.
> 
>  Example:
> 
>  	hdmiphy {
> -		compatible = "samsung,exynos5-hdmiphy";
> +		compatible = "samsung,exynos4210-hdmiphy";
>  		reg = <0x38>;
>  	};
> diff --git a/Documentation/devicetree/bindings/video/exynos_mixer.txt
> b/Documentation/devicetree/bindings/video/exynos_mixer.txt
> index 9b2ea03..a8b063f 100644
> --- a/Documentation/devicetree/bindings/video/exynos_mixer.txt
> +++ b/Documentation/devicetree/bindings/video/exynos_mixer.txt
> @@ -1,7 +1,10 @@
>  Device-Tree bindings for mixer driver
> 
>  Required properties:
> -- compatible: value should be "samsung,exynos5-mixer".
> +- compatible: value should be:
> +	1) "samsung,exynos4210-mixer"
> +	2) "samsung,exynos5250-mixer"
> +
>  - reg: physical base address of the mixer and length of memory mapped
>  	region.
>  - interrupts: interrupt number to the cpu.
> @@ -9,7 +12,7 @@ Required properties:
>  Example:
> 
>  	mixer {
> -		compatible = "samsung,exynos5-mixer";
> +		compatible = "samsung,exynos5250-mixer";
>  		reg = <0x14450000 0x10000>;
>  		interrupts = <0 94 0>;
>  	};
> diff --git a/drivers/gpu/drm/exynos/exynos_ddc.c
> b/drivers/gpu/drm/exynos/exynos_ddc.c
> index 4e9b5ba..1a0cca1 100644
> --- a/drivers/gpu/drm/exynos/exynos_ddc.c
> +++ b/drivers/gpu/drm/exynos/exynos_ddc.c
> @@ -51,7 +51,7 @@ static struct i2c_device_id ddc_idtable[] = {
>  #ifdef CONFIG_OF
>  static struct of_device_id hdmiddc_match_types[] = {
>  	{
> -		.compatible = "samsung,exynos5-hdmiddc",
> +		.compatible = "samsung,exynos4210-hdmiddc",
>  	}, {
>  		/* end node */
>  	}
> diff --git a/drivers/gpu/drm/exynos/exynos_hdmi.c
> b/drivers/gpu/drm/exynos/exynos_hdmi.c
> index 743059f..8752171 100644
> --- a/drivers/gpu/drm/exynos/exynos_hdmi.c
> +++ b/drivers/gpu/drm/exynos/exynos_hdmi.c
> @@ -1913,7 +1913,7 @@ static struct platform_device_id hdmi_driver_types[]
> = {
>  #ifdef CONFIG_OF
>  static struct of_device_id hdmi_match_types[] = {
>  	{
> -		.compatible = "samsung,exynos5-hdmi",
> +		.compatible = "samsung,exynos4212-hdmi",
>  		.data	= (void	*)HDMI_TYPE14,
>  	}, {
>  		/* end node */
> diff --git a/drivers/gpu/drm/exynos/exynos_hdmiphy.c
> b/drivers/gpu/drm/exynos/exynos_hdmiphy.c
> index ea49d13..bf1718a 100644
> --- a/drivers/gpu/drm/exynos/exynos_hdmiphy.c
> +++ b/drivers/gpu/drm/exynos/exynos_hdmiphy.c
> @@ -49,7 +49,9 @@ static const struct i2c_device_id hdmiphy_id[] = {
>  #ifdef CONFIG_OF
>  static struct of_device_id hdmiphy_match_types[] = {
>  	{
> -		.compatible = "samsung,exynos5-hdmiphy",
> +		.compatible = "samsung,exynos4210-hdmiphy",
> +	}, {
> +		.compatible = "samsung,exynos4212-hdmiphy",
>  	}, {
>  		/* end node */
>  	}
> diff --git a/drivers/gpu/drm/exynos/exynos_mixer.c
> b/drivers/gpu/drm/exynos/exynos_mixer.c
> index f36f878..2fe6d33 100644
> --- a/drivers/gpu/drm/exynos/exynos_mixer.c
> +++ b/drivers/gpu/drm/exynos/exynos_mixer.c
> @@ -1115,12 +1115,12 @@ static int vp_resources_init(struct
> exynos_drm_hdmi_context *ctx,
>  	return 0;
>  }
> 
> -static struct mixer_drv_data exynos5_mxr_drv_data = {
> +static struct mixer_drv_data exynos5250_mxr_drv_data = {
>  	.version = MXR_VER_16_0_33_0,
>  	.is_vp_enabled = 0,
>  };
> 
> -static struct mixer_drv_data exynos4_mxr_drv_data = {
> +static struct mixer_drv_data exynos4210_mxr_drv_data = {
>  	.version = MXR_VER_0_0_0_16,
>  	.is_vp_enabled = 1,
>  };
> @@ -1128,10 +1128,10 @@ static struct mixer_drv_data exynos4_mxr_drv_data
> = {
>  static struct platform_device_id mixer_driver_types[] = {
>  	{
>  		.name		= "s5p-mixer",
> -		.driver_data	= (unsigned long)&exynos4_mxr_drv_data,
> +		.driver_data	= (unsigned long)&exynos4210_mxr_drv_data,
>  	}, {
>  		.name		= "exynos5-mixer",
> -		.driver_data	= (unsigned long)&exynos5_mxr_drv_data,
> +		.driver_data	= (unsigned long)&exynos5250_mxr_drv_data,
>  	}, {
>  		/* end node */
>  	}
> @@ -1139,8 +1139,8 @@ static struct platform_device_id
mixer_driver_types[]
> = {
> 
>  static struct of_device_id mixer_match_types[] = {
>  	{
> -		.compatible = "samsung,exynos5-mixer",
> -		.data	= &exynos5_mxr_drv_data,
> +		.compatible = "samsung,exynos5250-mixer",
> +		.data	= &exynos5250_mxr_drv_data,
>  	}, {
>  		/* end node */
>  	}
> --
> 1.7.10.4
Inki Dae June 19, 2013, 7:36 a.m. UTC | #3
> -----Original Message-----
> From: Inki Dae [mailto:inki.dae@samsung.com]
> Sent: Wednesday, June 19, 2013 4:06 PM
> To: 'Rahul Sharma'; 'linux-samsung-soc@vger.kernel.org'; 'devicetree-
> discuss@lists.ozlabs.org'; 'dri-devel@lists.freedesktop.org'
> Cc: 'kgene.kim@samsung.com'; 'sw0312.kim@samsung.com';
'joshi@samsung.com';
> 'r.sh.open@gmail.com'
> Subject: RE: [PATCH 1/4] drm/exynos: rename compatible strings for hdmi
> subsystem
> 
> 
> 
> > -----Original Message-----
> > From: Rahul Sharma [mailto:rahul.sharma@samsung.com]
> > Sent: Tuesday, June 18, 2013 9:50 PM
> > To: linux-samsung-soc@vger.kernel.org; devicetree-
> discuss@lists.ozlabs.org;
> > dri-devel@lists.freedesktop.org
> > Cc: kgene.kim@samsung.com; sw0312.kim@samsung.com; inki.dae@samsung.com;
> > joshi@samsung.com; r.sh.open@gmail.com; Rahul Sharma
> > Subject: [PATCH 1/4] drm/exynos: rename compatible strings for hdmi
> > subsystem
> >
> > This patch renames the combatible strings for hdmi, mixer, ddc
> > and hdmiphy. It follows the convention of using compatible string
> > which represent the SoC in which the IP was added for the first
> > time.
> >
> 
> Hi Rahul,
> 
> Could you separate this patch into two patches, driver side and document
> side, and the below patch also?
> 	[PATCH v2 2/4] drm/exynos: add support for exynos5420 mixer
> 

Sorry, just will merge them.

To devicetree maintainers, please give me ACK.

Thanks,
Inki Dae

> Thanks,
> Inki Dae
> 
> > Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
> > ---
> >  Documentation/devicetree/bindings/video/exynos_hdmi.txt    |    6
++++--
> >  Documentation/devicetree/bindings/video/exynos_hdmiddc.txt |    4 ++--
> >  Documentation/devicetree/bindings/video/exynos_hdmiphy.txt |    6
++++--
> >  Documentation/devicetree/bindings/video/exynos_mixer.txt   |    7
+++++--
> >  drivers/gpu/drm/exynos/exynos_ddc.c                        |    2 +-
> >  drivers/gpu/drm/exynos/exynos_hdmi.c                       |    2 +-
> >  drivers/gpu/drm/exynos/exynos_hdmiphy.c                    |    4 +++-
> >  drivers/gpu/drm/exynos/exynos_mixer.c                      |   12
++++++-----
> -
> >  8 files changed, 26 insertions(+), 17 deletions(-)
> >
> > diff --git a/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> > b/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> > index 589edee..2ac01ca 100644
> > --- a/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> > +++ b/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> > @@ -1,7 +1,9 @@
> >  Device-Tree bindings for drm hdmi driver
> >
> >  Required properties:
> > -- compatible: value should be "samsung,exynos5-hdmi".
> > +- compatible: value should be one among the following:
> > +	1) "samsung,exynos4210-hdmi"
> > +	2) "samsung,exynos4212-hdmi"
> >  - reg: physical base address of the hdmi and length of memory mapped
> >  	region.
> >  - interrupts: interrupt number to the cpu.
> > @@ -15,7 +17,7 @@ Required properties:
> >  Example:
> >
> >  	hdmi {
> > -		compatible = "samsung,exynos5-hdmi";
> > +		compatible = "samsung,exynos4212-hdmi";
> >  		reg = <0x14530000 0x100000>;
> >  		interrupts = <0 95 0>;
> >  		hpd-gpio = <&gpx3 7 0xf 1 3>;
> > diff --git a/Documentation/devicetree/bindings/video/exynos_hdmiddc.txt
> > b/Documentation/devicetree/bindings/video/exynos_hdmiddc.txt
> > index fa166d9..c1bd2ea 100644
> > --- a/Documentation/devicetree/bindings/video/exynos_hdmiddc.txt
> > +++ b/Documentation/devicetree/bindings/video/exynos_hdmiddc.txt
> > @@ -1,12 +1,12 @@
> >  Device-Tree bindings for hdmiddc driver
> >
> >  Required properties:
> > -- compatible: value should be "samsung,exynos5-hdmiddc".
> > +- compatible: value should be "samsung,exynos4210-hdmiddc".
> >  - reg: I2C address of the hdmiddc device.
> >
> >  Example:
> >
> >  	hdmiddc {
> > -		compatible = "samsung,exynos5-hdmiddc";
> > +		compatible = "samsung,exynos4210-hdmiddc";
> >  		reg = <0x50>;
> >  	};
> > diff --git a/Documentation/devicetree/bindings/video/exynos_hdmiphy.txt
> > b/Documentation/devicetree/bindings/video/exynos_hdmiphy.txt
> > index 858f4f9..e59d793 100644
> > --- a/Documentation/devicetree/bindings/video/exynos_hdmiphy.txt
> > +++ b/Documentation/devicetree/bindings/video/exynos_hdmiphy.txt
> > @@ -1,12 +1,14 @@
> >  Device-Tree bindings for hdmiphy driver
> >
> >  Required properties:
> > -- compatible: value should be "samsung,exynos5-hdmiphy".
> > +- compatible: value should be
> > +	1) "samsung,exynos4210-hdmiphy".
> > +	2) "samsung,exynos4212-hdmiphy".
> >  - reg: I2C address of the hdmiphy device.
> >
> >  Example:
> >
> >  	hdmiphy {
> > -		compatible = "samsung,exynos5-hdmiphy";
> > +		compatible = "samsung,exynos4210-hdmiphy";
> >  		reg = <0x38>;
> >  	};
> > diff --git a/Documentation/devicetree/bindings/video/exynos_mixer.txt
> > b/Documentation/devicetree/bindings/video/exynos_mixer.txt
> > index 9b2ea03..a8b063f 100644
> > --- a/Documentation/devicetree/bindings/video/exynos_mixer.txt
> > +++ b/Documentation/devicetree/bindings/video/exynos_mixer.txt
> > @@ -1,7 +1,10 @@
> >  Device-Tree bindings for mixer driver
> >
> >  Required properties:
> > -- compatible: value should be "samsung,exynos5-mixer".
> > +- compatible: value should be:
> > +	1) "samsung,exynos4210-mixer"
> > +	2) "samsung,exynos5250-mixer"
> > +
> >  - reg: physical base address of the mixer and length of memory mapped
> >  	region.
> >  - interrupts: interrupt number to the cpu.
> > @@ -9,7 +12,7 @@ Required properties:
> >  Example:
> >
> >  	mixer {
> > -		compatible = "samsung,exynos5-mixer";
> > +		compatible = "samsung,exynos5250-mixer";
> >  		reg = <0x14450000 0x10000>;
> >  		interrupts = <0 94 0>;
> >  	};
> > diff --git a/drivers/gpu/drm/exynos/exynos_ddc.c
> > b/drivers/gpu/drm/exynos/exynos_ddc.c
> > index 4e9b5ba..1a0cca1 100644
> > --- a/drivers/gpu/drm/exynos/exynos_ddc.c
> > +++ b/drivers/gpu/drm/exynos/exynos_ddc.c
> > @@ -51,7 +51,7 @@ static struct i2c_device_id ddc_idtable[] = {
> >  #ifdef CONFIG_OF
> >  static struct of_device_id hdmiddc_match_types[] = {
> >  	{
> > -		.compatible = "samsung,exynos5-hdmiddc",
> > +		.compatible = "samsung,exynos4210-hdmiddc",
> >  	}, {
> >  		/* end node */
> >  	}
> > diff --git a/drivers/gpu/drm/exynos/exynos_hdmi.c
> > b/drivers/gpu/drm/exynos/exynos_hdmi.c
> > index 743059f..8752171 100644
> > --- a/drivers/gpu/drm/exynos/exynos_hdmi.c
> > +++ b/drivers/gpu/drm/exynos/exynos_hdmi.c
> > @@ -1913,7 +1913,7 @@ static struct platform_device_id
> hdmi_driver_types[]
> > = {
> >  #ifdef CONFIG_OF
> >  static struct of_device_id hdmi_match_types[] = {
> >  	{
> > -		.compatible = "samsung,exynos5-hdmi",
> > +		.compatible = "samsung,exynos4212-hdmi",
> >  		.data	= (void	*)HDMI_TYPE14,
> >  	}, {
> >  		/* end node */
> > diff --git a/drivers/gpu/drm/exynos/exynos_hdmiphy.c
> > b/drivers/gpu/drm/exynos/exynos_hdmiphy.c
> > index ea49d13..bf1718a 100644
> > --- a/drivers/gpu/drm/exynos/exynos_hdmiphy.c
> > +++ b/drivers/gpu/drm/exynos/exynos_hdmiphy.c
> > @@ -49,7 +49,9 @@ static const struct i2c_device_id hdmiphy_id[] = {
> >  #ifdef CONFIG_OF
> >  static struct of_device_id hdmiphy_match_types[] = {
> >  	{
> > -		.compatible = "samsung,exynos5-hdmiphy",
> > +		.compatible = "samsung,exynos4210-hdmiphy",
> > +	}, {
> > +		.compatible = "samsung,exynos4212-hdmiphy",
> >  	}, {
> >  		/* end node */
> >  	}
> > diff --git a/drivers/gpu/drm/exynos/exynos_mixer.c
> > b/drivers/gpu/drm/exynos/exynos_mixer.c
> > index f36f878..2fe6d33 100644
> > --- a/drivers/gpu/drm/exynos/exynos_mixer.c
> > +++ b/drivers/gpu/drm/exynos/exynos_mixer.c
> > @@ -1115,12 +1115,12 @@ static int vp_resources_init(struct
> > exynos_drm_hdmi_context *ctx,
> >  	return 0;
> >  }
> >
> > -static struct mixer_drv_data exynos5_mxr_drv_data = {
> > +static struct mixer_drv_data exynos5250_mxr_drv_data = {
> >  	.version = MXR_VER_16_0_33_0,
> >  	.is_vp_enabled = 0,
> >  };
> >
> > -static struct mixer_drv_data exynos4_mxr_drv_data = {
> > +static struct mixer_drv_data exynos4210_mxr_drv_data = {
> >  	.version = MXR_VER_0_0_0_16,
> >  	.is_vp_enabled = 1,
> >  };
> > @@ -1128,10 +1128,10 @@ static struct mixer_drv_data
> exynos4_mxr_drv_data
> > = {
> >  static struct platform_device_id mixer_driver_types[] = {
> >  	{
> >  		.name		= "s5p-mixer",
> > -		.driver_data	= (unsigned long)&exynos4_mxr_drv_data,
> > +		.driver_data	= (unsigned long)&exynos4210_mxr_drv_data,
> >  	}, {
> >  		.name		= "exynos5-mixer",
> > -		.driver_data	= (unsigned long)&exynos5_mxr_drv_data,
> > +		.driver_data	= (unsigned long)&exynos5250_mxr_drv_data,
> >  	}, {
> >  		/* end node */
> >  	}
> > @@ -1139,8 +1139,8 @@ static struct platform_device_id
> mixer_driver_types[]
> > = {
> >
> >  static struct of_device_id mixer_match_types[] = {
> >  	{
> > -		.compatible = "samsung,exynos5-mixer",
> > -		.data	= &exynos5_mxr_drv_data,
> > +		.compatible = "samsung,exynos5250-mixer",
> > +		.data	= &exynos5250_mxr_drv_data,
> >  	}, {
> >  		/* end node */
> >  	}
> > --
> > 1.7.10.4
Tomasz Figa June 19, 2013, 7:52 a.m. UTC | #4
Hi Rahul,

On Tuesday 18 of June 2013 18:19:35 Rahul Sharma wrote:
> This patch renames the combatible strings for hdmi, mixer, ddc
> and hdmiphy. It follows the convention of using compatible string
> which represent the SoC in which the IP was added for the first
> time.
> 
> Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
> ---
>  Documentation/devicetree/bindings/video/exynos_hdmi.txt    |    6
> ++++-- Documentation/devicetree/bindings/video/exynos_hdmiddc.txt |   
> 4 ++-- Documentation/devicetree/bindings/video/exynos_hdmiphy.txt |   
> 6 ++++-- Documentation/devicetree/bindings/video/exynos_mixer.txt   |  
>  7 +++++-- drivers/gpu/drm/exynos/exynos_ddc.c                        |
>    2 +- drivers/gpu/drm/exynos/exynos_hdmi.c                       |   
> 2 +- drivers/gpu/drm/exynos/exynos_hdmiphy.c                    |    4
> +++- drivers/gpu/drm/exynos/exynos_mixer.c                      |   12
> ++++++------ 8 files changed, 26 insertions(+), 17 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> b/Documentation/devicetree/bindings/video/exynos_hdmi.txt index
> 589edee..2ac01ca 100644
> --- a/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> +++ b/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> @@ -1,7 +1,9 @@
>  Device-Tree bindings for drm hdmi driver
> 
>  Required properties:
> -- compatible: value should be "samsung,exynos5-hdmi".
> +- compatible: value should be one among the following:
> +	1) "samsung,exynos4210-hdmi"
> +	2) "samsung,exynos4212-hdmi"
>  - reg: physical base address of the hdmi and length of memory mapped
>  	region.
>  - interrupts: interrupt number to the cpu.
> @@ -15,7 +17,7 @@ Required properties:
>  Example:
> 
>  	hdmi {
> -		compatible = "samsung,exynos5-hdmi";
> +		compatible = "samsung,exynos4212-hdmi";

Sorry, but it's a NAK from me.

DeviceTree bindings are considered an ABI. This is to allow older dtbs to 
work with new kernels.

If you just change the binding this way, you break all the existing users 
of this compatible value.

In addition you are doing it in a way that breaks bisection:
 - patch 1/4 breaks existing in-tree users of current compatible values,
 - after patch 2 and 3 it is still broken,
 - and eventually all in-tree users are fixed by patch 4 (but you can't 
fix out-of-tree users).

Please do it without changing existing compatible values. Even if they are 
misleading, this is all can be described in the documentation - just list 
SoCs that can be used with each compatible value there.

Best regards,
Tomasz

>  		reg = <0x14530000 0x100000>;
>  		interrupts = <0 95 0>;
>  		hpd-gpio = <&gpx3 7 0xf 1 3>;
> diff --git a/Documentation/devicetree/bindings/video/exynos_hdmiddc.txt
> b/Documentation/devicetree/bindings/video/exynos_hdmiddc.txt index
> fa166d9..c1bd2ea 100644
> --- a/Documentation/devicetree/bindings/video/exynos_hdmiddc.txt
> +++ b/Documentation/devicetree/bindings/video/exynos_hdmiddc.txt
> @@ -1,12 +1,12 @@
>  Device-Tree bindings for hdmiddc driver
> 
>  Required properties:
> -- compatible: value should be "samsung,exynos5-hdmiddc".
> +- compatible: value should be "samsung,exynos4210-hdmiddc".
>  - reg: I2C address of the hdmiddc device.
> 
>  Example:
> 
>  	hdmiddc {
> -		compatible = "samsung,exynos5-hdmiddc";
> +		compatible = "samsung,exynos4210-hdmiddc";
>  		reg = <0x50>;
>  	};
> diff --git a/Documentation/devicetree/bindings/video/exynos_hdmiphy.txt
> b/Documentation/devicetree/bindings/video/exynos_hdmiphy.txt index
> 858f4f9..e59d793 100644
> --- a/Documentation/devicetree/bindings/video/exynos_hdmiphy.txt
> +++ b/Documentation/devicetree/bindings/video/exynos_hdmiphy.txt
> @@ -1,12 +1,14 @@
>  Device-Tree bindings for hdmiphy driver
> 
>  Required properties:
> -- compatible: value should be "samsung,exynos5-hdmiphy".
> +- compatible: value should be
> +	1) "samsung,exynos4210-hdmiphy".
> +	2) "samsung,exynos4212-hdmiphy".
>  - reg: I2C address of the hdmiphy device.
> 
>  Example:
> 
>  	hdmiphy {
> -		compatible = "samsung,exynos5-hdmiphy";
> +		compatible = "samsung,exynos4210-hdmiphy";
>  		reg = <0x38>;
>  	};
> diff --git a/Documentation/devicetree/bindings/video/exynos_mixer.txt
> b/Documentation/devicetree/bindings/video/exynos_mixer.txt index
> 9b2ea03..a8b063f 100644
> --- a/Documentation/devicetree/bindings/video/exynos_mixer.txt
> +++ b/Documentation/devicetree/bindings/video/exynos_mixer.txt
> @@ -1,7 +1,10 @@
>  Device-Tree bindings for mixer driver
> 
>  Required properties:
> -- compatible: value should be "samsung,exynos5-mixer".
> +- compatible: value should be:
> +	1) "samsung,exynos4210-mixer"
> +	2) "samsung,exynos5250-mixer"
> +
>  - reg: physical base address of the mixer and length of memory mapped
>  	region.
>  - interrupts: interrupt number to the cpu.
> @@ -9,7 +12,7 @@ Required properties:
>  Example:
> 
>  	mixer {
> -		compatible = "samsung,exynos5-mixer";
> +		compatible = "samsung,exynos5250-mixer";
>  		reg = <0x14450000 0x10000>;
>  		interrupts = <0 94 0>;
>  	};
> diff --git a/drivers/gpu/drm/exynos/exynos_ddc.c
> b/drivers/gpu/drm/exynos/exynos_ddc.c index 4e9b5ba..1a0cca1 100644
> --- a/drivers/gpu/drm/exynos/exynos_ddc.c
> +++ b/drivers/gpu/drm/exynos/exynos_ddc.c
> @@ -51,7 +51,7 @@ static struct i2c_device_id ddc_idtable[] = {
>  #ifdef CONFIG_OF
>  static struct of_device_id hdmiddc_match_types[] = {
>  	{
> -		.compatible = "samsung,exynos5-hdmiddc",
> +		.compatible = "samsung,exynos4210-hdmiddc",
>  	}, {
>  		/* end node */
>  	}
> diff --git a/drivers/gpu/drm/exynos/exynos_hdmi.c
> b/drivers/gpu/drm/exynos/exynos_hdmi.c index 743059f..8752171 100644
> --- a/drivers/gpu/drm/exynos/exynos_hdmi.c
> +++ b/drivers/gpu/drm/exynos/exynos_hdmi.c
> @@ -1913,7 +1913,7 @@ static struct platform_device_id
> hdmi_driver_types[] = { #ifdef CONFIG_OF
>  static struct of_device_id hdmi_match_types[] = {
>  	{
> -		.compatible = "samsung,exynos5-hdmi",
> +		.compatible = "samsung,exynos4212-hdmi",
>  		.data	= (void	*)HDMI_TYPE14,
>  	}, {
>  		/* end node */
> diff --git a/drivers/gpu/drm/exynos/exynos_hdmiphy.c
> b/drivers/gpu/drm/exynos/exynos_hdmiphy.c index ea49d13..bf1718a 100644
> --- a/drivers/gpu/drm/exynos/exynos_hdmiphy.c
> +++ b/drivers/gpu/drm/exynos/exynos_hdmiphy.c
> @@ -49,7 +49,9 @@ static const struct i2c_device_id hdmiphy_id[] = {
>  #ifdef CONFIG_OF
>  static struct of_device_id hdmiphy_match_types[] = {
>  	{
> -		.compatible = "samsung,exynos5-hdmiphy",
> +		.compatible = "samsung,exynos4210-hdmiphy",
> +	}, {
> +		.compatible = "samsung,exynos4212-hdmiphy",
>  	}, {
>  		/* end node */
>  	}
> diff --git a/drivers/gpu/drm/exynos/exynos_mixer.c
> b/drivers/gpu/drm/exynos/exynos_mixer.c index f36f878..2fe6d33 100644
> --- a/drivers/gpu/drm/exynos/exynos_mixer.c
> +++ b/drivers/gpu/drm/exynos/exynos_mixer.c
> @@ -1115,12 +1115,12 @@ static int vp_resources_init(struct
> exynos_drm_hdmi_context *ctx, return 0;
>  }
> 
> -static struct mixer_drv_data exynos5_mxr_drv_data = {
> +static struct mixer_drv_data exynos5250_mxr_drv_data = {
>  	.version = MXR_VER_16_0_33_0,
>  	.is_vp_enabled = 0,
>  };
> 
> -static struct mixer_drv_data exynos4_mxr_drv_data = {
> +static struct mixer_drv_data exynos4210_mxr_drv_data = {
>  	.version = MXR_VER_0_0_0_16,
>  	.is_vp_enabled = 1,
>  };
> @@ -1128,10 +1128,10 @@ static struct mixer_drv_data
> exynos4_mxr_drv_data = { static struct platform_device_id
> mixer_driver_types[] = {
>  	{
>  		.name		= "s5p-mixer",
> -		.driver_data	= (unsigned long)&exynos4_mxr_drv_data,
> +		.driver_data	= (unsigned long)&exynos4210_mxr_drv_data,
>  	}, {
>  		.name		= "exynos5-mixer",
> -		.driver_data	= (unsigned long)&exynos5_mxr_drv_data,
> +		.driver_data	= (unsigned long)&exynos5250_mxr_drv_data,
>  	}, {
>  		/* end node */
>  	}
> @@ -1139,8 +1139,8 @@ static struct platform_device_id
> mixer_driver_types[] = {
> 
>  static struct of_device_id mixer_match_types[] = {
>  	{
> -		.compatible = "samsung,exynos5-mixer",
> -		.data	= &exynos5_mxr_drv_data,
> +		.compatible = "samsung,exynos5250-mixer",
> +		.data	= &exynos5250_mxr_drv_data,
>  	}, {
>  		/* end node */
>  	}
Lucas Stach June 19, 2013, 7:59 a.m. UTC | #5
Am Mittwoch, den 19.06.2013, 09:52 +0200 schrieb Tomasz Figa:
> Hi Rahul,
> 
> On Tuesday 18 of June 2013 18:19:35 Rahul Sharma wrote:
> > This patch renames the combatible strings for hdmi, mixer, ddc
> > and hdmiphy. It follows the convention of using compatible string
> > which represent the SoC in which the IP was added for the first
> > time.
> > 
> > Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
> > ---
> >  Documentation/devicetree/bindings/video/exynos_hdmi.txt    |    6
> > ++++-- Documentation/devicetree/bindings/video/exynos_hdmiddc.txt |   
> > 4 ++-- Documentation/devicetree/bindings/video/exynos_hdmiphy.txt |   
> > 6 ++++-- Documentation/devicetree/bindings/video/exynos_mixer.txt   |  
> >  7 +++++-- drivers/gpu/drm/exynos/exynos_ddc.c                        |
> >    2 +- drivers/gpu/drm/exynos/exynos_hdmi.c                       |   
> > 2 +- drivers/gpu/drm/exynos/exynos_hdmiphy.c                    |    4
> > +++- drivers/gpu/drm/exynos/exynos_mixer.c                      |   12
> > ++++++------ 8 files changed, 26 insertions(+), 17 deletions(-)
> > 
> > diff --git a/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> > b/Documentation/devicetree/bindings/video/exynos_hdmi.txt index
> > 589edee..2ac01ca 100644
> > --- a/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> > +++ b/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> > @@ -1,7 +1,9 @@
> >  Device-Tree bindings for drm hdmi driver
> > 
> >  Required properties:
> > -- compatible: value should be "samsung,exynos5-hdmi".
> > +- compatible: value should be one among the following:
> > +	1) "samsung,exynos4210-hdmi"
> > +	2) "samsung,exynos4212-hdmi"
> >  - reg: physical base address of the hdmi and length of memory mapped
> >  	region.
> >  - interrupts: interrupt number to the cpu.
> > @@ -15,7 +17,7 @@ Required properties:
> >  Example:
> > 
> >  	hdmi {
> > -		compatible = "samsung,exynos5-hdmi";
> > +		compatible = "samsung,exynos4212-hdmi";
> 
> Sorry, but it's a NAK from me.
> 
> DeviceTree bindings are considered an ABI. This is to allow older dtbs to 
> work with new kernels.
> 
> If you just change the binding this way, you break all the existing users 
> of this compatible value.
> 
> In addition you are doing it in a way that breaks bisection:
>  - patch 1/4 breaks existing in-tree users of current compatible values,
>  - after patch 2 and 3 it is still broken,
>  - and eventually all in-tree users are fixed by patch 4 (but you can't 
> fix out-of-tree users).
> 
> Please do it without changing existing compatible values. Even if they are 
> misleading, this is all can be described in the documentation - just list 
> SoCs that can be used with each compatible value there.
> 

Or you could just introduce the new compatible value and make all
in-tree users use this, but keep the old values around and still accept
them in the drivers. This way you get the goodness of the cleaner new
symbols without breaking existing users. Just mark the old values as
deprecated in the documentation, so no new devicetree usees them.

Regards,
Lucas
Inki Dae June 19, 2013, 8:27 a.m. UTC | #6
> -----Original Message-----
> From: dri-devel-bounces+inki.dae=samsung.com@lists.freedesktop.org
> [mailto:dri-devel-bounces+inki.dae=samsung.com@lists.freedesktop.org] On
> Behalf Of Lucas Stach
> Sent: Wednesday, June 19, 2013 4:59 PM
> To: Tomasz Figa
> Cc: kgene.kim@samsung.com; devicetree-discuss@lists.ozlabs.org;
> sw0312.kim@samsung.com; joshi@samsung.com;
dri-devel@lists.freedesktop.org;
> linux-samsung-soc@vger.kernel.org; rob.herring@calxeda.com;
> s.nawrocki@samsung.com; grant.likely@linaro.org; Rahul Sharma
> Subject: Re: [PATCH 1/4] drm/exynos: rename compatible strings for hdmi
> subsystem
> 
> Am Mittwoch, den 19.06.2013, 09:52 +0200 schrieb Tomasz Figa:
> > Hi Rahul,
> >
> > On Tuesday 18 of June 2013 18:19:35 Rahul Sharma wrote:
> > > This patch renames the combatible strings for hdmi, mixer, ddc
> > > and hdmiphy. It follows the convention of using compatible string
> > > which represent the SoC in which the IP was added for the first
> > > time.
> > >
> > > Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
> > > ---
> > >  Documentation/devicetree/bindings/video/exynos_hdmi.txt    |    6
> > > ++++-- Documentation/devicetree/bindings/video/exynos_hdmiddc.txt |
> > > 4 ++-- Documentation/devicetree/bindings/video/exynos_hdmiphy.txt |
> > > 6 ++++-- Documentation/devicetree/bindings/video/exynos_mixer.txt   |
> > >  7 +++++-- drivers/gpu/drm/exynos/exynos_ddc.c
|
> > >    2 +- drivers/gpu/drm/exynos/exynos_hdmi.c                       |
> > > 2 +- drivers/gpu/drm/exynos/exynos_hdmiphy.c                    |    4
> > > +++- drivers/gpu/drm/exynos/exynos_mixer.c                      |   12
> > > ++++++------ 8 files changed, 26 insertions(+), 17 deletions(-)
> > >
> > > diff --git a/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> > > b/Documentation/devicetree/bindings/video/exynos_hdmi.txt index
> > > 589edee..2ac01ca 100644
> > > --- a/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> > > +++ b/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> > > @@ -1,7 +1,9 @@
> > >  Device-Tree bindings for drm hdmi driver
> > >
> > >  Required properties:
> > > -- compatible: value should be "samsung,exynos5-hdmi".
> > > +- compatible: value should be one among the following:
> > > +	1) "samsung,exynos4210-hdmi"
> > > +	2) "samsung,exynos4212-hdmi"
> > >  - reg: physical base address of the hdmi and length of memory mapped
> > >  	region.
> > >  - interrupts: interrupt number to the cpu.
> > > @@ -15,7 +17,7 @@ Required properties:
> > >  Example:
> > >
> > >  	hdmi {
> > > -		compatible = "samsung,exynos5-hdmi";
> > > +		compatible = "samsung,exynos4212-hdmi";
> >
> > Sorry, but it's a NAK from me.
> >
> > DeviceTree bindings are considered an ABI. This is to allow older dtbs
> to
> > work with new kernels.
> >
> > If you just change the binding this way, you break all the existing
> users
> > of this compatible value.
> >
> > In addition you are doing it in a way that breaks bisection:
> >  - patch 1/4 breaks existing in-tree users of current compatible values,
> >  - after patch 2 and 3 it is still broken,
> >  - and eventually all in-tree users are fixed by patch 4 (but you can't
> > fix out-of-tree users).
> >
> > Please do it without changing existing compatible values. Even if they
> are
> > misleading, this is all can be described in the documentation - just
> list
> > SoCs that can be used with each compatible value there.
> >
> 
> Or you could just introduce the new compatible value and make all
> in-tree users use this, but keep the old values around and still accept
> them in the drivers. This way you get the goodness of the cleaner new
> symbols without breaking existing users. Just mark the old values as
> deprecated in the documentation, so no new devicetree usees them.
> 

That's a good idea. We really need to mitigate such misleading somehow or
other.

Thanks,
Inki Dae

> Regards,
> Lucas
> --
> Pengutronix e.K.                           | Lucas Stach                 |
> Industrial Linux Solutions                 | http://www.pengutronix.de/  |
> Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-5076 |
> Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/dri-devel
Rahul Sharma June 19, 2013, 9:32 a.m. UTC | #7
Hi All,

On Wed, Jun 19, 2013 at 1:57 PM, Inki Dae <inki.dae@samsung.com> wrote:
>
>
>> -----Original Message-----
>> From: dri-devel-bounces+inki.dae=samsung.com@lists.freedesktop.org
>> [mailto:dri-devel-bounces+inki.dae=samsung.com@lists.freedesktop.org] On
>> Behalf Of Lucas Stach
>> Sent: Wednesday, June 19, 2013 4:59 PM
>> To: Tomasz Figa
>> Cc: kgene.kim@samsung.com; devicetree-discuss@lists.ozlabs.org;
>> sw0312.kim@samsung.com; joshi@samsung.com;
> dri-devel@lists.freedesktop.org;
>> linux-samsung-soc@vger.kernel.org; rob.herring@calxeda.com;
>> s.nawrocki@samsung.com; grant.likely@linaro.org; Rahul Sharma
>> Subject: Re: [PATCH 1/4] drm/exynos: rename compatible strings for hdmi
>> subsystem
>>
>> Am Mittwoch, den 19.06.2013, 09:52 +0200 schrieb Tomasz Figa:
>> > Hi Rahul,
>> >
>> > On Tuesday 18 of June 2013 18:19:35 Rahul Sharma wrote:
>> > > This patch renames the combatible strings for hdmi, mixer, ddc
>> > > and hdmiphy. It follows the convention of using compatible string
>> > > which represent the SoC in which the IP was added for the first
>> > > time.
>> > >
>> > > Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
>> > > ---
>> > >  Documentation/devicetree/bindings/video/exynos_hdmi.txt    |    6
>> > > ++++-- Documentation/devicetree/bindings/video/exynos_hdmiddc.txt |
>> > > 4 ++-- Documentation/devicetree/bindings/video/exynos_hdmiphy.txt |
>> > > 6 ++++-- Documentation/devicetree/bindings/video/exynos_mixer.txt   |
>> > >  7 +++++-- drivers/gpu/drm/exynos/exynos_ddc.c
> |
>> > >    2 +- drivers/gpu/drm/exynos/exynos_hdmi.c                       |
>> > > 2 +- drivers/gpu/drm/exynos/exynos_hdmiphy.c                    |    4
>> > > +++- drivers/gpu/drm/exynos/exynos_mixer.c                      |   12
>> > > ++++++------ 8 files changed, 26 insertions(+), 17 deletions(-)
>> > >
>> > > diff --git a/Documentation/devicetree/bindings/video/exynos_hdmi.txt
>> > > b/Documentation/devicetree/bindings/video/exynos_hdmi.txt index
>> > > 589edee..2ac01ca 100644
>> > > --- a/Documentation/devicetree/bindings/video/exynos_hdmi.txt
>> > > +++ b/Documentation/devicetree/bindings/video/exynos_hdmi.txt
>> > > @@ -1,7 +1,9 @@
>> > >  Device-Tree bindings for drm hdmi driver
>> > >
>> > >  Required properties:
>> > > -- compatible: value should be "samsung,exynos5-hdmi".
>> > > +- compatible: value should be one among the following:
>> > > + 1) "samsung,exynos4210-hdmi"
>> > > + 2) "samsung,exynos4212-hdmi"
>> > >  - reg: physical base address of the hdmi and length of memory mapped
>> > >   region.
>> > >  - interrupts: interrupt number to the cpu.
>> > > @@ -15,7 +17,7 @@ Required properties:
>> > >  Example:
>> > >
>> > >   hdmi {
>> > > -         compatible = "samsung,exynos5-hdmi";
>> > > +         compatible = "samsung,exynos4212-hdmi";
>> >
>> > Sorry, but it's a NAK from me.
>> >
>> > DeviceTree bindings are considered an ABI. This is to allow older dtbs
>> to
>> > work with new kernels.
>> >
>> > If you just change the binding this way, you break all the existing
>> users
>> > of this compatible value.
>> >
>> > In addition you are doing it in a way that breaks bisection:
>> >  - patch 1/4 breaks existing in-tree users of current compatible values,
>> >  - after patch 2 and 3 it is still broken,
>> >  - and eventually all in-tree users are fixed by patch 4 (but you can't
>> > fix out-of-tree users).
>> >

@Tomasz, I understand your point but how is it possible to change
compatible types in driver as well as in dtbs by not breaking either of them
other then putting changes in a single patch. I ensured that hdmi stuff is
intact with whole series merged in either tree (drm or arch). Please suggest
a better way.

The Only existing user is Exynos5250, which is modified in the same patch
set.

>> > Please do it without changing existing compatible values. Even if they
>> are
>> > misleading, this is all can be described in the documentation - just
>> list
>> > SoCs that can be used with each compatible value there.
>> >
>>
>> Or you could just introduce the new compatible value and make all
>> in-tree users use this, but keep the old values around and still accept
>> them in the drivers. This way you get the goodness of the cleaner new
>> symbols without breaking existing users. Just mark the old values as
>> deprecated in the documentation, so no new devicetree usees them.
>>

I agree, above is a decent approach, but in this case we have only one
user for this compatible type including in flight patches which I have
modified along.

If it seems better to keep old compatible type (deprecated), it is fine
with me.

>
> That's a good idea. We really need to mitigate such misleading somehow or
> other.

Please sugggest me how to proceed.

regards,
Rahul Sharma.

>
> Thanks,
> Inki Dae
>
>> Regards,
>> Lucas
>> --
>> Pengutronix e.K.                           | Lucas Stach                 |
>> Industrial Linux Solutions                 | http://www.pengutronix.de/  |
>> Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-5076 |
>> Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |
>>
>> _______________________________________________
>> dri-devel mailing list
>> dri-devel@lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/dri-devel
>
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/dri-devel
Tomasz Figa June 19, 2013, 9:50 a.m. UTC | #8
Hi Rahul,

On Wednesday 19 of June 2013 15:02:59 Rahul Sharma wrote:
> Hi All,
> 
> On Wed, Jun 19, 2013 at 1:57 PM, Inki Dae <inki.dae@samsung.com> wrote:
> >> -----Original Message-----
> >> From: dri-devel-bounces+inki.dae=samsung.com@lists.freedesktop.org
> >> [mailto:dri-devel-bounces+inki.dae=samsung.com@lists.freedesktop.org] On
> >> Behalf Of Lucas Stach
> >> Sent: Wednesday, June 19, 2013 4:59 PM
> >> To: Tomasz Figa
> >> Cc: kgene.kim@samsung.com; devicetree-discuss@lists.ozlabs.org;
> >> sw0312.kim@samsung.com; joshi@samsung.com;
> > 
> > dri-devel@lists.freedesktop.org;
> > 
> >> linux-samsung-soc@vger.kernel.org; rob.herring@calxeda.com;
> >> s.nawrocki@samsung.com; grant.likely@linaro.org; Rahul Sharma
> >> Subject: Re: [PATCH 1/4] drm/exynos: rename compatible strings for hdmi
> >> subsystem
> >> 
> >> Am Mittwoch, den 19.06.2013, 09:52 +0200 schrieb Tomasz Figa:
> >> > Hi Rahul,
> >> > 
> >> > On Tuesday 18 of June 2013 18:19:35 Rahul Sharma wrote:
> >> > > This patch renames the combatible strings for hdmi, mixer, ddc
> >> > > and hdmiphy. It follows the convention of using compatible string
> >> > > which represent the SoC in which the IP was added for the first
> >> > > time.
> >> > > 
> >> > > Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
> >> > > ---
> >> > > 
> >> > >  Documentation/devicetree/bindings/video/exynos_hdmi.txt    |    6
> >> > > 
> >> > > ++++-- Documentation/devicetree/bindings/video/exynos_hdmiddc.txt |
> >> > > 4 ++-- Documentation/devicetree/bindings/video/exynos_hdmiphy.txt |
> >> > > 6 ++++-- Documentation/devicetree/bindings/video/exynos_mixer.txt   |
> >> > > 
> >> > >  7 +++++-- drivers/gpu/drm/exynos/exynos_ddc.c
> >> > >  
> >> > >    2 +- drivers/gpu/drm/exynos/exynos_hdmi.c                       |
> >> > > 
> >> > > 2 +- drivers/gpu/drm/exynos/exynos_hdmiphy.c                    |   
> >> > > 4
> >> > > +++- drivers/gpu/drm/exynos/exynos_mixer.c                      |  
> >> > > 12
> >> > > ++++++------ 8 files changed, 26 insertions(+), 17 deletions(-)
> >> > > 
> >> > > diff --git a/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> >> > > b/Documentation/devicetree/bindings/video/exynos_hdmi.txt index
> >> > > 589edee..2ac01ca 100644
> >> > > --- a/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> >> > > +++ b/Documentation/devicetree/bindings/video/exynos_hdmi.txt
> >> > > @@ -1,7 +1,9 @@
> >> > > 
> >> > >  Device-Tree bindings for drm hdmi driver
> >> > > 
> >> > >  Required properties:
> >> > > -- compatible: value should be "samsung,exynos5-hdmi".
> >> > > +- compatible: value should be one among the following:
> >> > > + 1) "samsung,exynos4210-hdmi"
> >> > > + 2) "samsung,exynos4212-hdmi"
> >> > > 
> >> > >  - reg: physical base address of the hdmi and length of memory mapped
> >> > >  
> >> > >   region.
> >> > >  
> >> > >  - interrupts: interrupt number to the cpu.
> >> > > 
> >> > > @@ -15,7 +17,7 @@ Required properties:
> >> > >  Example:
> >> > >   hdmi {
> >> > > 
> >> > > -         compatible = "samsung,exynos5-hdmi";
> >> > > +         compatible = "samsung,exynos4212-hdmi";
> >> > 
> >> > Sorry, but it's a NAK from me.
> >> > 
> >> > DeviceTree bindings are considered an ABI. This is to allow older dtbs
> >> 
> >> to
> >> 
> >> > work with new kernels.
> >> > 
> >> > If you just change the binding this way, you break all the existing
> >> 
> >> users
> >> 
> >> > of this compatible value.
> >> > 
> >> > In addition you are doing it in a way that breaks bisection:
> >> >  - patch 1/4 breaks existing in-tree users of current compatible
> >> >  values,
> >> >  - after patch 2 and 3 it is still broken,
> >> >  - and eventually all in-tree users are fixed by patch 4 (but you can't
> >> > 
> >> > fix out-of-tree users).
> 
> @Tomasz, I understand your point but how is it possible to change
> compatible types in driver as well as in dtbs by not breaking either of them
> other then putting changes in a single patch.

It's very easy. (Let's forget about the fact that DT bindings are an ABI 
temporarily) You can simply add new compatible values to the driver in first 
patch, then modify dts files in second one and then remove old compatibles 
values from the driver in third patch. (Now we remember about DT being ABI 
again.)

> I ensured that hdmi stuff is
> intact with whole series merged in either tree (drm or arch). Please
> suggest a better way.
> 
> The Only existing user is Exynos5250, which is modified in the same patch
> set.

This is not true. You have modified only the existing _in_ _tree_ users.

Keep in mind that device tree is not a part of the kernel. It is currently 
located in the same tree, but it is _not_ a part of the kernel.

Now think about existing boards (like exynos5250-snow) that have a dtb built 
from older dts sources stored in their flash memory. You need to maintain 
compatibilty with this old dtb in new kernels as well.

> >> > Please do it without changing existing compatible values. Even if they
> >> 
> >> are
> >> 
> >> > misleading, this is all can be described in the documentation - just
> >> 
> >> list
> >> 
> >> > SoCs that can be used with each compatible value there.
> >> 
> >> Or you could just introduce the new compatible value and make all
> >> in-tree users use this, but keep the old values around and still accept
> >> them in the drivers. This way you get the goodness of the cleaner new
> >> symbols without breaking existing users. Just mark the old values as
> >> deprecated in the documentation, so no new devicetree usees them.
> 
> I agree, above is a decent approach, but in this case we have only one
> user for this compatible type including in flight patches which I have
> modified along.

This only user is already present in 3.10-rc6. This means that we now must 
maintain compatibility with it.

> If it seems better to keep old compatible type (deprecated), it is fine
> with me.

Yes, this is an acceptable solution.

> > That's a good idea. We really need to mitigate such misleading somehow or
> > other.
> 
> Please sugggest me how to proceed.

I think it's enough said now.

Best regards,
Tomasz

> regards,
> Rahul Sharma.
> 
> > Thanks,
> > Inki Dae
> > 
> >> Regards,
> >> Lucas
> >> --
> >> Pengutronix e.K.                           | Lucas Stach                
> >> |
> >> Industrial Linux Solutions                 | http://www.pengutronix.de/ 
> >> |
> >> Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-5076
> >> |
> >> Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555
> >> |
> >> 
> >> _______________________________________________
> >> dri-devel mailing list
> >> dri-devel@lists.freedesktop.org
> >> http://lists.freedesktop.org/mailman/listinfo/dri-devel
> > 
> > _______________________________________________
> > dri-devel mailing list
> > dri-devel@lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/dri-devel
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc"
> in the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
Rahul Sharma June 19, 2013, 10:26 a.m. UTC | #9
On Wed, Jun 19, 2013 at 3:20 PM, Tomasz Figa <t.figa@samsung.com> wrote:
> Hi Rahul,
>
> On Wednesday 19 of June 2013 15:02:59 Rahul Sharma wrote:
>> Hi All,
>>
>> On Wed, Jun 19, 2013 at 1:57 PM, Inki Dae <inki.dae@samsung.com> wrote:
>> >> -----Original Message-----
>> >> From: dri-devel-bounces+inki.dae=samsung.com@lists.freedesktop.org
>> >> [mailto:dri-devel-bounces+inki.dae=samsung.com@lists.freedesktop.org] On
>> >> Behalf Of Lucas Stach
>> >> Sent: Wednesday, June 19, 2013 4:59 PM
>> >> To: Tomasz Figa
>> >> Cc: kgene.kim@samsung.com; devicetree-discuss@lists.ozlabs.org;
>> >> sw0312.kim@samsung.com; joshi@samsung.com;
>> >
>> > dri-devel@lists.freedesktop.org;
>> >
>> >> linux-samsung-soc@vger.kernel.org; rob.herring@calxeda.com;
>> >> s.nawrocki@samsung.com; grant.likely@linaro.org; Rahul Sharma
>> >> Subject: Re: [PATCH 1/4] drm/exynos: rename compatible strings for hdmi
>> >> subsystem
>> >>
>> >> Am Mittwoch, den 19.06.2013, 09:52 +0200 schrieb Tomasz Figa:
>> >> > Hi Rahul,
>> >> >
>> >> > On Tuesday 18 of June 2013 18:19:35 Rahul Sharma wrote:
>> >> > > This patch renames the combatible strings for hdmi, mixer, ddc
>> >> > > and hdmiphy. It follows the convention of using compatible string
>> >> > > which represent the SoC in which the IP was added for the first
>> >> > > time.
>> >> > >
>> >> > > Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
>> >> > > ---
>> >> > >
>> >> > >  Documentation/devicetree/bindings/video/exynos_hdmi.txt    |    6
>> >> > >
>> >> > > ++++-- Documentation/devicetree/bindings/video/exynos_hdmiddc.txt |
>> >> > > 4 ++-- Documentation/devicetree/bindings/video/exynos_hdmiphy.txt |
>> >> > > 6 ++++-- Documentation/devicetree/bindings/video/exynos_mixer.txt   |
>> >> > >
>> >> > >  7 +++++-- drivers/gpu/drm/exynos/exynos_ddc.c
>> >> > >
>> >> > >    2 +- drivers/gpu/drm/exynos/exynos_hdmi.c                       |
>> >> > >
>> >> > > 2 +- drivers/gpu/drm/exynos/exynos_hdmiphy.c                    |
>> >> > > 4
>> >> > > +++- drivers/gpu/drm/exynos/exynos_mixer.c                      |
>> >> > > 12
>> >> > > ++++++------ 8 files changed, 26 insertions(+), 17 deletions(-)
>> >> > >
>> >> > > diff --git a/Documentation/devicetree/bindings/video/exynos_hdmi.txt
>> >> > > b/Documentation/devicetree/bindings/video/exynos_hdmi.txt index
>> >> > > 589edee..2ac01ca 100644
>> >> > > --- a/Documentation/devicetree/bindings/video/exynos_hdmi.txt
>> >> > > +++ b/Documentation/devicetree/bindings/video/exynos_hdmi.txt
>> >> > > @@ -1,7 +1,9 @@
>> >> > >
>> >> > >  Device-Tree bindings for drm hdmi driver
>> >> > >
>> >> > >  Required properties:
>> >> > > -- compatible: value should be "samsung,exynos5-hdmi".
>> >> > > +- compatible: value should be one among the following:
>> >> > > + 1) "samsung,exynos4210-hdmi"
>> >> > > + 2) "samsung,exynos4212-hdmi"
>> >> > >
>> >> > >  - reg: physical base address of the hdmi and length of memory mapped
>> >> > >
>> >> > >   region.
>> >> > >
>> >> > >  - interrupts: interrupt number to the cpu.
>> >> > >
>> >> > > @@ -15,7 +17,7 @@ Required properties:
>> >> > >  Example:
>> >> > >   hdmi {
>> >> > >
>> >> > > -         compatible = "samsung,exynos5-hdmi";
>> >> > > +         compatible = "samsung,exynos4212-hdmi";
>> >> >
>> >> > Sorry, but it's a NAK from me.
>> >> >
>> >> > DeviceTree bindings are considered an ABI. This is to allow older dtbs
>> >>
>> >> to
>> >>
>> >> > work with new kernels.
>> >> >
>> >> > If you just change the binding this way, you break all the existing
>> >>
>> >> users
>> >>
>> >> > of this compatible value.
>> >> >
>> >> > In addition you are doing it in a way that breaks bisection:
>> >> >  - patch 1/4 breaks existing in-tree users of current compatible
>> >> >  values,
>> >> >  - after patch 2 and 3 it is still broken,
>> >> >  - and eventually all in-tree users are fixed by patch 4 (but you can't
>> >> >
>> >> > fix out-of-tree users).
>>
>> @Tomasz, I understand your point but how is it possible to change
>> compatible types in driver as well as in dtbs by not breaking either of them
>> other then putting changes in a single patch.
>
> It's very easy. (Let's forget about the fact that DT bindings are an ABI
> temporarily) You can simply add new compatible values to the driver in first
> patch, then modify dts files in second one and then remove old compatibles
> values from the driver in third patch. (Now we remember about DT being ABI
> again.)
>
>> I ensured that hdmi stuff is
>> intact with whole series merged in either tree (drm or arch). Please
>> suggest a better way.
>>
>> The Only existing user is Exynos5250, which is modified in the same patch
>> set.
>
> This is not true. You have modified only the existing _in_ _tree_ users.
>
> Keep in mind that device tree is not a part of the kernel. It is currently
> located in the same tree, but it is _not_ a part of the kernel.
>
> Now think about existing boards (like exynos5250-snow) that have a dtb built
> from older dts sources stored in their flash memory. You need to maintain
> compatibilty with this old dtb in new kernels as well.
>
>> >> > Please do it without changing existing compatible values. Even if they
>> >>
>> >> are
>> >>
>> >> > misleading, this is all can be described in the documentation - just
>> >>
>> >> list
>> >>
>> >> > SoCs that can be used with each compatible value there.
>> >>
>> >> Or you could just introduce the new compatible value and make all
>> >> in-tree users use this, but keep the old values around and still accept
>> >> them in the drivers. This way you get the goodness of the cleaner new
>> >> symbols without breaking existing users. Just mark the old values as
>> >> deprecated in the documentation, so no new devicetree usees them.
>>
>> I agree, above is a decent approach, but in this case we have only one
>> user for this compatible type including in flight patches which I have
>> modified along.
>
> This only user is already present in 3.10-rc6. This means that we now must
> maintain compatibility with it.
>
>> If it seems better to keep old compatible type (deprecated), it is fine
>> with me.
>
> Yes, this is an acceptable solution.
>
>> > That's a good idea. We really need to mitigate such misleading somehow or
>> > other.
>>
>> Please sugggest me how to proceed.
>
> I think it's enough said now.
>
> Best regards,
> Tomasz

Fine. It seems if I change this patch to add new compatible strings,
above concerns
will be addressed. I will post the v2.

regards,
Rahul Sharma.

>
>> regards,
>> Rahul Sharma.
>>
>> > Thanks,
>> > Inki Dae
>> >
>> >> Regards,
>> >> Lucas
>> >> --
>> >> Pengutronix e.K.                           | Lucas Stach
>> >> |
>> >> Industrial Linux Solutions                 | http://www.pengutronix.de/
>> >> |
>> >> Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-5076
>> >> |
>> >> Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555
>> >> |
>> >>
>> >> _______________________________________________
>> >> dri-devel mailing list
>> >> dri-devel@lists.freedesktop.org
>> >> http://lists.freedesktop.org/mailman/listinfo/dri-devel
>> >
>> > _______________________________________________
>> > dri-devel mailing list
>> > dri-devel@lists.freedesktop.org
>> > http://lists.freedesktop.org/mailman/listinfo/dri-devel
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc"
>> in the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> --
> To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/Documentation/devicetree/bindings/video/exynos_hdmi.txt b/Documentation/devicetree/bindings/video/exynos_hdmi.txt
index 589edee..2ac01ca 100644
--- a/Documentation/devicetree/bindings/video/exynos_hdmi.txt
+++ b/Documentation/devicetree/bindings/video/exynos_hdmi.txt
@@ -1,7 +1,9 @@ 
 Device-Tree bindings for drm hdmi driver
 
 Required properties:
-- compatible: value should be "samsung,exynos5-hdmi".
+- compatible: value should be one among the following:
+	1) "samsung,exynos4210-hdmi"
+	2) "samsung,exynos4212-hdmi"
 - reg: physical base address of the hdmi and length of memory mapped
 	region.
 - interrupts: interrupt number to the cpu.
@@ -15,7 +17,7 @@  Required properties:
 Example:
 
 	hdmi {
-		compatible = "samsung,exynos5-hdmi";
+		compatible = "samsung,exynos4212-hdmi";
 		reg = <0x14530000 0x100000>;
 		interrupts = <0 95 0>;
 		hpd-gpio = <&gpx3 7 0xf 1 3>;
diff --git a/Documentation/devicetree/bindings/video/exynos_hdmiddc.txt b/Documentation/devicetree/bindings/video/exynos_hdmiddc.txt
index fa166d9..c1bd2ea 100644
--- a/Documentation/devicetree/bindings/video/exynos_hdmiddc.txt
+++ b/Documentation/devicetree/bindings/video/exynos_hdmiddc.txt
@@ -1,12 +1,12 @@ 
 Device-Tree bindings for hdmiddc driver
 
 Required properties:
-- compatible: value should be "samsung,exynos5-hdmiddc".
+- compatible: value should be "samsung,exynos4210-hdmiddc".
 - reg: I2C address of the hdmiddc device.
 
 Example:
 
 	hdmiddc {
-		compatible = "samsung,exynos5-hdmiddc";
+		compatible = "samsung,exynos4210-hdmiddc";
 		reg = <0x50>;
 	};
diff --git a/Documentation/devicetree/bindings/video/exynos_hdmiphy.txt b/Documentation/devicetree/bindings/video/exynos_hdmiphy.txt
index 858f4f9..e59d793 100644
--- a/Documentation/devicetree/bindings/video/exynos_hdmiphy.txt
+++ b/Documentation/devicetree/bindings/video/exynos_hdmiphy.txt
@@ -1,12 +1,14 @@ 
 Device-Tree bindings for hdmiphy driver
 
 Required properties:
-- compatible: value should be "samsung,exynos5-hdmiphy".
+- compatible: value should be
+	1) "samsung,exynos4210-hdmiphy".
+	2) "samsung,exynos4212-hdmiphy".
 - reg: I2C address of the hdmiphy device.
 
 Example:
 
 	hdmiphy {
-		compatible = "samsung,exynos5-hdmiphy";
+		compatible = "samsung,exynos4210-hdmiphy";
 		reg = <0x38>;
 	};
diff --git a/Documentation/devicetree/bindings/video/exynos_mixer.txt b/Documentation/devicetree/bindings/video/exynos_mixer.txt
index 9b2ea03..a8b063f 100644
--- a/Documentation/devicetree/bindings/video/exynos_mixer.txt
+++ b/Documentation/devicetree/bindings/video/exynos_mixer.txt
@@ -1,7 +1,10 @@ 
 Device-Tree bindings for mixer driver
 
 Required properties:
-- compatible: value should be "samsung,exynos5-mixer".
+- compatible: value should be:
+	1) "samsung,exynos4210-mixer"
+	2) "samsung,exynos5250-mixer"
+
 - reg: physical base address of the mixer and length of memory mapped
 	region.
 - interrupts: interrupt number to the cpu.
@@ -9,7 +12,7 @@  Required properties:
 Example:
 
 	mixer {
-		compatible = "samsung,exynos5-mixer";
+		compatible = "samsung,exynos5250-mixer";
 		reg = <0x14450000 0x10000>;
 		interrupts = <0 94 0>;
 	};
diff --git a/drivers/gpu/drm/exynos/exynos_ddc.c b/drivers/gpu/drm/exynos/exynos_ddc.c
index 4e9b5ba..1a0cca1 100644
--- a/drivers/gpu/drm/exynos/exynos_ddc.c
+++ b/drivers/gpu/drm/exynos/exynos_ddc.c
@@ -51,7 +51,7 @@  static struct i2c_device_id ddc_idtable[] = {
 #ifdef CONFIG_OF
 static struct of_device_id hdmiddc_match_types[] = {
 	{
-		.compatible = "samsung,exynos5-hdmiddc",
+		.compatible = "samsung,exynos4210-hdmiddc",
 	}, {
 		/* end node */
 	}
diff --git a/drivers/gpu/drm/exynos/exynos_hdmi.c b/drivers/gpu/drm/exynos/exynos_hdmi.c
index 743059f..8752171 100644
--- a/drivers/gpu/drm/exynos/exynos_hdmi.c
+++ b/drivers/gpu/drm/exynos/exynos_hdmi.c
@@ -1913,7 +1913,7 @@  static struct platform_device_id hdmi_driver_types[] = {
 #ifdef CONFIG_OF
 static struct of_device_id hdmi_match_types[] = {
 	{
-		.compatible = "samsung,exynos5-hdmi",
+		.compatible = "samsung,exynos4212-hdmi",
 		.data	= (void	*)HDMI_TYPE14,
 	}, {
 		/* end node */
diff --git a/drivers/gpu/drm/exynos/exynos_hdmiphy.c b/drivers/gpu/drm/exynos/exynos_hdmiphy.c
index ea49d13..bf1718a 100644
--- a/drivers/gpu/drm/exynos/exynos_hdmiphy.c
+++ b/drivers/gpu/drm/exynos/exynos_hdmiphy.c
@@ -49,7 +49,9 @@  static const struct i2c_device_id hdmiphy_id[] = {
 #ifdef CONFIG_OF
 static struct of_device_id hdmiphy_match_types[] = {
 	{
-		.compatible = "samsung,exynos5-hdmiphy",
+		.compatible = "samsung,exynos4210-hdmiphy",
+	}, {
+		.compatible = "samsung,exynos4212-hdmiphy",
 	}, {
 		/* end node */
 	}
diff --git a/drivers/gpu/drm/exynos/exynos_mixer.c b/drivers/gpu/drm/exynos/exynos_mixer.c
index f36f878..2fe6d33 100644
--- a/drivers/gpu/drm/exynos/exynos_mixer.c
+++ b/drivers/gpu/drm/exynos/exynos_mixer.c
@@ -1115,12 +1115,12 @@  static int vp_resources_init(struct exynos_drm_hdmi_context *ctx,
 	return 0;
 }
 
-static struct mixer_drv_data exynos5_mxr_drv_data = {
+static struct mixer_drv_data exynos5250_mxr_drv_data = {
 	.version = MXR_VER_16_0_33_0,
 	.is_vp_enabled = 0,
 };
 
-static struct mixer_drv_data exynos4_mxr_drv_data = {
+static struct mixer_drv_data exynos4210_mxr_drv_data = {
 	.version = MXR_VER_0_0_0_16,
 	.is_vp_enabled = 1,
 };
@@ -1128,10 +1128,10 @@  static struct mixer_drv_data exynos4_mxr_drv_data = {
 static struct platform_device_id mixer_driver_types[] = {
 	{
 		.name		= "s5p-mixer",
-		.driver_data	= (unsigned long)&exynos4_mxr_drv_data,
+		.driver_data	= (unsigned long)&exynos4210_mxr_drv_data,
 	}, {
 		.name		= "exynos5-mixer",
-		.driver_data	= (unsigned long)&exynos5_mxr_drv_data,
+		.driver_data	= (unsigned long)&exynos5250_mxr_drv_data,
 	}, {
 		/* end node */
 	}
@@ -1139,8 +1139,8 @@  static struct platform_device_id mixer_driver_types[] = {
 
 static struct of_device_id mixer_match_types[] = {
 	{
-		.compatible = "samsung,exynos5-mixer",
-		.data	= &exynos5_mxr_drv_data,
+		.compatible = "samsung,exynos5250-mixer",
+		.data	= &exynos5250_mxr_drv_data,
 	}, {
 		/* end node */
 	}