ARM: AM33XX: hwmod: Implement cpsw ocp
authorVaibhav Hiremath <hvaibhav@ti.com>
Sun, 10 Jun 2012 18:39:07 +0000 (00:09 +0530)
committerMugunthan V N <mugunthanvnm@ti.com>
Tue, 12 Jun 2012 13:04:39 +0000 (18:34 +0530)
commita28da2ac98f173f97dbbb46be1ce0a3879f21a11
tree92473c6cea72352e2303744db0aa57f6b555b57e
parent8fe58e9635f1925cf7bea3f991e7c04915abb5a1
ARM: AM33XX: hwmod: Implement cpsw ocp

level reset before disabling it

As per the observation (not yet confirmed from IP team), SW must assert the Module level reset signal to all 4 submodules of the CPSW before disabling the clock/module; without this module doesn't enter into idle state and this eventually leads to failure in entering into low-power state.

So in order to handle this from standard runtime-pm and hwmod framework, so that driver doesn't need to do any custom handling due to this IP integration (not sure though) issues, this patch implements new approach,
  - Introduce new flag to indicate that this module requires special
    attention before disabling it.
  - Add cpsw specific reset function in am33xx hwmod data file, since
    This issue is specific to am33xx.
  - Add rst_offs field to omap_hwmod_class structure, required for
    accessing reset register (if different than sysc)

Signed-off-by: Vaibhav Hiremath <hvaibhav@ti.com>
Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com>
arch/arm/mach-omap2/omap_hwmod.c
arch/arm/mach-omap2/omap_hwmod_33xx_data.c
arch/arm/plat-omap/include/plat/omap_hwmod.h