Message ID | 055787bb6085c32907ee1772522a6bfa49d5d2ef.1709667858.git.daniel@makrotopia.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | nvmem: add block device NVMEM provider | expand |
> Set fwnode in case it isn't set yet and of_node is present. > > Signed-off-by: Daniel Golle <daniel@makrotopia.org> > --- > drivers/mmc/core/bus.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/mmc/core/bus.c b/drivers/mmc/core/bus.c index > 0ddaee0eae54f..e1c5fc1b3ce4b 100644 > --- a/drivers/mmc/core/bus.c > +++ b/drivers/mmc/core/bus.c > @@ -364,6 +364,8 @@ int mmc_add_card(struct mmc_card *card) > > mmc_add_card_debugfs(card); > card->dev.of_node = mmc_of_find_child_device(card->host, 0); > + if (card->dev.of_node && !card->dev.fwnode) > + card->dev.fwnode = &card->dev.of_node->fwnode; Should this be restricted to eMMC only, or is it fine to be called for SD as well? Thanks, Avri > > device_enable_async_suspend(&card->dev); > > -- > 2.44.0
On Fri, Mar 08, 2024 at 08:04:54AM +0000, Avri Altman wrote: > > > Set fwnode in case it isn't set yet and of_node is present. > > > > Signed-off-by: Daniel Golle <daniel@makrotopia.org> > > --- > > drivers/mmc/core/bus.c | 2 ++ > > 1 file changed, 2 insertions(+) > > > > diff --git a/drivers/mmc/core/bus.c b/drivers/mmc/core/bus.c index > > 0ddaee0eae54f..e1c5fc1b3ce4b 100644 > > --- a/drivers/mmc/core/bus.c > > +++ b/drivers/mmc/core/bus.c > > @@ -364,6 +364,8 @@ int mmc_add_card(struct mmc_card *card) > > > > mmc_add_card_debugfs(card); > > card->dev.of_node = mmc_of_find_child_device(card->host, 0); > > + if (card->dev.of_node && !card->dev.fwnode) > > + card->dev.fwnode = &card->dev.of_node->fwnode; > Should this be restricted to eMMC only, or is it fine to be called for SD as well? It's always odd to have of_node set and fwnode unset. And also SD cards can be referenced in device tree, resulting in of_node being set but fwnode being unpopulated, which is no more or less weird than for an eMMC. So imho it should always be called and shouldn't hurt.
diff --git a/drivers/mmc/core/bus.c b/drivers/mmc/core/bus.c index 0ddaee0eae54f..e1c5fc1b3ce4b 100644 --- a/drivers/mmc/core/bus.c +++ b/drivers/mmc/core/bus.c @@ -364,6 +364,8 @@ int mmc_add_card(struct mmc_card *card) mmc_add_card_debugfs(card); card->dev.of_node = mmc_of_find_child_device(card->host, 0); + if (card->dev.of_node && !card->dev.fwnode) + card->dev.fwnode = &card->dev.of_node->fwnode; device_enable_async_suspend(&card->dev);
Set fwnode in case it isn't set yet and of_node is present. Signed-off-by: Daniel Golle <daniel@makrotopia.org> --- drivers/mmc/core/bus.c | 2 ++ 1 file changed, 2 insertions(+)