Re: [RFC/PATCH] drivers/of/platform: Add powerpc 4xx embedded busses to default list

2017-09-05 Thread Benjamin Herrenschmidt
On Tue, 2017-09-05 at 09:25 -0500, Rob Herring wrote:
> > So in the meantime, I'm thinking adding some kind of runtime way
> > of disabling this default populate. Would you be ok with that ?
> > 
> > Something like:
> > 
> >  bool arch_wants_of_platform_defaults(void)
> > 
> > With a weak implementation returning true.
> 
> That seems fine. The intention was that you can call
> of_platform_default_populate multiple times with arch specific match
> lists and the default. There could be ordering issues both with
> initcall levels and device creation ordering.

Right but I want to skip the default completely on things like old macs
because they manually create their own cherry-picks and I worry about
conflicts here. Also Apple has history of random crap in the root of
the DT.

Cheers,
Ben.



Re: [RFC/PATCH] drivers/of/platform: Add powerpc 4xx embedded busses to default list

2017-09-05 Thread Benjamin Herrenschmidt
On Tue, 2017-09-05 at 09:25 -0500, Rob Herring wrote:
> > So in the meantime, I'm thinking adding some kind of runtime way
> > of disabling this default populate. Would you be ok with that ?
> > 
> > Something like:
> > 
> >  bool arch_wants_of_platform_defaults(void)
> > 
> > With a weak implementation returning true.
> 
> That seems fine. The intention was that you can call
> of_platform_default_populate multiple times with arch specific match
> lists and the default. There could be ordering issues both with
> initcall levels and device creation ordering.

Right but I want to skip the default completely on things like old macs
because they manually create their own cherry-picks and I worry about
conflicts here. Also Apple has history of random crap in the root of
the DT.

Cheers,
Ben.



Re: [RFC/PATCH] drivers/of/platform: Add powerpc 4xx embedded busses to default list

2017-09-05 Thread Rob Herring
On Fri, Sep 1, 2017 at 6:47 PM, Benjamin Herrenschmidt
 wrote:
> On Fri, 2017-09-01 at 10:24 -0500, Rob Herring wrote:
>> On Thu, Aug 31, 2017 at 10:51 PM, Benjamin Herrenschmidt
>>  wrote:
>> > This allow to (slowly) migrate those embedded platforms
>> > to of_platform_default_populate()
>> >
>> > Signed-off-by: Benjamin Herrenschmidt 
>> > ---
>> >
>> > I'm here to collect acks (or comments :-) I'd like this to go via
>> > the powerpc tree along with the patches converting some of the
>> > platforms. I'll be adding more bus types if/when I start tackling
>> > other powerpc embedded families but for now I'm dealing with 4xx.
>>
>> Glad to see it.
>
> So my end game is to remove the #ifndef CONFIG_PPC around
> of_platform_default_populate_init(void). However, for that
> to work, I need to add a way to disable that on some platforms.
>
> However, it might take time, especially when it comes to dealing
> with the old Macs or some more obscure embedded platforms.
>
> So in the meantime, I'm thinking adding some kind of runtime way
> of disabling this default populate. Would you be ok with that ?
>
> Something like:
>
> bool arch_wants_of_platform_defaults(void)
>
> With a weak implementation returning true.

That seems fine. The intention was that you can call
of_platform_default_populate multiple times with arch specific match
lists and the default. There could be ordering issues both with
initcall levels and device creation ordering.

Rob


Re: [RFC/PATCH] drivers/of/platform: Add powerpc 4xx embedded busses to default list

2017-09-05 Thread Rob Herring
On Fri, Sep 1, 2017 at 6:47 PM, Benjamin Herrenschmidt
 wrote:
> On Fri, 2017-09-01 at 10:24 -0500, Rob Herring wrote:
>> On Thu, Aug 31, 2017 at 10:51 PM, Benjamin Herrenschmidt
>>  wrote:
>> > This allow to (slowly) migrate those embedded platforms
>> > to of_platform_default_populate()
>> >
>> > Signed-off-by: Benjamin Herrenschmidt 
>> > ---
>> >
>> > I'm here to collect acks (or comments :-) I'd like this to go via
>> > the powerpc tree along with the patches converting some of the
>> > platforms. I'll be adding more bus types if/when I start tackling
>> > other powerpc embedded families but for now I'm dealing with 4xx.
>>
>> Glad to see it.
>
> So my end game is to remove the #ifndef CONFIG_PPC around
> of_platform_default_populate_init(void). However, for that
> to work, I need to add a way to disable that on some platforms.
>
> However, it might take time, especially when it comes to dealing
> with the old Macs or some more obscure embedded platforms.
>
> So in the meantime, I'm thinking adding some kind of runtime way
> of disabling this default populate. Would you be ok with that ?
>
> Something like:
>
> bool arch_wants_of_platform_defaults(void)
>
> With a weak implementation returning true.

That seems fine. The intention was that you can call
of_platform_default_populate multiple times with arch specific match
lists and the default. There could be ordering issues both with
initcall levels and device creation ordering.

Rob


Re: [RFC/PATCH] drivers/of/platform: Add powerpc 4xx embedded busses to default list

2017-09-01 Thread Benjamin Herrenschmidt
On Fri, 2017-09-01 at 10:24 -0500, Rob Herring wrote:
> On Thu, Aug 31, 2017 at 10:51 PM, Benjamin Herrenschmidt
>  wrote:
> > This allow to (slowly) migrate those embedded platforms
> > to of_platform_default_populate()
> > 
> > Signed-off-by: Benjamin Herrenschmidt 
> > ---
> > 
> > I'm here to collect acks (or comments :-) I'd like this to go via
> > the powerpc tree along with the patches converting some of the
> > platforms. I'll be adding more bus types if/when I start tackling
> > other powerpc embedded families but for now I'm dealing with 4xx.
> 
> Glad to see it.

So my end game is to remove the #ifndef CONFIG_PPC around
of_platform_default_populate_init(void). However, for that
to work, I need to add a way to disable that on some platforms.

However, it might take time, especially when it comes to dealing
with the old Macs or some more obscure embedded platforms.

So in the meantime, I'm thinking adding some kind of runtime way
of disabling this default populate. Would you be ok with that ?

Something like:

bool arch_wants_of_platform_defaults(void)

With a weak implementation returning true.

Cheers,
Ben.



Re: [RFC/PATCH] drivers/of/platform: Add powerpc 4xx embedded busses to default list

2017-09-01 Thread Benjamin Herrenschmidt
On Fri, 2017-09-01 at 10:24 -0500, Rob Herring wrote:
> On Thu, Aug 31, 2017 at 10:51 PM, Benjamin Herrenschmidt
>  wrote:
> > This allow to (slowly) migrate those embedded platforms
> > to of_platform_default_populate()
> > 
> > Signed-off-by: Benjamin Herrenschmidt 
> > ---
> > 
> > I'm here to collect acks (or comments :-) I'd like this to go via
> > the powerpc tree along with the patches converting some of the
> > platforms. I'll be adding more bus types if/when I start tackling
> > other powerpc embedded families but for now I'm dealing with 4xx.
> 
> Glad to see it.

So my end game is to remove the #ifndef CONFIG_PPC around
of_platform_default_populate_init(void). However, for that
to work, I need to add a way to disable that on some platforms.

However, it might take time, especially when it comes to dealing
with the old Macs or some more obscure embedded platforms.

So in the meantime, I'm thinking adding some kind of runtime way
of disabling this default populate. Would you be ok with that ?

Something like:

bool arch_wants_of_platform_defaults(void)

With a weak implementation returning true.

Cheers,
Ben.



Re: [RFC/PATCH] drivers/of/platform: Add powerpc 4xx embedded busses to default list

2017-09-01 Thread Rob Herring
On Thu, Aug 31, 2017 at 10:51 PM, Benjamin Herrenschmidt
 wrote:
> This allow to (slowly) migrate those embedded platforms
> to of_platform_default_populate()
>
> Signed-off-by: Benjamin Herrenschmidt 
> ---
>
> I'm here to collect acks (or comments :-) I'd like this to go via
> the powerpc tree along with the patches converting some of the
> platforms. I'll be adding more bus types if/when I start tackling
> other powerpc embedded families but for now I'm dealing with 4xx.

Glad to see it.

Acked-by: Rob Herring 

Rob


Re: [RFC/PATCH] drivers/of/platform: Add powerpc 4xx embedded busses to default list

2017-09-01 Thread Rob Herring
On Thu, Aug 31, 2017 at 10:51 PM, Benjamin Herrenschmidt
 wrote:
> This allow to (slowly) migrate those embedded platforms
> to of_platform_default_populate()
>
> Signed-off-by: Benjamin Herrenschmidt 
> ---
>
> I'm here to collect acks (or comments :-) I'd like this to go via
> the powerpc tree along with the patches converting some of the
> platforms. I'll be adding more bus types if/when I start tackling
> other powerpc embedded families but for now I'm dealing with 4xx.

Glad to see it.

Acked-by: Rob Herring 

Rob


Re: [RFC/PATCH] drivers/of/platform: Add powerpc 4xx embedded busses to default list

2017-08-31 Thread Greg Kroah-Hartman
On Fri, Sep 01, 2017 at 01:51:01PM +1000, Benjamin Herrenschmidt wrote:
> This allow to (slowly) migrate those embedded platforms
> to of_platform_default_populate()
> 
> Signed-off-by: Benjamin Herrenschmidt 
> ---
> 
> I'm here to collect acks (or comments :-) I'd like this to go via
> the powerpc tree along with the patches converting some of the
> platforms. I'll be adding more bus types if/when I start tackling
> other powerpc embedded families but for now I'm dealing with 4xx.
> 
>  drivers/of/platform.c | 6 ++
>  1 file changed, 6 insertions(+)
> 

Acked-by: Greg Kroah-Hartman 


Re: [RFC/PATCH] drivers/of/platform: Add powerpc 4xx embedded busses to default list

2017-08-31 Thread Greg Kroah-Hartman
On Fri, Sep 01, 2017 at 01:51:01PM +1000, Benjamin Herrenschmidt wrote:
> This allow to (slowly) migrate those embedded platforms
> to of_platform_default_populate()
> 
> Signed-off-by: Benjamin Herrenschmidt 
> ---
> 
> I'm here to collect acks (or comments :-) I'd like this to go via
> the powerpc tree along with the patches converting some of the
> platforms. I'll be adding more bus types if/when I start tackling
> other powerpc embedded families but for now I'm dealing with 4xx.
> 
>  drivers/of/platform.c | 6 ++
>  1 file changed, 6 insertions(+)
> 

Acked-by: Greg Kroah-Hartman 


[RFC/PATCH] drivers/of/platform: Add powerpc 4xx embedded busses to default list

2017-08-31 Thread Benjamin Herrenschmidt
This allow to (slowly) migrate those embedded platforms
to of_platform_default_populate()

Signed-off-by: Benjamin Herrenschmidt 
---

I'm here to collect acks (or comments :-) I'd like this to go via
the powerpc tree along with the patches converting some of the
platforms. I'll be adding more bus types if/when I start tackling
other powerpc embedded families but for now I'm dealing with 4xx.

 drivers/of/platform.c | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/drivers/of/platform.c b/drivers/of/platform.c
index b19524623498..f3f2aab4eda1 100644
--- a/drivers/of/platform.c
+++ b/drivers/of/platform.c
@@ -34,6 +34,12 @@ const struct of_device_id of_default_bus_match_table[] = {
 #ifdef CONFIG_ARM_AMBA
{ .compatible = "arm,amba-bus", },
 #endif /* CONFIG_ARM_AMBA */
+#ifdef CONFIG_PPC
+   { .compatible = "ibm,plb3", },
+   { .compatible = "ibm,plb4", },
+   { .compatible = "ibm,opb", },
+   { .compatible = "ibm,ebc", },
+#endif
{} /* Empty terminated list */
 };
 



[RFC/PATCH] drivers/of/platform: Add powerpc 4xx embedded busses to default list

2017-08-31 Thread Benjamin Herrenschmidt
This allow to (slowly) migrate those embedded platforms
to of_platform_default_populate()

Signed-off-by: Benjamin Herrenschmidt 
---

I'm here to collect acks (or comments :-) I'd like this to go via
the powerpc tree along with the patches converting some of the
platforms. I'll be adding more bus types if/when I start tackling
other powerpc embedded families but for now I'm dealing with 4xx.

 drivers/of/platform.c | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/drivers/of/platform.c b/drivers/of/platform.c
index b19524623498..f3f2aab4eda1 100644
--- a/drivers/of/platform.c
+++ b/drivers/of/platform.c
@@ -34,6 +34,12 @@ const struct of_device_id of_default_bus_match_table[] = {
 #ifdef CONFIG_ARM_AMBA
{ .compatible = "arm,amba-bus", },
 #endif /* CONFIG_ARM_AMBA */
+#ifdef CONFIG_PPC
+   { .compatible = "ibm,plb3", },
+   { .compatible = "ibm,plb4", },
+   { .compatible = "ibm,opb", },
+   { .compatible = "ibm,ebc", },
+#endif
{} /* Empty terminated list */
 };