diff --git a/cpu/msp430-common/lpm_cpu.c b/cpu/msp430-common/lpm_cpu.c index 96fa00e692b4b503821eced1a0ae137198774d00..e7893bb0ac086eb544a8aff07b8bfdf9f427a83d 100644 --- a/cpu/msp430-common/lpm_cpu.c +++ b/cpu/msp430-common/lpm_cpu.c @@ -82,7 +82,7 @@ enum lpm_mode lpm_set(enum lpm_mode target) case LPM_OFF: /* MCU totally down (LPM4), only RESET or NMI can resume execution */ __bis_status_register(CPUOFF | OSCOFF | SCG0 | SCG1); - /* all blocks off */ + /* all blocks off */ break; default: printf("ERROR: trying to set an invalid low-power mode!\n"); diff --git a/cpu/msp430-common/msp430-main.c b/cpu/msp430-common/msp430-main.c index 50dcbd1985d6decef97a1f72f085bb71129a34f0..6a908f2a4910e06ef8be5e68980509106e89632b 100644 --- a/cpu/msp430-common/msp430-main.c +++ b/cpu/msp430-common/msp430-main.c @@ -170,6 +170,7 @@ splhigh_(void) void splx_(int sr) { + sr &= GIE; /* If GIE was set, restore it. */ asmv("bis %0, r2" : : "r"(sr)); asmv("nop");