From: Stephen Warren <swarren@wwwdotorg.org> To: Sean Paul <seanpaul@chromium.org> Cc: linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, devicetree-discuss@lists.ozlabs.org, dri-devel@lists.freedesktop.org, t.stanislaws@samsung.com, kgene.kim@samsung.com, linux-kernel@vger.kernel.org, tomasz.figa@gmail.com, inki.dae@samsung.com, sylvester.nawrocki@gmail.com, olofj@chromium.org, rahul.sharma@samsung.com Subject: Re: [PATCH v3 1/3] drm/exynos: Get HDMI version from device tree Date: Tue, 05 Feb 2013 17:22:23 -0700 [thread overview] Message-ID: <5111A23F.50300@wwwdotorg.org> (raw) In-Reply-To: <1360107777-17490-2-git-send-email-seanpaul@chromium.org> n 02/05/2013 04:42 PM, Sean Paul wrote: > Use the compatible string in the device tree to determine which > registers/functions to use in the HDMI driver. Also changes the > references from v13 to 4210 and v14 to 4212 to reflect the IP > block version instead of the HDMI version. > diff --git a/Documentation/devicetree/bindings/drm/exynos/hdmi.txt b/Documentation/devicetree/bindings/drm/exynos/hdmi.txt Binding looks sane to me. > diff --git a/drivers/gpu/drm/exynos/exynos_hdmi.c b/drivers/gpu/drm/exynos/exynos_hdmi.c > #ifdef CONFIG_OF > static struct of_device_id hdmi_match_types[] = { > { > - .compatible = "samsung,exynos5-hdmi", > - .data = (void *)HDMI_TYPE14, > + .compatible = "samsung,exynos4-hdmi", > }, { > /* end node */ > } Why not fill in all the "base" compatible values there (I think you need this anyway so that DTs don't all have to be compatible with samsung,exynos4-hdmi), with .data containing the HDMI_VER_EXYNOS* values, then ... > @@ -2218,17 +2217,18 @@ static int hdmi_probe(struct platform_device *pdev) > + > + if (of_device_is_compatible(dev->of_node, "samsung,exynos4210-hdmi")) > + hdata->version |= HDMI_VER_EXYNOS4210; > + if (of_device_is_compatible(dev->of_node, "samsung,exynos4212-hdmi")) > + hdata->version |= HDMI_VER_EXYNOS4212; > + if (of_device_is_compatible(dev->of_node, "samsung,exynos5250-hdmi")) > + hdata->version |= HDMI_VER_EXYNOS5250; Instead of that, do roughly: match = of_match_device(hdmi_match_types, &pdev->dev); if (match) hdata->version |= (int)match->data; That way, it's all table-based. Any future additions to hdmi_match_types[] won't require another if statement to be added to probe().
WARNING: multiple messages have this Message-ID (diff)
From: swarren@wwwdotorg.org (Stephen Warren) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH v3 1/3] drm/exynos: Get HDMI version from device tree Date: Tue, 05 Feb 2013 17:22:23 -0700 [thread overview] Message-ID: <5111A23F.50300@wwwdotorg.org> (raw) In-Reply-To: <1360107777-17490-2-git-send-email-seanpaul@chromium.org> n 02/05/2013 04:42 PM, Sean Paul wrote: > Use the compatible string in the device tree to determine which > registers/functions to use in the HDMI driver. Also changes the > references from v13 to 4210 and v14 to 4212 to reflect the IP > block version instead of the HDMI version. > diff --git a/Documentation/devicetree/bindings/drm/exynos/hdmi.txt b/Documentation/devicetree/bindings/drm/exynos/hdmi.txt Binding looks sane to me. > diff --git a/drivers/gpu/drm/exynos/exynos_hdmi.c b/drivers/gpu/drm/exynos/exynos_hdmi.c > #ifdef CONFIG_OF > static struct of_device_id hdmi_match_types[] = { > { > - .compatible = "samsung,exynos5-hdmi", > - .data = (void *)HDMI_TYPE14, > + .compatible = "samsung,exynos4-hdmi", > }, { > /* end node */ > } Why not fill in all the "base" compatible values there (I think you need this anyway so that DTs don't all have to be compatible with samsung,exynos4-hdmi), with .data containing the HDMI_VER_EXYNOS* values, then ... > @@ -2218,17 +2217,18 @@ static int hdmi_probe(struct platform_device *pdev) > + > + if (of_device_is_compatible(dev->of_node, "samsung,exynos4210-hdmi")) > + hdata->version |= HDMI_VER_EXYNOS4210; > + if (of_device_is_compatible(dev->of_node, "samsung,exynos4212-hdmi")) > + hdata->version |= HDMI_VER_EXYNOS4212; > + if (of_device_is_compatible(dev->of_node, "samsung,exynos5250-hdmi")) > + hdata->version |= HDMI_VER_EXYNOS5250; Instead of that, do roughly: match = of_match_device(hdmi_match_types, &pdev->dev); if (match) hdata->version |= (int)match->data; That way, it's all table-based. Any future additions to hdmi_match_types[] won't require another if statement to be added to probe().
next prev parent reply other threads:[~2013-02-06 0:22 UTC|newest] Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top 2013-02-05 23:42 [PATCH v3 0/2] Get the HDMI IP block version from device tree Sean Paul 2013-02-05 23:42 ` Sean Paul 2013-02-05 23:42 ` [PATCH v3 1/3] drm/exynos: Get HDMI " Sean Paul 2013-02-05 23:42 ` Sean Paul 2013-02-06 0:22 ` Stephen Warren [this message] 2013-02-06 0:22 ` Stephen Warren 2013-02-06 0:37 ` Sean Paul 2013-02-06 0:37 ` Sean Paul 2013-02-06 0:37 ` Sean Paul 2013-02-06 0:42 ` Stephen Warren 2013-02-06 0:42 ` Stephen Warren 2013-02-06 0:47 ` Kyungmin Park 2013-02-06 0:47 ` Kyungmin Park 2013-02-06 0:56 ` Sean Paul 2013-02-06 0:56 ` Sean Paul 2013-02-06 1:48 ` Joonyoung Shim 2013-02-06 1:48 ` Joonyoung Shim 2013-02-06 2:49 ` Stephen Warren 2013-02-06 2:49 ` Stephen Warren 2013-02-06 2:56 ` 김승우 2013-02-06 2:56 ` 김승우 2013-02-06 19:01 ` Olof Johansson 2013-02-06 19:01 ` Olof Johansson 2013-02-05 23:42 ` [PATCH v3 2/3] ARM: Change exynos5-hdmi references to exynos4-hdmi Sean Paul 2013-02-05 23:42 ` Sean Paul
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=5111A23F.50300@wwwdotorg.org \ --to=swarren@wwwdotorg.org \ --cc=devicetree-discuss@lists.ozlabs.org \ --cc=dri-devel@lists.freedesktop.org \ --cc=inki.dae@samsung.com \ --cc=kgene.kim@samsung.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-samsung-soc@vger.kernel.org \ --cc=olofj@chromium.org \ --cc=rahul.sharma@samsung.com \ --cc=seanpaul@chromium.org \ --cc=sylvester.nawrocki@gmail.com \ --cc=t.stanislaws@samsung.com \ --cc=tomasz.figa@gmail.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.