Hi,
I was wondering how the OMAP3530 PM (Power Management) states (e.g. OFF, RETENTION, INACTIVE, ON) relate to the different C-states of the MPU core quoted by the CPUIdle framework of Linux:
C0 – System executing code
C1 – MPU WFI + Core active + No tick suppression
C2 – MPU WFI + Core active + Tick suppression
C3 – MPU CSWR + Core active + Tick suppression
C4 – MPU OFF + Core active + Tick suppression
C5 – MPU RET + Core RET + Tick suppression
C6 – MPU OFF + Core RET + Tick suppression
C7 – MPU OFF + Core OFF + Tick suppression.
I read through the technical reference manual for the OMAP3530, but could not find this information. There are more C-states than PM states for the OMAP, so are the C-states simply a more fine-grained way of describing the PM states? I'm tempted to say that the following state mapping is correct:
C0 -- ON,
C2 -- INACTIVE,
C3 -- RETENTION (closed-switch)
C5 -- RETENTION (open-switch)
C7 -- OFF
But what about the other C-states? How do they fit in? On my platform (Beagleboard rev C4), the kernel tells me I can reach C0 through C3 and that's it, so an explanation of how the C-states map to the OMAP PM states would be very helpful. Thank you.