On Tue, 19 Oct 2021 at 20:48, Alexandre Belloni <alexandre.belloni@xxxxxxxxxxx> wrote: > > On 19/10/2021 19:35:26+0300, Sam Protsenko wrote: > > On Tue, 19 Oct 2021 at 19:22, Krzysztof Kozlowski > > <krzysztof.kozlowski@xxxxxxxxxxxxx> wrote: > > > > > > On 19/10/2021 18:17, Krzysztof Kozlowski wrote: > > > > On 19/10/2021 15:17, Sam Protsenko wrote: > > > >> This RTC driver only accepts dates from 2000 to 2099 year. It starts > > > >> counting from 2000 to avoid Y2K problem, > > > > > > > > 1. Where is the minimum (2000) year set in the RTC driver? > > > > > > Ah, indeed. I found it now in the driver. > > > > > > > > > > >> and S3C RTC only supports 100 > > > > > > > > On some of the devices 100, on some 1000, therefore, no. This does not > > > > look correct. > > > > > > That part of sentence is still incorrect, but change itself makes sense. > > > Driver does not support <2000. > > > > > > > Driver itself does not allow setting year >= 2100: > > > > <<<<<<<<<<<<<<<<<<<< cut here >>>>>>>>>>>>>>>>>>> > > if (year < 0 || year >= 100) { > > dev_err(dev, "rtc only supports 100 years\n"); > > return -EINVAL; > > } > > <<<<<<<<<<<<<<<<<<<< cut here >>>>>>>>>>>>>>>>>>> > > > > Devices might allow it, so the commit message phrasing is incorrect > > and should be replaced, yes. But the code should be correct. Should I > > send v2 with fixed commit message? > > > > It would be better to pass the proper values because else nobody will > ever come back and fix it (hence why I didn't move that driver to > devm_rtc_register_device yet). > Krzysztof, do you have by chance the doc for different SoCs supported by S3C RTC driver? I can implement proper values for min/max range for each SoC, as Alexandre asked, by adding those to driver data. But I need max year register value (100, 1000, etc) for each of those chips: - "samsung,s3c2410-rtc" - "samsung,s3c2416-rtc" - "samsung,s3c2443-rtc" - "samsung,s3c6410-rtc" - "samsung,exynos3250-rtc" For example Exynos850 TRM states that BCDYEAR register has [11:0] bits for holding the year value in BCD format, so it's 10^(12/4)=1000 years max. > -- > Alexandre Belloni, co-owner and COO, Bootlin > Embedded Linux and Kernel engineering > https://bootlin.com