All of lore.kernel.org
 help / color / mirror / Atom feed
From: Hans de Goede <hdegoede@redhat.com>
To: linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v4 2/4] simplefb: Add support for enumerating simplefb dt nodes in /chosen
Date: Fri, 14 Nov 2014 11:00:45 +0000	[thread overview]
Message-ID: <5465E0DD.6070005@redhat.com> (raw)
In-Reply-To: <CACxGe6u3_GJA6pbDGX6puDhyJ2E9T+WujmzASw2VE+5-x9q9sA@mail.gmail.com>

Hi,

On 11/14/2014 10:28 AM, Grant Likely wrote:
> On Thu, Nov 13, 2014 at 7:23 PM, Hans de Goede <hdegoede@redhat.com> wrote:
>> Update simplefb to support the new preferred location for simplefb dt nodes
>> under /chosen.
>>
>> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
>> --
>> Changes in v2:
>> -Make name array larger in case we ever encounter more then 10000 framebuffers
>> Changes in v3:
>> -Switch to for_each_child_of_node to loop over the nodes under chosen
>> Changes in v4:
>> -Wrap the chosen enumeration code in #ifdef CONFIG_OF, as simplefb is used on
>>  non devicetree platforms too
>> -simplefb can only be built-in, so drop the module_exit function calling
>>  platform_driver_unregister
>> ---
>>  drivers/video/fbdev/simplefb.c | 23 ++++++++++++++++++++++-
>>  1 file changed, 22 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/video/fbdev/simplefb.c b/drivers/video/fbdev/simplefb.c
>> index 868099a..e381a53 100644
>> --- a/drivers/video/fbdev/simplefb.c
>> +++ b/drivers/video/fbdev/simplefb.c
>> @@ -27,6 +27,7 @@
>>  #include <linux/platform_data/simplefb.h>
>>  #include <linux/platform_device.h>
>>  #include <linux/clk-provider.h>
>> +#include <linux/of_platform.h>
>>
>>  static struct fb_fix_screeninfo simplefb_fix = {
>>         .id             = "simple",
>> @@ -390,7 +391,27 @@ static struct platform_driver simplefb_driver = {
>>         .probe = simplefb_probe,
>>         .remove = simplefb_remove,
>>  };
>> -module_platform_driver(simplefb_driver);
>> +
>> +static int __init simplefb_init(void)
>> +{
>> +       int ret;
>> +       struct device_node __maybe_unused *np;
>> +
>> +       ret = platform_driver_register(&simplefb_driver);
>> +       if (ret)
>> +               return ret;
>> +
>> +#ifdef CONFIG_OF
>> +       for_each_child_of_node(of_chosen, np) {
>> +               if (of_device_is_compatible(np, "simple-framebuffer"))
>> +                       of_platform_device_create(np, NULL, NULL);
>> +       }
>> +#endif
> 
> Nit: Kind of ugly. This should work instead:
> 
>         if (IS_ENABLED(CONFIG_OF_PLATFORM) && of_chosen) {
>                 for_each_child_of_node(of_chosen, np)
>                         if (of_device_is_compatible(np, "simple-framebuffer"))
>                                 of_platform_device_create(np, NULL, NULL);
>         }
> 
> And move the forward declaration of of_chosen in include/linux/of.h up
> 5 lines so that it is always declared. gcc will optimize it out, but
> it will still get properly syntax checked on every build.

Ok, fixed for v5.

Regards,

Hans

WARNING: multiple messages have this Message-ID (diff)
From: hdegoede@redhat.com (Hans de Goede)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v4 2/4] simplefb: Add support for enumerating simplefb dt nodes in /chosen
Date: Fri, 14 Nov 2014 12:00:45 +0100	[thread overview]
Message-ID: <5465E0DD.6070005@redhat.com> (raw)
In-Reply-To: <CACxGe6u3_GJA6pbDGX6puDhyJ2E9T+WujmzASw2VE+5-x9q9sA@mail.gmail.com>

Hi,

On 11/14/2014 10:28 AM, Grant Likely wrote:
> On Thu, Nov 13, 2014 at 7:23 PM, Hans de Goede <hdegoede@redhat.com> wrote:
>> Update simplefb to support the new preferred location for simplefb dt nodes
>> under /chosen.
>>
>> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
>> --
>> Changes in v2:
>> -Make name array larger in case we ever encounter more then 10000 framebuffers
>> Changes in v3:
>> -Switch to for_each_child_of_node to loop over the nodes under chosen
>> Changes in v4:
>> -Wrap the chosen enumeration code in #ifdef CONFIG_OF, as simplefb is used on
>>  non devicetree platforms too
>> -simplefb can only be built-in, so drop the module_exit function calling
>>  platform_driver_unregister
>> ---
>>  drivers/video/fbdev/simplefb.c | 23 ++++++++++++++++++++++-
>>  1 file changed, 22 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/video/fbdev/simplefb.c b/drivers/video/fbdev/simplefb.c
>> index 868099a..e381a53 100644
>> --- a/drivers/video/fbdev/simplefb.c
>> +++ b/drivers/video/fbdev/simplefb.c
>> @@ -27,6 +27,7 @@
>>  #include <linux/platform_data/simplefb.h>
>>  #include <linux/platform_device.h>
>>  #include <linux/clk-provider.h>
>> +#include <linux/of_platform.h>
>>
>>  static struct fb_fix_screeninfo simplefb_fix = {
>>         .id             = "simple",
>> @@ -390,7 +391,27 @@ static struct platform_driver simplefb_driver = {
>>         .probe = simplefb_probe,
>>         .remove = simplefb_remove,
>>  };
>> -module_platform_driver(simplefb_driver);
>> +
>> +static int __init simplefb_init(void)
>> +{
>> +       int ret;
>> +       struct device_node __maybe_unused *np;
>> +
>> +       ret = platform_driver_register(&simplefb_driver);
>> +       if (ret)
>> +               return ret;
>> +
>> +#ifdef CONFIG_OF
>> +       for_each_child_of_node(of_chosen, np) {
>> +               if (of_device_is_compatible(np, "simple-framebuffer"))
>> +                       of_platform_device_create(np, NULL, NULL);
>> +       }
>> +#endif
> 
> Nit: Kind of ugly. This should work instead:
> 
>         if (IS_ENABLED(CONFIG_OF_PLATFORM) && of_chosen) {
>                 for_each_child_of_node(of_chosen, np)
>                         if (of_device_is_compatible(np, "simple-framebuffer"))
>                                 of_platform_device_create(np, NULL, NULL);
>         }
> 
> And move the forward declaration of of_chosen in include/linux/of.h up
> 5 lines so that it is always declared. gcc will optimize it out, but
> it will still get properly syntax checked on every build.

Ok, fixed for v5.

Regards,

Hans

WARNING: multiple messages have this Message-ID (diff)
From: Hans de Goede <hdegoede-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: Grant Likely <grant.likely-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
Cc: Tomi Valkeinen <tomi.valkeinen-l0cyMroinI0@public.gmane.org>,
	Stephen Warren <swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>,
	Jean-Christophe Plagniol-Villard
	<plagnioj-sclMFOaUSTBWk0Htik3J/w@public.gmane.org>,
	Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	Luc Verhaegen <libv-AgBVmzD5pcezQB+pC5nmwQ@public.gmane.org>,
	Maxime Ripard
	<maxime.ripard-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>,
	David Herrmann
	<dh.herrmann-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	Geert Uytterhoeven
	<geert-Td1EMuHUCqxL1ZNQvxDV9g@public.gmane.org>,
	"linux-fbdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<linux-fbdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	"linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org"
	<linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>,
	devicetree <devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	linux-sunxi <linux-sunxi-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
Subject: Re: [PATCH v4 2/4] simplefb: Add support for enumerating simplefb dt nodes in /chosen
Date: Fri, 14 Nov 2014 12:00:45 +0100	[thread overview]
Message-ID: <5465E0DD.6070005@redhat.com> (raw)
In-Reply-To: <CACxGe6u3_GJA6pbDGX6puDhyJ2E9T+WujmzASw2VE+5-x9q9sA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>

Hi,

On 11/14/2014 10:28 AM, Grant Likely wrote:
> On Thu, Nov 13, 2014 at 7:23 PM, Hans de Goede <hdegoede-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> wrote:
>> Update simplefb to support the new preferred location for simplefb dt nodes
>> under /chosen.
>>
>> Signed-off-by: Hans de Goede <hdegoede-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
>> --
>> Changes in v2:
>> -Make name array larger in case we ever encounter more then 10000 framebuffers
>> Changes in v3:
>> -Switch to for_each_child_of_node to loop over the nodes under chosen
>> Changes in v4:
>> -Wrap the chosen enumeration code in #ifdef CONFIG_OF, as simplefb is used on
>>  non devicetree platforms too
>> -simplefb can only be built-in, so drop the module_exit function calling
>>  platform_driver_unregister
>> ---
>>  drivers/video/fbdev/simplefb.c | 23 ++++++++++++++++++++++-
>>  1 file changed, 22 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/video/fbdev/simplefb.c b/drivers/video/fbdev/simplefb.c
>> index 868099a..e381a53 100644
>> --- a/drivers/video/fbdev/simplefb.c
>> +++ b/drivers/video/fbdev/simplefb.c
>> @@ -27,6 +27,7 @@
>>  #include <linux/platform_data/simplefb.h>
>>  #include <linux/platform_device.h>
>>  #include <linux/clk-provider.h>
>> +#include <linux/of_platform.h>
>>
>>  static struct fb_fix_screeninfo simplefb_fix = {
>>         .id             = "simple",
>> @@ -390,7 +391,27 @@ static struct platform_driver simplefb_driver = {
>>         .probe = simplefb_probe,
>>         .remove = simplefb_remove,
>>  };
>> -module_platform_driver(simplefb_driver);
>> +
>> +static int __init simplefb_init(void)
>> +{
>> +       int ret;
>> +       struct device_node __maybe_unused *np;
>> +
>> +       ret = platform_driver_register(&simplefb_driver);
>> +       if (ret)
>> +               return ret;
>> +
>> +#ifdef CONFIG_OF
>> +       for_each_child_of_node(of_chosen, np) {
>> +               if (of_device_is_compatible(np, "simple-framebuffer"))
>> +                       of_platform_device_create(np, NULL, NULL);
>> +       }
>> +#endif
> 
> Nit: Kind of ugly. This should work instead:
> 
>         if (IS_ENABLED(CONFIG_OF_PLATFORM) && of_chosen) {
>                 for_each_child_of_node(of_chosen, np)
>                         if (of_device_is_compatible(np, "simple-framebuffer"))
>                                 of_platform_device_create(np, NULL, NULL);
>         }
> 
> And move the forward declaration of of_chosen in include/linux/of.h up
> 5 lines so that it is always declared. gcc will optimize it out, but
> it will still get properly syntax checked on every build.

Ok, fixed for v5.

Regards,

Hans

  reply	other threads:[~2014-11-14 11:00 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-13 19:23 [PATCH v4 1/4] dt-bindings: simplefb: Specify node location and handoff related properties Hans de Goede
2014-11-13 19:23 ` Hans de Goede
2014-11-13 19:23 ` Hans de Goede
2014-11-13 19:23 ` [PATCH v4 2/4] simplefb: Add support for enumerating simplefb dt nodes in /chosen Hans de Goede
2014-11-13 19:23   ` Hans de Goede
2014-11-13 19:23   ` Hans de Goede
2014-11-14  9:28   ` Grant Likely
2014-11-14  9:28     ` Grant Likely
2014-11-14  9:28     ` Grant Likely
2014-11-14 11:00     ` Hans de Goede [this message]
2014-11-14 11:00       ` Hans de Goede
2014-11-14 11:00       ` Hans de Goede
2014-11-13 19:23 ` [PATCH v4 3/4] fbcon: Change fbcon_init from module_init to fs_initcall Hans de Goede
2014-11-13 19:23   ` Hans de Goede
2014-11-13 19:23   ` Hans de Goede
2014-11-13 19:23 ` [PATCH v4 4/4] simplefb: Change simplefb_init " Hans de Goede
2014-11-13 19:23   ` Hans de Goede
2014-11-13 19:23   ` Hans de Goede
2014-11-14  9:19 ` [PATCH v4 1/4] dt-bindings: simplefb: Specify node location and handoff related properties Grant Likely
2014-11-14  9:19   ` Grant Likely
2014-11-14  9:19   ` Grant Likely
2014-11-14 10:15   ` Hans de Goede
2014-11-14 10:15     ` Hans de Goede
2014-11-14 10:15     ` Hans de Goede

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=5465E0DD.6070005@redhat.com \
    --to=hdegoede@redhat.com \
    --cc=linux-arm-kernel@lists.infradead.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.