SLAZ627W September   2014  – August 2021 MSP430FR6972

 

  1. 1Functional Advisories
  2. 2Preprogrammed Software Advisories
  3. 3Debug Only Advisories
  4. 4Fixed by Compiler Advisories
  5. 5Nomenclature, Package Symbolization, and Revision Identification
    1. 5.1 Device Nomenclature
    2. 5.2 Package Markings
      1.      PM64
      2.      RGC64
    3. 5.3 Memory-Mapped Hardware Revision (TLV Structure)
  6. 6Advisory Descriptions
    1. 6.1  ADC38
    2. 6.2  ADC42
    3. 6.3  ADC43
    4. 6.4  ADC64
    5. 6.5  ADC66
    6. 6.6  ADC67
    7. 6.7  ADC69
    8. 6.8  ADC70
    9. 6.9  ADC71
    10. 6.10 AES1
    11. 6.11 COMP7
    12. 6.12 COMP10
    13. 6.13 CPU21
    14. 6.14 CPU22
    15. 6.15 CPU40
    16. 6.16 CPU46
    17. 6.17 CPU47
    18. 6.18 CS7
    19. 6.19 CS12
    20. 6.20 DMA7
    21. 6.21 EEM19
    22. 6.22 EEM23
    23. 6.23 EEM27
    24. 6.24 EEM30
    25. 6.25 EEM31
    26. 6.26 GC4
    27. 6.27 GC5
    28. 6.28 JTAG27
    29. 6.29 PMM24
    30. 6.30 PMM27
    31. 6.31 PMM31
    32. 6.32 PMM32
    33. 6.33 PORT28
    34. 6.34 REF9
    35. 6.35 RTC10
    36. 6.36 RTC12
    37. 6.37 TB25
    38. 6.38 USCI41
    39. 6.39 USCI42
    40. 6.40 USCI45
    41. 6.41 USCI47
    42. 6.42 USCI50
  7. 7Revision History

PMM32

PMM Module

Category

Functional

Function

Device may enter lockup state or execute unintentional code during transition from AM to LPM2/3/4

Description

The device might enter lockup state or start executing unintentional code  resulting in unpredictable behavior depending on the contents of the address location- if any of the two conditions below occurs:

Condition1:

The following three events happen at the same time:

1) The device transitions from AM to LPM2/3/4 (e.g. during ISR exits or Status Register modifications),

AND

2) An interrupt is requested (e.g. GPIO interrupt),

AND

3)  MODCLK is requested (e.g. triggered by ADC) or removed (e.g. end of ADC conversion).

Modules which can trigger MODCLK clock requests/removals are ADC and eUSCI.

If clock events are started by the CPU (e.g. eUSCI during SPI master transmission), they can not occur at the same time as the power mode transition and thus should not be affected. The device should only be affected when the clock event is asynchronous to the power mode transition.

The device can recover from this lockup condition by a PUC/BOR/Power cycle (e.g. enable Watchdog to trigger PUC).

Condition2:

The following events happen at the same time:

1) The device transitions from AM to LPM2/3/4 (e.g. during ISR exits or Status Register modifications),

AND

2) An interrupt is requested (e.g. GPIO interrupt),

AND

3) Neither MODCLK nor SMCLK are running (e.g. requested by a peripheral),

AND

4)  SMCLK is configured with a different frequency than MCLK.

The device can recover from this lockup condition by a BOR/Power cycle.

Workaround

1. Use LPM0/1/x.5 instead of LPM2/3/4.

OR

2. Place the FRAM in INACTIVE mode before any entry to LPM2/3/4 by clearing the FRPWR bit and FRLPMPWR bit (if exist) in the GCCTL0 register. This must be performed from RAM as shown below:

// define a function in RAM
#pragma CODE_SECTION(enterLpModeFromRAM,".TI.ramfunc")
void enterLpModeFromRAM(unsigned short lowPowerMode);

//call this function before any entry to LPM2/3/4
void enterLpModeFromRAM(unsigned short lowPowerMode)
{
FRCTL0 = FRCTLPW;
GCCTL0 &= ~(FRPWR+FRLPMPWR); //clear FRPWR and FRLPMPWR
FRCTL0_H = 0; //re-lock FRCTL
__bis_SR_register(lowPowerMode);
}