Merge tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc
[sfrench/cifs-2.6.git] / include / linux / firmware / xlnx-zynqmp.h
index e41ad9e3713606507e4e3c0e6d4378adcc2a69b0..2cd12ebd6826bb149d5ee9cc6b62c857843a59c5 100644 (file)
 #define        ZYNQMP_PM_CAPABILITY_WAKEUP     0x4U
 #define        ZYNQMP_PM_CAPABILITY_UNUSABLE   0x8U
 
+/* Feature check status */
+#define PM_FEATURE_INVALID             -1
+#define PM_FEATURE_UNCHECKED           0
+
 /*
  * Firmware FPGA Manager flags
  * XILINX_ZYNQMP_PM_FPGA_FULL: FPGA full reconfiguration
@@ -78,17 +82,21 @@ enum pm_api_id {
        PM_CLOCK_GETRATE,
        PM_CLOCK_SETPARENT,
        PM_CLOCK_GETPARENT,
+       PM_FEATURE_CHECK = 63,
+       PM_API_MAX,
 };
 
 /* PMU-FW return status codes */
 enum pm_ret_status {
        XST_PM_SUCCESS = 0,
+       XST_PM_NO_FEATURE = 19,
        XST_PM_INTERNAL = 2000,
        XST_PM_CONFLICT,
        XST_PM_NO_ACCESS,
        XST_PM_INVALID_NODE,
        XST_PM_DOUBLE_REQ,
        XST_PM_ABORT_SUSPEND,
+       XST_PM_MULT_USER = 2008,
 };
 
 enum pm_ioctl_id {
@@ -107,6 +115,7 @@ enum pm_query_id {
        PM_QID_CLOCK_GET_PARENTS,
        PM_QID_CLOCK_GET_ATTRIBUTES,
        PM_QID_CLOCK_GET_NUM_CLOCKS = 12,
+       PM_QID_CLOCK_GET_MAX_DIVISOR,
 };
 
 enum zynqmp_pm_reset_action {