diff mbox

[v2,17/25] drm/msm/mdp5: Update compatible strings for MDSS/MDP5

Message ID 1466691210-22779-18-git-send-email-architt@codeaurora.org (mailing list archive)
State New, archived
Headers show

Commit Message

Archit Taneja June 23, 2016, 2:13 p.m. UTC
Introduce new compatible strings for the top level MDSS wrapper device,
and the MDP5 device.

Previously, the "qcom,mdp5" and "qcom,mdss_mdp" compatible strings
were used to match the top level platform_device (which was also tied
to the top level drm_device struct). Now, these strings are used
to match the MDP5 platform device.

Use "qcom,mdss" as the compatible string for top level MDSS device.
This is now used to match the top level platform_device (which is
tied to the drm_device struct).

Signed-off-by: Archit Taneja <architt@codeaurora.org>
---
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c | 10 +++++++++-
 drivers/gpu/drm/msm/msm_drv.c           |  6 ++----
 2 files changed, 11 insertions(+), 5 deletions(-)

Comments

Matthias Brugger July 11, 2016, 8:39 a.m. UTC | #1
On 23/06/16 16:13, Archit Taneja wrote:
> Introduce new compatible strings for the top level MDSS wrapper device,
> and the MDP5 device.
>
> Previously, the "qcom,mdp5" and "qcom,mdss_mdp" compatible strings
> were used to match the top level platform_device (which was also tied
> to the top level drm_device struct). Now, these strings are used
> to match the MDP5 platform device.
>
> Use "qcom,mdss" as the compatible string for top level MDSS device.
> This is now used to match the top level platform_device (which is
> tied to the drm_device struct).
>
> Signed-off-by: Archit Taneja <architt@codeaurora.org>
> ---
>   drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c | 10 +++++++++-
>   drivers/gpu/drm/msm/msm_drv.c           |  6 ++----
>   2 files changed, 11 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c
> index 174d7e7..a2bd6a4 100644
> --- a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c
> +++ b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c
> @@ -809,12 +809,20 @@ static int mdp5_dev_remove(struct platform_device *pdev)
>   	return 0;
>   }
>
> +static const struct of_device_id dt_match[] = {
> +	{ .compatible = "qcom,mdp5", },
> +	/* to support downstream DT files */
> +	{ .compatible = "qcom,mdss_mdp", },
> +	{}
> +};
> +MODULE_DEVICE_TABLE(of, dt_match);
> +
>   static struct platform_driver mdp5_driver = {
>   	.probe = mdp5_dev_probe,
>   	.remove = mdp5_dev_remove,
>   	.driver = {
>   		.name = "msm_mdp",
> -		/* Add a DT match field once we move to new hierarchy */
> +		.of_match_table = dt_match,
>   	},
>   };
>
> diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c
> index be8f73a..f133dd5 100644
> --- a/drivers/gpu/drm/msm/msm_drv.c
> +++ b/drivers/gpu/drm/msm/msm_drv.c
> @@ -992,10 +992,8 @@ static int msm_pdev_remove(struct platform_device *pdev)
>   }
>
>   static const struct of_device_id dt_match[] = {
> -	{ .compatible = "qcom,mdp4", .data = (void *) 4 },	/* mdp4 */
> -	{ .compatible = "qcom,mdp5", .data = (void *) 5 },	/* mdp5 */
> -	/* to support downstream DT files */
> -	{ .compatible = "qcom,mdss_mdp", .data = (void *) 5 },  /* mdp5 */
> +	{ .compatible = "qcom,mdp4", .data = (void *)4 },	/* MDP4 */
> +	{ .compatible = "qcom,mdss", .data = (void *)5 },	/* MDP5 MDSS */

This seems to break linux-next:
[ 3945s]   CC [M]  drivers/gpu/drm/nouveau/nvkm/core/ioctl.o
[ 3947s]   LD [M]  drivers/gpu/drm/msm/msm.o
[ 3947s] drivers/gpu/drm/msm/msm_drv.o:(.rodata+0x300): multiple 
definition of `__mod_of__dt_match_device_table'
[ 3947s] drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.o:(.rodata+0x1b0): first 
defined here
[ 3947s] make[6]: *** [../scripts/Makefile.build:427: 
drivers/gpu/drm/msm/msm.o] Error 1
[ 3947s] make[5]: *** [../scripts/Makefile.build:440: 
drivers/gpu/drm/msm] Error 2
[ 3947s] make[5]: *** Waiting for unfinished jobs....

Reverting commit b71a717c955a ("drm/msm/mdp5: Update compatible strings 
for MDSS/MDP5") fixes the compilation error.

Regards,
Matthias
Rob Clark July 11, 2016, 11:33 a.m. UTC | #2
On Mon, Jul 11, 2016 at 4:39 AM, Matthias Brugger <mbrugger@suse.com> wrote:
> On 23/06/16 16:13, Archit Taneja wrote:
>>
>> Introduce new compatible strings for the top level MDSS wrapper device,
>> and the MDP5 device.
>>
>> Previously, the "qcom,mdp5" and "qcom,mdss_mdp" compatible strings
>> were used to match the top level platform_device (which was also tied
>> to the top level drm_device struct). Now, these strings are used
>> to match the MDP5 platform device.
>>
>> Use "qcom,mdss" as the compatible string for top level MDSS device.
>> This is now used to match the top level platform_device (which is
>> tied to the drm_device struct).
>>
>> Signed-off-by: Archit Taneja <architt@codeaurora.org>
>> ---
>>   drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c | 10 +++++++++-
>>   drivers/gpu/drm/msm/msm_drv.c           |  6 ++----
>>   2 files changed, 11 insertions(+), 5 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c
>> b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c
>> index 174d7e7..a2bd6a4 100644
>> --- a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c
>> +++ b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c
>> @@ -809,12 +809,20 @@ static int mdp5_dev_remove(struct platform_device
>> *pdev)
>>         return 0;
>>   }
>>
>> +static const struct of_device_id dt_match[] = {
>> +       { .compatible = "qcom,mdp5", },
>> +       /* to support downstream DT files */
>> +       { .compatible = "qcom,mdss_mdp", },
>> +       {}
>> +};
>> +MODULE_DEVICE_TABLE(of, dt_match);
>> +
>>   static struct platform_driver mdp5_driver = {
>>         .probe = mdp5_dev_probe,
>>         .remove = mdp5_dev_remove,
>>         .driver = {
>>                 .name = "msm_mdp",
>> -               /* Add a DT match field once we move to new hierarchy */
>> +               .of_match_table = dt_match,
>>         },
>>   };
>>
>> diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c
>> index be8f73a..f133dd5 100644
>> --- a/drivers/gpu/drm/msm/msm_drv.c
>> +++ b/drivers/gpu/drm/msm/msm_drv.c
>> @@ -992,10 +992,8 @@ static int msm_pdev_remove(struct platform_device
>> *pdev)
>>   }
>>
>>   static const struct of_device_id dt_match[] = {
>> -       { .compatible = "qcom,mdp4", .data = (void *) 4 },      /* mdp4 */
>> -       { .compatible = "qcom,mdp5", .data = (void *) 5 },      /* mdp5 */
>> -       /* to support downstream DT files */
>> -       { .compatible = "qcom,mdss_mdp", .data = (void *) 5 },  /* mdp5 */
>> +       { .compatible = "qcom,mdp4", .data = (void *)4 },       /* MDP4 */
>> +       { .compatible = "qcom,mdss", .data = (void *)5 },       /* MDP5
>> MDSS */
>
>
> This seems to break linux-next:
> [ 3945s]   CC [M]  drivers/gpu/drm/nouveau/nvkm/core/ioctl.o
> [ 3947s]   LD [M]  drivers/gpu/drm/msm/msm.o
> [ 3947s] drivers/gpu/drm/msm/msm_drv.o:(.rodata+0x300): multiple definition
> of `__mod_of__dt_match_device_table'
> [ 3947s] drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.o:(.rodata+0x1b0): first
> defined here
> [ 3947s] make[6]: *** [../scripts/Makefile.build:427:
> drivers/gpu/drm/msm/msm.o] Error 1
> [ 3947s] make[5]: *** [../scripts/Makefile.build:440: drivers/gpu/drm/msm]
> Error 2
> [ 3947s] make[5]: *** Waiting for unfinished jobs....
>
> Reverting commit b71a717c955a ("drm/msm/mdp5: Update compatible strings for
> MDSS/MDP5") fixes the compilation error.


fyi, I updated msm-next over the weekend, which should fix this (and
an unrelated bisectability issue).  I guess it should show up in
linux-next soonish..

BR,
-R
diff mbox

Patch

diff --git a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c
index 174d7e7..a2bd6a4 100644
--- a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c
+++ b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c
@@ -809,12 +809,20 @@  static int mdp5_dev_remove(struct platform_device *pdev)
 	return 0;
 }
 
+static const struct of_device_id dt_match[] = {
+	{ .compatible = "qcom,mdp5", },
+	/* to support downstream DT files */
+	{ .compatible = "qcom,mdss_mdp", },
+	{}
+};
+MODULE_DEVICE_TABLE(of, dt_match);
+
 static struct platform_driver mdp5_driver = {
 	.probe = mdp5_dev_probe,
 	.remove = mdp5_dev_remove,
 	.driver = {
 		.name = "msm_mdp",
-		/* Add a DT match field once we move to new hierarchy */
+		.of_match_table = dt_match,
 	},
 };
 
diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c
index be8f73a..f133dd5 100644
--- a/drivers/gpu/drm/msm/msm_drv.c
+++ b/drivers/gpu/drm/msm/msm_drv.c
@@ -992,10 +992,8 @@  static int msm_pdev_remove(struct platform_device *pdev)
 }
 
 static const struct of_device_id dt_match[] = {
-	{ .compatible = "qcom,mdp4", .data = (void *) 4 },	/* mdp4 */
-	{ .compatible = "qcom,mdp5", .data = (void *) 5 },	/* mdp5 */
-	/* to support downstream DT files */
-	{ .compatible = "qcom,mdss_mdp", .data = (void *) 5 },  /* mdp5 */
+	{ .compatible = "qcom,mdp4", .data = (void *)4 },	/* MDP4 */
+	{ .compatible = "qcom,mdss", .data = (void *)5 },	/* MDP5 MDSS */
 	{}
 };
 MODULE_DEVICE_TABLE(of, dt_match);