[PATCH v2 17/25] drm/msm/mdp5: Update compatible strings for MDSS/MDP5
Rob Clark
robdclark at gmail.com
Mon Jul 11 11:33:42 UTC 2016
On Mon, Jul 11, 2016 at 4:39 AM, Matthias Brugger <mbrugger at 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 at 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
More information about the dri-devel
mailing list