On 02/10/2015 at 11:17:18 +0200, Uwe Kleine-König wrote :
> Hello,
> 
> the fix and the cleanup should be fine. Patches 3 and 4 are probably
> wrong (but still state of the art for other in-tree drivers) because
> sysfs_create_file is called too late. See
> http://kroah.com/log/blog/2013/06/26/how-to-create-a-sysfs-file-correctly/
> for some details.
> 
> I failed to find how to do it correctly though:
>  - the attributes are device specific, so device_driver::groups is wrong
>  - for using the i2c's device group it's too late in .probe
>  - the rtc's device is only malloc'd in rtc_device_register and when
>    this returns it's already too late again.
>  - these are neither class nor bus attributes, so these are ruled out, too.
> 

Most of the drivers currently don't care about that race condition so I
could merge them as-is.
I currently have a PoC that creates the nvram file with the rest of the
sysfs files which solves that. I think this could also be extended to
support battery status.

> Uwe Kleine-König (4):
>   rtc: pcf2127: fix reading uninitialized value on RTC_READ_VL ioctl
>   rtc: pcf2127: remove useless driver version
>   rtc: pcf2127: implement reading battery status bits
>   rtc: pcf2127: implement access to nvram
> 
>  drivers/rtc/rtc-pcf2127.c | 285 
> ++++++++++++++++++++++++++++++++++++++++++----
>  1 file changed, 261 insertions(+), 24 deletions(-)
> 
> -- 
> 2.6.0
> 

-- 
Alexandre Belloni, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to