On Tue, Apr 02, 2024 at 01:59:19PM +0000, Peng Fan wrote: > > On Tue, Apr 02, 2024 at 10:22:24AM +0800, Peng Fan (OSS) wrote: ... > > > +#include <linux/device.h> > > > +#include <linux/err.h> > > > +#include <linux/module.h> > > > +#include <linux/seq_file.h> > > > +#include <linux/scmi_protocol.h> > > > +#include <linux/slab.h> > > > > Missing headers. > > Not sure there is an easy way to filter out what is missed. And?.. You are the author, not me. You know your code much better and it will be quite easy to perform. I may miss things, but reading briefly the 1000 lines and get what headers are required takes no more than half an hour. (Tools that help me, in case I don't remember by heart, are `cscope` and `git grep ...`.) ... > > > + ret = pinctrl_ops->name_get(pmx->ph, i, PIN_TYPE, > > &pins[i].name); > > > + if (ret) > > > > How does the cleanup work for the previously assigned pin names? Is it > > needed? > > No need. The "name" memory region is allocated in firmware pinctrl > Protocol init phase. > > > Maybe a comment? > > ok. As below. > /* > * The region for name is handled by the scmi firmware driver, > * no need free here > */ LGTM. > > > + return dev_err_probe(pmx->dev, ret, > > > + "Can't get name for pin %d", i); -- With Best Regards, Andy Shevchenko