From: Zhou Zhu <zzhu3@marvell.com>
To: Jingoo Han <jg1.han-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>,
'Sascha Hauer' <s.hauer-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
Cc: "linux-fbdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
<linux-fbdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
'Tomi Valkeinen' <tomi.valkeinen-l0cyMroinI0@public.gmane.org>,
'Jean-Christophe Plagniol-Villard'
<plagnioj-sclMFOaUSTBWk0Htik3J/w@public.gmane.org>,
'Haojian Zhuang'
<haojian.zhuang-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
Chao Xie <cxie4-eYqpPyKDWXRBDgjK7y7TUQ@public.gmane.org>,
Guoqing Li <ligq-eYqpPyKDWXRBDgjK7y7TUQ@public.gmane.org>,
devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH] video: mmp: add device tree support
Date: Thu, 09 Jan 2014 12:09:09 +0000 [thread overview]
Message-ID: <52CE9165.7050002@marvell.com> (raw)
In-Reply-To: <000301cf0d0e$91f29090$b5d7b1b0$%han-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
Sascha/Jingoo,
Thank you for your review!
On 01/09/2014 03:43 PM, Jingoo Han wrote:
> On Thursday, January 09, 2014 4:32 PM, Sascha Hauer wrote:
>> On Thu, Jan 09, 2014 at 01:13:14PM +0800, Zhou Zhu wrote:
>>> add device tree support for mmp fb/controller
>>> the description at Documentation/devicetree/bindings/fb/mmp-disp.txt
>>>
>>> Signed-off-by: Zhou Zhu <zzhu3@marvell.com>
>>> ---
>>> Documentation/devicetree/bindings/fb/mmp-disp.txt | 71 ++++++++++++
>>> drivers/video/mmp/fb/mmpfb.c | 71 ++++++++----
>>> drivers/video/mmp/hw/mmp_ctrl.c | 120 ++++++++++++++++-----
>>> 3 files changed, 217 insertions(+), 45 deletions(-)
>>> create mode 100644 Documentation/devicetree/bindings/fb/mmp-disp.txt
>>>
[...]
>> +fb: fb {
>> + compatible = "marvell,mmp-fb";
>
> This compatible should have the specific SoC name in it, not just
> 'mmp'. Otherwise you can't properly distinguish between this version and
> future versions of the mmp core.
>
We are using a same display IP for all mmp serial SoCs, and there would
be inside register to get version. So I am planning put same compatible
here for all SoCs using this IP.
Would it be ok if I update compatible to "marvell,mmpdcx-fb"? "mmpdcx"
is the IP name.
>
>> + marvell,fb-name = "mmp_fb";
>> + marvell,path-name = "mmp_pnpath";
>
> You're not going to use this string to reference to another node, do
> you? We have phandles for this.
>
I will update it in v2.
>> + marvell,overlay-id = <0>;
>> + marvell,dmafetch-id = <1>;
>> + marvell,default-pixfmt = <0x108>;
>> +};
>> +
>> +disp: disp@d420b000 {
>> + compatible = "marvell,mmp-disp";
>> + reg = <0xd420b000 0x1fc>;
>> + interrupts = <0 41 0x4>;
>> + marvell,disp-name = "mmp_disp";
>> + marvell,path-num = <1>;
>> + marvell,clk-name = "LCDCIHCLK";
>
> Don't pass clk names like this. We have a documented clock binding, use
> it.
>
The patches to add dt support in common clk in our platforms are not
upstreamed yet. As there's only one clock in this device, could I remove
clock name related codes and direct use: devm_clk_get(dev, NULL)?
>
>>
>>> +#ifdef CONFIG_OF
>>> + struct device_node *np;
>>> +#else
>>> struct mmp_buffer_driver_mach_info *mi;
>>> +#endif
>>> struct fb_info *info = 0;
>>> struct mmpfb_info *fbi = 0;
>>> - int ret, modes_num;
>>> -
>>> - mi = pdev->dev.platform_data;
>>> - if (mi = NULL) {
>>> - dev_err(&pdev->dev, "no platform data defined\n");
>>> - return -EINVAL;
>>> - }
>>> + int ret = -EINVAL, modes_num;
>>> + int overlay_id, dmafetch_id;
>>> + const char *path_name;
>>>
>>> /* initialize fb */
>>> info = framebuffer_alloc(sizeof(struct mmpfb_info), &pdev->dev);
>>> if (info = NULL)
>>> return -ENOMEM;
>>> fbi = info->par;
>>> - if (!fbi) {
>>> - ret = -EINVAL;
>>> + if (!fbi)
>>> + goto failed;
>>> +
>>> +#ifdef CONFIG_OF
>>
>> Just because your kernel build does have CONFIG_OF enabled doesn't mean
>> it's actually started with a devicetree. You need to make a runtime
>> decision, not compile time.
>
> Yes, right.
> As Sascha Hauer said, you need to make a runtime decision,
> instead of compile time. Please keep the same binary for
> both cases (CONFIG_OF is 'enabled' and 'disabled').
>
> For example,
>
> if (pdev->dev.of_node) {
> // DT code
> } else {
> // Non-DT code
> }
>
Thank you for your suggestion. I will update the code to dynamic in v2.
--
Thanks, -Zhou
WARNING: multiple messages have this Message-ID (diff)
From: Zhou Zhu <zzhu3-eYqpPyKDWXRBDgjK7y7TUQ@public.gmane.org>
To: Jingoo Han <jg1.han-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>,
'Sascha Hauer' <s.hauer-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
Cc: "linux-fbdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
<linux-fbdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
'Tomi Valkeinen' <tomi.valkeinen-l0cyMroinI0@public.gmane.org>,
'Jean-Christophe Plagniol-Villard'
<plagnioj-sclMFOaUSTBWk0Htik3J/w@public.gmane.org>,
'Haojian Zhuang'
<haojian.zhuang-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
Chao Xie <cxie4-eYqpPyKDWXRBDgjK7y7TUQ@public.gmane.org>,
Guoqing Li <ligq-eYqpPyKDWXRBDgjK7y7TUQ@public.gmane.org>,
devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH] video: mmp: add device tree support
Date: Thu, 9 Jan 2014 20:09:09 +0800 [thread overview]
Message-ID: <52CE9165.7050002@marvell.com> (raw)
In-Reply-To: <000301cf0d0e$91f29090$b5d7b1b0$%han-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
Sascha/Jingoo,
Thank you for your review!
On 01/09/2014 03:43 PM, Jingoo Han wrote:
> On Thursday, January 09, 2014 4:32 PM, Sascha Hauer wrote:
>> On Thu, Jan 09, 2014 at 01:13:14PM +0800, Zhou Zhu wrote:
>>> add device tree support for mmp fb/controller
>>> the description at Documentation/devicetree/bindings/fb/mmp-disp.txt
>>>
>>> Signed-off-by: Zhou Zhu <zzhu3-eYqpPyKDWXRBDgjK7y7TUQ@public.gmane.org>
>>> ---
>>> Documentation/devicetree/bindings/fb/mmp-disp.txt | 71 ++++++++++++
>>> drivers/video/mmp/fb/mmpfb.c | 71 ++++++++----
>>> drivers/video/mmp/hw/mmp_ctrl.c | 120 ++++++++++++++++-----
>>> 3 files changed, 217 insertions(+), 45 deletions(-)
>>> create mode 100644 Documentation/devicetree/bindings/fb/mmp-disp.txt
>>>
[...]
>> +fb: fb {
>> + compatible = "marvell,mmp-fb";
>
> This compatible should have the specific SoC name in it, not just
> 'mmp'. Otherwise you can't properly distinguish between this version and
> future versions of the mmp core.
>
We are using a same display IP for all mmp serial SoCs, and there would
be inside register to get version. So I am planning put same compatible
here for all SoCs using this IP.
Would it be ok if I update compatible to "marvell,mmpdcx-fb"? "mmpdcx"
is the IP name.
>
>> + marvell,fb-name = "mmp_fb";
>> + marvell,path-name = "mmp_pnpath";
>
> You're not going to use this string to reference to another node, do
> you? We have phandles for this.
>
I will update it in v2.
>> + marvell,overlay-id = <0>;
>> + marvell,dmafetch-id = <1>;
>> + marvell,default-pixfmt = <0x108>;
>> +};
>> +
>> +disp: disp@d420b000 {
>> + compatible = "marvell,mmp-disp";
>> + reg = <0xd420b000 0x1fc>;
>> + interrupts = <0 41 0x4>;
>> + marvell,disp-name = "mmp_disp";
>> + marvell,path-num = <1>;
>> + marvell,clk-name = "LCDCIHCLK";
>
> Don't pass clk names like this. We have a documented clock binding, use
> it.
>
The patches to add dt support in common clk in our platforms are not
upstreamed yet. As there's only one clock in this device, could I remove
clock name related codes and direct use: devm_clk_get(dev, NULL)?
>
>>
>>> +#ifdef CONFIG_OF
>>> + struct device_node *np;
>>> +#else
>>> struct mmp_buffer_driver_mach_info *mi;
>>> +#endif
>>> struct fb_info *info = 0;
>>> struct mmpfb_info *fbi = 0;
>>> - int ret, modes_num;
>>> -
>>> - mi = pdev->dev.platform_data;
>>> - if (mi == NULL) {
>>> - dev_err(&pdev->dev, "no platform data defined\n");
>>> - return -EINVAL;
>>> - }
>>> + int ret = -EINVAL, modes_num;
>>> + int overlay_id, dmafetch_id;
>>> + const char *path_name;
>>>
>>> /* initialize fb */
>>> info = framebuffer_alloc(sizeof(struct mmpfb_info), &pdev->dev);
>>> if (info == NULL)
>>> return -ENOMEM;
>>> fbi = info->par;
>>> - if (!fbi) {
>>> - ret = -EINVAL;
>>> + if (!fbi)
>>> + goto failed;
>>> +
>>> +#ifdef CONFIG_OF
>>
>> Just because your kernel build does have CONFIG_OF enabled doesn't mean
>> it's actually started with a devicetree. You need to make a runtime
>> decision, not compile time.
>
> Yes, right.
> As Sascha Hauer said, you need to make a runtime decision,
> instead of compile time. Please keep the same binary for
> both cases (CONFIG_OF is 'enabled' and 'disabled').
>
> For example,
>
> if (pdev->dev.of_node) {
> // DT code
> } else {
> // Non-DT code
> }
>
Thank you for your suggestion. I will update the code to dynamic in v2.
--
Thanks, -Zhou
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2014-01-09 12:09 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-01-09 5:13 [PATCH] video: mmp: add device tree support Zhou Zhu
[not found] ` <1389244394-10779-1-git-send-email-zzhu3-eYqpPyKDWXRBDgjK7y7TUQ@public.gmane.org>
2014-01-09 6:05 ` Zhou Zhu
2014-01-09 6:05 ` Zhou Zhu
2014-01-09 7:31 ` Sascha Hauer
2014-01-09 7:43 ` Jingoo Han
[not found] ` <000301cf0d0e$91f29090$b5d7b1b0$%han-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
2014-01-09 12:09 ` Zhou Zhu [this message]
2014-01-09 12:09 ` Zhou Zhu
[not found] ` <52CE9165.7050002-eYqpPyKDWXRBDgjK7y7TUQ@public.gmane.org>
2014-01-10 9:07 ` 'Sascha Hauer'
2014-01-10 9:07 ` 'Sascha Hauer'
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=52CE9165.7050002@marvell.com \
--to=zzhu3@marvell.com \
--cc=cxie4-eYqpPyKDWXRBDgjK7y7TUQ@public.gmane.org \
--cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=haojian.zhuang-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=jg1.han-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org \
--cc=ligq-eYqpPyKDWXRBDgjK7y7TUQ@public.gmane.org \
--cc=linux-fbdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=plagnioj-sclMFOaUSTBWk0Htik3J/w@public.gmane.org \
--cc=s.hauer-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org \
--cc=tomi.valkeinen-l0cyMroinI0@public.gmane.org \
/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: link
Be 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.