-Added PLL nodes (PLLs are PM slaves)
-Implemented PLL's FSM in pm_pll.h/c
-Added PmRequirement structures for APU and RPU_0, both can request
any PLL for usage
-Implemented saving of FPD PLLs' context and powering down FPD PLLs
before FPD gets powered down (this is PLL suspend)
-Implemented restoring of PLL states when PLL is needed for usage
if FPD has been powered down (this is PLL resume)
Signed-off-by: Mirela Simonovic <mirela.simonovic@aggios.com>
Acked-by: Jyotheeswar Reddy Mutthareddyvari <jyothee@xilinx.com>
-Added PM_CAP_POWER as generic capability (defined in pm_defs).
-Slaves' FSMs should define PM_CAP_POWER capability in states which
require power parent to be ON before the state is entered. This
capability has no effect if slave node does not have power parent
-Powering up parent of a slave is done automatically by the
framework before the FSM of a slave is triggered to change the
state (slave's FSM should assume all prerequisites regarding power
are configured before FSM is triggered)
-Added PM_CAP_POWER capability in ON state of standard fsm (used for
SATA)
Signed-off-by: Mirela Simonovic <mirela.simonovic@aggios.com>
Acked-by: Jyotheeswar Reddy Mutthareddyvari <jyothee@xilinx.com>
-Replaced PM defined macro definitions with macros defined in
lpd_slcr.h
-Other macros that are defined in pm_slave.h do not exist as is,
therefore are still used
Signed-off-by: Mirela Simonovic <mirela.simonovic@aggios.com>
Acked-by: Sören Brinkmann <soren.brinkmann@xilinx.com>
Acked-by: Jyotheeswar Reddy Mutthareddyvari <jyothee@xilinx.com>
-Changed code in PmUpdateSlave to first determine the state to be
entered
-Added function for finding the state with required capabilities
-Removed function which was finding and changing state of a slave
(not used anymore)
-Major reason for changing this code is the bug: in USB case,
when USB is already in right state and upon the set requirement
request which should be resolved to the same state (nothing to
configure, state is already configured as requested) PM
acknowledged an error, although there was no error
Signed-off-by: Mirela Simonovic <mirela.simonovic@aggios.com>
Acked-by: Sören Brinkmann <soren.brinkmann@xilinx.com>
-Using int type for returns
-Error statuses are common Xilinx XST_* codes
-Additional power management status errors are defined in pm_defs.h
Signed-off-by: Mirela Simonovic <mirela.simonovic@aggios.com>
Signed-off-by: Davorin Mista <davorin.mista@aggios.com>
Acked-by: Jyotheeswar Reddy Mutthareddyvari <jyothee@xilinx.com>
Signed-off-by: Sören Brinkmann <soren.brinkmann@xilinx.com>
Before, there was a check at the very beginning to see if current state
is having exact required capabilities. However, state should be checked
for having all required capabilities and not for having exact required
caps. Also, even when state have all required capabilities, there could
be state with lower power that still has all required capabilities.
Code is changed to implement above claims.
Signed-off-by: Mirela Simonovic <mirela.simonovic@aggios.com>
Acked-by: Soren Brinkmann <soren.brinkmann@xilinx.com>
Acked-by: Jyotheeswar Reddy Mutthareddyvari <jyothee@xilinx.com>
-Removed action arrays and instId pointers used in PmSlaveFsm
-Removed unused macros and typedefs
-Removed redundant functions for Sram retention entry/exit
-Added enterState function in PmSlaveFsm. Slave state is entered
based on arguments (slave pointer and next state).
-Added xpbr function pointers in PmSlave derived objects (usb and sram)
Signed-off-by: Mirela Simonovic <mirela.simonovic@aggios.com>
Reviewed-by: Jyotheeswar Reddy <jyothee@xilinx.com>
swbeta2 commit ae6d9a98edb99ce4c51c85bce4872a9f11c7eb74
PMU Firmware is being updated to the latest code base available
in the pmufw git repo. Major changes are:
-Error Management is enabled by default
-PM Module bug fixes
-Code formatting changes
-PMU ROM handlers use ROM Table instead of
individual handler addresses
-Bug fixes in scheduler
-FW_IS_PRESENT bit is set if PM is enabled
Signed-off-by: Jyotheeswar Reddy <jyothee@xilinx.com>
This is the first functional set of files with
-Power Management
-Error Handlers
-Basic Timer based Scheduler
Signed-off-by: Jyotheeswar Reddy <jyothee@xilinx.com>