YH-820: prohibit to change time/date on some hardware versions
This patch will autodetect these players, where setting the time/date would leave the player in an unusable state. Change-Id: I0579610ce7c10152ace27bb9c06cf6cb2aab8052
This commit is contained in:
parent
053c4d0593
commit
1c095a1323
1 changed files with 18 additions and 0 deletions
|
@ -43,6 +43,10 @@
|
|||
#include "font.h"
|
||||
#include "system.h"
|
||||
|
||||
#ifdef SAMSUNG_YH820
|
||||
#include "splash.h"
|
||||
#endif
|
||||
|
||||
static int timedate_set(void)
|
||||
{
|
||||
/* Make a local copy of the time struct */
|
||||
|
@ -280,6 +284,20 @@ int time_screen(void* ignored)
|
|||
draw_timedate(&clock_vps[i], &screens[i]);
|
||||
}
|
||||
|
||||
#ifdef SAMSUNG_YH820
|
||||
/* some hardware revisions of the yh820 have a rtc problem: if you try to set
|
||||
the time/date it will leave the player in an absolute unresponsive state
|
||||
which can only be reverted by removing the battery. Setting time/date
|
||||
should be prohibited on this targets. Fortunately we can autodetect these,
|
||||
because they always report "02:02:02" as time.
|
||||
*/
|
||||
struct tm *tm = get_time();
|
||||
if (tm->tm_year==102 && tm->tm_hour==2 && tm->tm_min==2 && tm->tm_sec==2) {
|
||||
splash(4*HZ, "Can't set time/date due to hardware issues!");
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
ret = do_menu(&time_menu, NULL, menu, false);
|
||||
pop_current_activity();
|
||||
/* see comments above in the button callback */
|
||||
|
|
Loading…
Reference in a new issue