Hi all,
We are trying to reduce the power consumption by DM8148 in one of our designs.
We are executing following steps to put slave modules into idle mode .
- Write to <Module>_SYSCONFIG register's IDLEMODE bits to put module into Force-idle mode.
- Write to CM_<Powerdomain>_<Module>_CLKCTRL[x] register's MODULEMODE bits to disable the specific module.
- Read from CM_<Powerdomain>_<Module>_CLKCTRL[x] register's IDLEST bits to confirm the module status .
Even though read back value of IDLEST bits is 0x3 ( corresponding module is disabled ) , there is no change in the current consumption.
We have also observed one strange behavior.
With the same sequence mentioned above we put module into No-Idle mode. With this also after disabling the module from PRCM , read back status value is 0x3 (disabled). According to Section 2.1.2.2 Slave Idle Protocol of TRM , if we put the module into no-idle mode , writing to PRCM register to disable the module should not have any effect since PRCM will not get IdleAck from the Module.
We are not able to find out the reason behind this . Is there a problem with the sequence we are following ?
Regards,
Suresha.N.S.