The various functions in the OMAP3 module do indeed have 4 levels of power management - Active, Idle, Retension, and Off. "Idle" means all clocks have been turned off, I don't really understand exactly what "retention" means. The other two should be self explanatory. As you say, the deeper levels use less power and take longer to wake up from.
The runtime power management - which for the CPU is called 'cpuidle' - attempts to switch to the lowest power state which still meets the current needs.
This is all done quite independently of "suspend".
"suspend" is an OS concept more than a hardware concept - at least it in on ARM. On X86 it is also a firmware concept imposed by the BIOS (once the APM bios, now the ACPI bios).
To Linux "suspend" means:
. - freeze all processes
. - give extra encouragement to devices to go to low power states
. - disable some interrupts
and wait for a non-disabled interrupt.
Some devices don't need extra encouragement, and will always power down as much as possible. Others might only powerdown when they are not in use (i.e. no process has the device file open), and the extra encouragement from suspend powers them down anyway. Others might stay powered on a little bit so they can wake the system up, and this might be configurable.
So when I was talking about "suspend" it was definitely the OS-level concept, not the chip-level concept.