On Sat, Apr 11, 2026 at 04:24:39PM +0900, Chancel Liu wrote: > Currently the property "ignore-suspend-widgets" are applied only to the > codec's DAPM context. However, some widgets listed in the property > (e.g. "Headphone Jack") belong to card or CPU DAI DAPM context. > Extend the handling so that widgets which are marked ignoring suspend > are looked up across all widgets in the card. > --- a/sound/soc/fsl/imx-rpmsg.c > +++ b/sound/soc/fsl/imx-rpmsg.c > + num_widgets = of_property_count_strings(data->card.dev->of_node, > + "ignore-suspend-widgets"); Don't we get an error code back if the property doesn't exist at all? > + for_each_card_widgets(card, w) { > + for (i = 0; i < num_widgets; i++) { > + of_property_read_string_index(data->card.dev->of_node, > + "ignore-suspend-widgets", > + i, &widgets); > + if (!strcmp(w->name, widgets)) { > + ret = snd_soc_dapm_ignore_suspend(w->dapm, widgets); > + if (ret) { > + dev_err(dev, "failed to find ignore suspend widgets\n"); > + return ret; > + } > + } > + } > + } This seems like the wrong level to implement this search, it should be in the core. I'm also not seeing any prefix handling, the widget name might've been prefixed at runtime.