0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015 #ifndef _SC_PM_API_H
0016 #define _SC_PM_API_H
0017
0018 #include <linux/firmware/imx/sci.h>
0019
0020
0021
0022
0023 enum imx_sc_pm_func {
0024 IMX_SC_PM_FUNC_UNKNOWN = 0,
0025 IMX_SC_PM_FUNC_SET_SYS_POWER_MODE = 19,
0026 IMX_SC_PM_FUNC_SET_PARTITION_POWER_MODE = 1,
0027 IMX_SC_PM_FUNC_GET_SYS_POWER_MODE = 2,
0028 IMX_SC_PM_FUNC_SET_RESOURCE_POWER_MODE = 3,
0029 IMX_SC_PM_FUNC_GET_RESOURCE_POWER_MODE = 4,
0030 IMX_SC_PM_FUNC_REQ_LOW_POWER_MODE = 16,
0031 IMX_SC_PM_FUNC_SET_CPU_RESUME_ADDR = 17,
0032 IMX_SC_PM_FUNC_REQ_SYS_IF_POWER_MODE = 18,
0033 IMX_SC_PM_FUNC_SET_CLOCK_RATE = 5,
0034 IMX_SC_PM_FUNC_GET_CLOCK_RATE = 6,
0035 IMX_SC_PM_FUNC_CLOCK_ENABLE = 7,
0036 IMX_SC_PM_FUNC_SET_CLOCK_PARENT = 14,
0037 IMX_SC_PM_FUNC_GET_CLOCK_PARENT = 15,
0038 IMX_SC_PM_FUNC_RESET = 13,
0039 IMX_SC_PM_FUNC_RESET_REASON = 10,
0040 IMX_SC_PM_FUNC_BOOT = 8,
0041 IMX_SC_PM_FUNC_REBOOT = 9,
0042 IMX_SC_PM_FUNC_REBOOT_PARTITION = 12,
0043 IMX_SC_PM_FUNC_CPU_START = 11,
0044 };
0045
0046
0047
0048
0049 #define IMX_SC_PM_CLK_ALL UINT8_MAX
0050
0051
0052
0053
0054 #define IMX_SC_PM_PW_MODE_OFF 0
0055 #define IMX_SC_PM_PW_MODE_STBY 1
0056 #define IMX_SC_PM_PW_MODE_LP 2
0057 #define IMX_SC_PM_PW_MODE_ON 3
0058
0059
0060
0061
0062 #define IMX_SC_PM_CLK_SLV_BUS 0
0063 #define IMX_SC_PM_CLK_MST_BUS 1
0064 #define IMX_SC_PM_CLK_PER 2
0065 #define IMX_SC_PM_CLK_PHY 3
0066 #define IMX_SC_PM_CLK_MISC 4
0067 #define IMX_SC_PM_CLK_MISC0 0
0068 #define IMX_SC_PM_CLK_MISC1 1
0069 #define IMX_SC_PM_CLK_MISC2 2
0070 #define IMX_SC_PM_CLK_MISC3 3
0071 #define IMX_SC_PM_CLK_MISC4 4
0072 #define IMX_SC_PM_CLK_CPU 2
0073 #define IMX_SC_PM_CLK_PLL 4
0074 #define IMX_SC_PM_CLK_BYPASS 4
0075
0076
0077
0078
0079 #define IMX_SC_PM_PARENT_XTAL 0
0080 #define IMX_SC_PM_PARENT_PLL0 1
0081 #define IMX_SC_PM_PARENT_PLL1 2
0082 #define IMX_SC_PM_PARENT_PLL2 3
0083 #define IMX_SC_PM_PARENT_BYPS 4
0084
0085 #endif