On 18/08/2022 04:21, cy_huang wrote: > From: ChiYuan Huang <cy_huang@xxxxxxxxxxx> > > Add support for the RT9471 3A 1-Cell Li+ battery charger. > > The RT9471 is a highly-integrated 3A switch mode battery charger with > low impedance power path to better optimize the charging efficiency. > > Co-developed-by: Alina Yu <alina_yu@xxxxxxxxxxx> > Signed-off-by: Alina Yu <alina_yu@xxxxxxxxxxx> > Signed-off-by: ChiYuan Huang <cy_huang@xxxxxxxxxxx> > --- > Since v2: > - Fix checkpatch error about 'foo * bar' to 'foo *bar' in psy_device_to_chip function. > - Specify the member name directly for the use of linear range. > > --- (...) > + > +static DEVICE_ATTR_RW(sysoff_enable); > +static DEVICE_ATTR_RW(charge_term_enable); > +static DEVICE_ATTR_RW(port_detect_enable); > + > +static struct attribute *rt9471_sysfs_entries[] = { > + &dev_attr_sysoff_enable.attr, > + &dev_attr_charge_term_enable.attr, > + &dev_attr_port_detect_enable.attr, > + NULL You need to document the sysfs ABI in Documentation. > +}; > + > +static const struct attribute_group rt9471_attr_group = { > + .attrs = rt9471_sysfs_entries, > +}; > + > +static const struct attribute_group *rt9471_attr_groups[] = { > + &rt9471_attr_group, > + NULL > +}; (...) > + > +static const struct of_device_id rt9471_of_device_id[] = { > + { .compatible = "richtek,rt9471" }, > + {} > +}; > +MODULE_DEVICE_TABLE(of, rt9471_of_device_id); > + > +static struct i2c_driver rt9471_driver = { > + .driver = { > + .name = "rt9471", > + .owner = THIS_MODULE, You should not need this. Run coccinelle/coccicheck on your driver. Best regards, Krzysztof