On Wed, 2016-08-10 at 19:32 -0500, Jack Miller wrote: > This condenses the opal node searching into a single function that > finds > all compatible nodes, instead of just searching the ibm,opal > children, > for ipmi, flash, and prd similar to how opal-i2c nodes are found. > Hi Michael, It seems this patch hasn't made it in. Without it linux cannot find the flash on p9 as skiboot has moved the node to a more appropriate place. Thanks, Cyril Cc: stable@xxxxxxxxxxxxxxx # v4.6+ > Signed-off-by: Jack Miller <jack@xxxxxxxxxxx> > --- > arch/powerpc/platforms/powernv/opal.c | 24 +++++++----------------- > 1 file changed, 7 insertions(+), 17 deletions(-) > > diff --git a/arch/powerpc/platforms/powernv/opal.c > b/arch/powerpc/platforms/powernv/opal.c > index 8b4fc68..9db12ce 100644 > --- a/arch/powerpc/platforms/powernv/opal.c > +++ b/arch/powerpc/platforms/powernv/opal.c > @@ -631,21 +631,11 @@ static void __init opal_dump_region_init(void) > "rc = %d\n", rc); > } > > -static void opal_pdev_init(struct device_node *opal_node, > - const char *compatible) > +static void opal_pdev_init(const char *compatible) > { > struct device_node *np; > > - for_each_child_of_node(opal_node, np) > - if (of_device_is_compatible(np, compatible)) > - of_platform_device_create(np, NULL, NULL); > -} > - > -static void opal_i2c_create_devs(void) > -{ > - struct device_node *np; > - > - for_each_compatible_node(np, NULL, "ibm,opal-i2c") > + for_each_compatible_node(np, NULL, compatible) > of_platform_device_create(np, NULL, NULL); > } > > @@ -717,7 +707,7 @@ static int __init opal_init(void) > opal_hmi_handler_init(); > > /* Create i2c platform devices */ > - opal_i2c_create_devs(); > + opal_pdev_init("ibm,opal-i2c"); > > /* Setup a heatbeat thread if requested by OPAL */ > opal_init_heartbeat(); > @@ -752,12 +742,12 @@ static int __init opal_init(void) > } > > /* Initialize platform devices: IPMI backend, PRD & flash > interface */ > - opal_pdev_init(opal_node, "ibm,opal-ipmi"); > - opal_pdev_init(opal_node, "ibm,opal-flash"); > - opal_pdev_init(opal_node, "ibm,opal-prd"); > + opal_pdev_init("ibm,opal-ipmi"); > + opal_pdev_init("ibm,opal-flash"); > + opal_pdev_init("ibm,opal-prd"); > > /* Initialise platform device: oppanel interface */ > - opal_pdev_init(opal_node, "ibm,opal-oppanel"); > + opal_pdev_init("ibm,opal-oppanel"); > > /* Initialise OPAL kmsg dumper for flushing console on panic > */ > opal_kmsg_init(); -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html