From cf9d6d4cd38544bb6cf2ce4ddd6e9bc8d22c4a36 Mon Sep 17 00:00:00 2001 From: Vipul Kumar Date: Mon, 26 Feb 2018 14:22:50 +0530 Subject: [PATCH] arm64: zynqmp: mini-emmc: Added clock configuration in the device tree This patch added clock configuration for mini emmc in the device tree and enabled CONFIG_MMC_SDHCI_ZYNQ in defconfig. Without CONFIG_MMC_SDHCI_ZYNQ, the device was failed to register. Without this clk configuration, mmc device was failed to get clk. CONFIG_DOS_PARTITION will be enabled through Kconfig and hence removed from header file. After adding all these changes, emmc is working fine. Signed-off-by: Vipul Kumar Signed-off-by: Siva Durga Prasad Paladugu Signed-off-by: Michal Simek --- arch/arm/dts/zynqmp-mini-emmc0.dts | 7 +++++++ arch/arm/dts/zynqmp-mini-emmc1.dts | 7 +++++++ configs/xilinx_zynqmp_mini_emmc0_defconfig | 1 + configs/xilinx_zynqmp_mini_emmc1_defconfig | 1 + include/configs/xilinx_zynqmp_mini.h | 2 -- 5 files changed, 16 insertions(+), 2 deletions(-) diff --git a/arch/arm/dts/zynqmp-mini-emmc0.dts b/arch/arm/dts/zynqmp-mini-emmc0.dts index bf160d102ee..9c7766dd71e 100644 --- a/arch/arm/dts/zynqmp-mini-emmc0.dts +++ b/arch/arm/dts/zynqmp-mini-emmc0.dts @@ -36,6 +36,12 @@ u-boot,dm-pre-reloc; }; + clk_xin: clk_xin { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <200000000>; + }; + amba: amba { compatible = "simple-bus"; #address-cells = <2>; @@ -48,6 +54,7 @@ status = "disabled"; reg = <0x0 0xff160000 0x0 0x1000>; clock-names = "clk_xin", "clk_ahb"; + clocks = <&clk_xin &clk_xin>; xlnx,device_id = <0>; }; }; diff --git a/arch/arm/dts/zynqmp-mini-emmc1.dts b/arch/arm/dts/zynqmp-mini-emmc1.dts index 8d2378c96a8..a2ad7158b7a 100644 --- a/arch/arm/dts/zynqmp-mini-emmc1.dts +++ b/arch/arm/dts/zynqmp-mini-emmc1.dts @@ -36,6 +36,12 @@ u-boot,dm-pre-reloc; }; + clk_xin: clk_xin { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <200000000>; + }; + amba: amba { compatible = "simple-bus"; #address-cells = <2>; @@ -48,6 +54,7 @@ status = "disabled"; reg = <0x0 0xff170000 0x0 0x1000>; clock-names = "clk_xin", "clk_ahb"; + clocks = <&clk_xin &clk_xin>; xlnx,device_id = <1>; }; }; diff --git a/configs/xilinx_zynqmp_mini_emmc0_defconfig b/configs/xilinx_zynqmp_mini_emmc0_defconfig index 8bc079bc6cd..d3ee7f48f80 100644 --- a/configs/xilinx_zynqmp_mini_emmc0_defconfig +++ b/configs/xilinx_zynqmp_mini_emmc0_defconfig @@ -42,4 +42,5 @@ CONFIG_OF_EMBED=y # CONFIG_DM_DEVICE_REMOVE is not set CONFIG_DM_MMC=y CONFIG_MMC_SDHCI=y +CONFIG_MMC_SDHCI_ZYNQ=y # CONFIG_EFI_LOADER is not set diff --git a/configs/xilinx_zynqmp_mini_emmc1_defconfig b/configs/xilinx_zynqmp_mini_emmc1_defconfig index c4594e051cd..f563d7a6705 100644 --- a/configs/xilinx_zynqmp_mini_emmc1_defconfig +++ b/configs/xilinx_zynqmp_mini_emmc1_defconfig @@ -42,4 +42,5 @@ CONFIG_OF_EMBED=y # CONFIG_DM_DEVICE_REMOVE is not set CONFIG_DM_MMC=y CONFIG_MMC_SDHCI=y +CONFIG_MMC_SDHCI_ZYNQ=y # CONFIG_EFI_LOADER is not set diff --git a/include/configs/xilinx_zynqmp_mini.h b/include/configs/xilinx_zynqmp_mini.h index 29235d84b80..2624588330a 100644 --- a/include/configs/xilinx_zynqmp_mini.h +++ b/include/configs/xilinx_zynqmp_mini.h @@ -34,7 +34,6 @@ #undef CONFIG_GZIP #undef CONFIG_CMD_SPL #undef CONFIG_CMD_ENV -#undef CONFIG_DOS_PARTITION #undef CONFIG_MP #undef CONFIG_SYS_INIT_SP_ADDR #undef CONFIG_SYS_LONGHELP @@ -94,7 +93,6 @@ # define CONFIG_ENV_SIZE 0x10000 # define CONFIG_SYS_INIT_SP_ADDR CONFIG_SYS_TEXT_BASE # define CONFIG_SYS_MALLOC_LEN 0x800000 -# define CONFIG_DOS_PARTITION # define CONFIG_PARTITIONS # define CONFIG_SYS_LONGHELP # undef CONFIG_ENV_IS_IN_FAT -- 2.47.3