Hi, sorry to keep the post open so long, got called away an something else:
So using IntMasterDisable(), I can keep the application from exiting, but I keep getting an interrupt wake up. When I read NVIC_PEND0 it often has a value of 0x00000020, which indicates a bus fault as far as I can tell. (I am intending to use the GPIOD interrupt as the wake source).
I am using an alternate clock source during sleep via the following:
// set the deep sleep clock source: use the low-frequency internal osc with
// a div/64, disable the MOSC and internal oscillator in deep sleep.
SysCtlDeepSleepClockConfigSet( SYSCTL_DSLP_DIV_64,
( SYSCTL_DSLP_OSC_INT30 | SYSCTL_DSLP_PIOSC_PD |
SYSCTL_DSLP_MOSC_PD ) );
// set the SRAM and flash to low power modes during sleep
SysCtlDeepSleepPowerSet( SYSCTL_FLASH_LOW_POWER | SYSCTL_SRAM_LOW_POWER |
SYSCTL_LDO_SLEEP | SYSCTL_TEMP_LOW_POWER );
// use clock gating for peripherals during sleep
SysCtlPeripheralClockGating( true );
And using SysCtlPeripheralDeepSleepDisable() on all enabled peripherals except GPIOD. When the bus fault is asserted, I have no way in the API to clear it, so it constantly will wake up once it asserts. Any ideas on what may be happening? Thanks!