diff options
author | Jeff Garzik <jgarzik@pobox.com> | 2005-11-09 01:07:12 -0500 |
---|---|---|
committer | Jeff Garzik <jgarzik@pobox.com> | 2005-11-09 01:07:12 -0500 |
commit | a892acacd3a8546ac161526522f13b5174f2c471 (patch) | |
tree | ee6d36f27f1388989ebfcabf90253fb7194112ac /arch/mips/pmc-sierra/yosemite/setup.c | |
parent | 193515d51ccb363165d6b09e9ba5c21089e34bad (diff) | |
parent | 330d57fb98a916fa8e1363846540dd420e99499a (diff) | |
download | kernel_samsung_smdk4412-a892acacd3a8546ac161526522f13b5174f2c471.tar.gz kernel_samsung_smdk4412-a892acacd3a8546ac161526522f13b5174f2c471.tar.bz2 kernel_samsung_smdk4412-a892acacd3a8546ac161526522f13b5174f2c471.zip |
Merge branch 'master'
Diffstat (limited to 'arch/mips/pmc-sierra/yosemite/setup.c')
-rw-r--r-- | arch/mips/pmc-sierra/yosemite/setup.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/mips/pmc-sierra/yosemite/setup.c b/arch/mips/pmc-sierra/yosemite/setup.c index bdc2ab55bed..059755b5ed5 100644 --- a/arch/mips/pmc-sierra/yosemite/setup.c +++ b/arch/mips/pmc-sierra/yosemite/setup.c @@ -73,7 +73,9 @@ void __init bus_error_init(void) unsigned long m48t37y_get_time(void) { unsigned int year, month, day, hour, min, sec; + unsigned long flags; + spin_lock_irqsave(&rtc_lock, flags); /* Stop the update to the time */ m48t37_base->control = 0x40; @@ -88,6 +90,7 @@ unsigned long m48t37y_get_time(void) /* Start the update to the time again */ m48t37_base->control = 0x00; + spin_unlock_irqrestore(&rtc_lock, flags); return mktime(year, month, day, hour, min, sec); } @@ -95,11 +98,13 @@ unsigned long m48t37y_get_time(void) int m48t37y_set_time(unsigned long sec) { struct rtc_time tm; + unsigned long flags; /* convert to a more useful format -- note months count from 0 */ to_tm(sec, &tm); tm.tm_mon += 1; + spin_lock_irqsave(&rtc_lock, flags); /* enable writing */ m48t37_base->control = 0x80; @@ -123,6 +128,7 @@ int m48t37y_set_time(unsigned long sec) /* disable writing */ m48t37_base->control = 0x00; + spin_unlock_irqrestore(&rtc_lock, flags); return 0; } |