plat: xilinx: versal: Implement PM IOCTL API

Add PM IOCTL EEMI.

Below PLL related IOCTLs are not available in versal PLM.
	* IOCTL_SET_PLL_FRAC_MODE
	* IOCTL_GET_PLL_FRAC_MODE
	* IOCTL_SET_PLL_FRAC_DATA
	* IOCTL_SET_PLL_FRAC_DATA

PLM has new EEMI APIs for PLL related operations.
Call them instead of passing IOCTL API to PLM.
For other IOCTL, ATF just pass through IOCTL
request to PLM (Platform Loader and Manager).

Signed-off-by: Tejas Patel <tejas.patel@xilinx.com>
Signed-off-by: Jolly Shah <jolly.shah@xilinx.com>
Change-Id: I96f8da46a4d3965c9291b7b2da96056408137839
diff --git a/plat/xilinx/versal/pm_service/pm_defs.h b/plat/xilinx/versal/pm_service/pm_defs.h
index 248c715..fa35066 100644
--- a/plat/xilinx/versal/pm_service/pm_defs.h
+++ b/plat/xilinx/versal/pm_service/pm_defs.h
@@ -41,6 +41,7 @@
 #define	PM_PINCTRL_SET_FUNCTION		31U
 #define	PM_PINCTRL_CONFIG_PARAM_GET	32U
 #define	PM_PINCTRL_CONFIG_PARAM_SET	33U
+#define PM_IOCTL			34U
 #define PM_CLOCK_ENABLE			36U
 #define PM_CLOCK_DISABLE		37U
 #define PM_CLOCK_GETSTATE		38U
@@ -55,6 +56,16 @@
 #define PM_PLL_SET_MODE			50U
 #define PM_PLL_GET_MODE			51U
 
+/* IOCTL IDs for clock driver */
+#define IOCTL_SET_PLL_FRAC_MODE		8
+#define	IOCTL_GET_PLL_FRAC_MODE		9
+#define	IOCTL_SET_PLL_FRAC_DATA		10
+#define	IOCTL_GET_PLL_FRAC_DATA		11
+
+/* Parameter ID for PLL IOCTLs */
+/* Fractional data portion for PLL */
+#define PM_PLL_PARAM_DATA	2
+
 /*********************************************************************
  * Enum definitions
  ********************************************************************/