]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commitdiff
firmware: xilinx: Add DLL reset support
authorManish Narani <manish.narani@xilinx.com>
Tue, 21 Jan 2020 10:21:33 +0000 (15:51 +0530)
committerUlf Hansson <ulf.hansson@linaro.org>
Tue, 24 Mar 2020 13:35:38 +0000 (14:35 +0100)
SD DLL resets are required for some of the operations on ZynqMP platform.
Add DLL reset support in ZynqMP firmware driver for SD DLL reset.

Signed-off-by: Manish Narani <manish.narani@xilinx.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
Link: https://lore.kernel.org/r/1579602095-30060-3-git-send-email-manish.narani@xilinx.com
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/firmware/xilinx/zynqmp.c
include/linux/firmware/xlnx-zynqmp.h

index a809f21c72738a35427ed97d047feb8453940916..f8b03dcfd2f786c4d0ee45b1fafbba96949488b4 100644 (file)
@@ -512,6 +512,7 @@ static int zynqmp_pm_clock_getparent(u32 clock_id, u32 *parent_id)
 static inline int zynqmp_is_valid_ioctl(u32 ioctl_id)
 {
        switch (ioctl_id) {
+       case IOCTL_SD_DLL_RESET:
        case IOCTL_SET_SD_TAPDELAY:
        case IOCTL_SET_PLL_FRAC_MODE:
        case IOCTL_GET_PLL_FRAC_MODE:
index 2cd12ebd6826bb149d5ee9cc6b62c857843a59c5..c8c42214e7fbe9619ee2c19b9f2ec0657e11c64f 100644 (file)
@@ -100,7 +100,8 @@ enum pm_ret_status {
 };
 
 enum pm_ioctl_id {
-       IOCTL_SET_SD_TAPDELAY = 7,
+       IOCTL_SD_DLL_RESET = 6,
+       IOCTL_SET_SD_TAPDELAY,
        IOCTL_SET_PLL_FRAC_MODE,
        IOCTL_GET_PLL_FRAC_MODE,
        IOCTL_SET_PLL_FRAC_DATA,
@@ -271,6 +272,12 @@ enum tap_delay_type {
        PM_TAPDELAY_OUTPUT,
 };
 
+enum dll_reset_type {
+       PM_DLL_RESET_ASSERT,
+       PM_DLL_RESET_RELEASE,
+       PM_DLL_RESET_PULSE,
+};
+
 /**
  * struct zynqmp_pm_query_data - PM query data
  * @qid:       query ID