Messages in this thread | | | From | Jingoo Han <> | Subject | Re: [PATCH v3] rtc: add devm_rtc_device_{register,unregister}() | Date | Wed, 06 Mar 2013 15:36:59 +0900 |
| |
On Wednesday, March 06, 2013 3:19 PM, Venu Byravarasu wrote: > On Wednesday, March 06, 2013 11:43 AM, Jingoo Han wrote: > > > > On Wednesday, March 06, 2013 3:03 PM, Venu Byravarasu wrote: > > > > > > > --- a/drivers/rtc/class.c > > > > +++ b/drivers/rtc/class.c > > > > > > > +/** > > > > + * devm_rtc_device_register - resource managed rtc_device_register() > > > > + * @name: the name of the device > > > > + * @dev: the device to register > > > > + * @ops: the rtc operations structure > > > > + * @owner: the module owner > > > > + * > > > > + * @return a struct rtc on success, or an ERR_PTR on error > > > > + * > > > > + * Managed rtc_device_register(). The rtc_device returned from this > > > > function > > > > + * are automatically freed on driver detach. See rtc_device_register() > > > > + * for more information. > > > > + */ > > > > + > > > > +struct rtc_device *devm_rtc_device_register(const char *name, > > > > + struct device *dev, > > > > > > As most of devm_* functions use " struct device *dev" as their first param, > > > why not this function also modified to be in sync with them? > > > > Yes, but, I want to sync with the form of rtc_device_register(). > > This function already uses 'struct device *dev' as second argument as below. > > > > IMO any kernel driver developer using devm_* API, expects struct device* as first argument. > Breaking this policy for one module (RTC here) & making this API special, might not be a good idea. > Anyhow, maintainers may add their comments on this.
OK, I see.
I just look at other devm_* API. All devm_* APIs use 'struct device*' as first argument.
To prevent the confusion, I will send the patch that uses 'struct device*' as first argument as below.
struct rtc_device *devm_rtc_device_register(struct device *dev, const char *name,
Thanks for your comment
Best regards, Jingoo Han
> > Thanks, > Venu > > > struct rtc_device *rtc_device_register(const char *name, struct device *dev, > > const struct rtc_class_ops *ops, > > struct module *owner) > > > > Best regards, > > Jingoo Han > > > > > > > > > + const struct rtc_class_ops *ops, > > > > + struct module *owner) > > > > +{ > > > > + struct rtc_device **ptr, *rtc;
| |