Or Rockchip could have simply implemented a linear seconds counter, which would have worked fine and not required crazy workarounds.
Hence why the patch submitter was upvoted and the commenter was downvoted.
if (tm->tm_mon == 10 && tm->tm_mday == 31) { dev_warn(dev, "correcting Nov 31st to Dec 1st (HW bug)\n"); tm->tm_mon = 11; tm->tm_mday = 1; rk808_rtc_set_time(dev, tm); }
Also if you've ever actually used a Rockchip device you'll know they're absolute shit. Pirated Android phone images on incomplete Android device frameworks. They do bullshit like displaying on the TV at 1080p but the Netflix app displays at 720p in the top left corner. How unsurprising they fucked the calendar up too.
Before you go defend the brave embeddded developers from the mean nasty LKML, just think of all the consumers who've paid $100 for TV sticks which advertised an experience and didn't even come close to fulfilling that promise, with absolutely zero after-sales support or updates coming out of Rockchip. Fuck those guys.
If you are any form of hacker who takes pride in your work, you'll recognise this for the colossal fuck-up it actually is.
They perform quite well there if I may say so, when a proper amount of effort has been put into the software running on them.
The chips from Chinese manufacturers aren't really better or worse than most of the others out there, it's just that they often take shortcuts on the software side -- or rather, in particular the low-cost system OEM/ODMs do.
Basically it's extremely rare to find third-party software that is completely trustworthy, even when you pay a bunch of money to ensure that this is the case. Hence why IEC62304 speaks directly to third-party software as enhancing risk. The best thing you can hope for is that the bugs are fairly benign or are easy to work around.
http://bit-player.org/2009/the-zune-bug
This was in software, not hardware, more serious than just the date being wrong, and they didn't even provide a fix other than "wait until the day passes":
http://gizmodo.com/5121822/official-fix-for-the-zune-30-fail
This would certainly explain the weird date issue I had in Android last year, though.
This is probably tangential but when it comes to code and context and everything (e.g. commit messages) I like to be as dry and clear as possible. Just the facts, ma'am.