summaryrefslogtreecommitdiff
path: root/board/freescale
diff options
context:
space:
mode:
authorBenoît Thébaudeau <benoit@wsystem.com>2017-05-03 09:59:06 (GMT)
committerStefano Babic <sbabic@denx.de>2017-05-31 08:14:41 (GMT)
commit747778cf69468daa1f35abb932e17032ddfe9c1a (patch)
tree941e43aba76e6868955a8a57d4186cbf077f758d /board/freescale
parent3e3aab3379d99f4c955ecca4992ad33ae70e71e4 (diff)
downloadu-boot-fsl-qoriq-747778cf69468daa1f35abb932e17032ddfe9c1a.tar.xz
mx25pdk: Set the eSDHC PER clock to 48 MHz
The maximum SD clock frequency in High Speed mode is 50 MHz. This change makes it possible to get 48 MHz from the USB PLL (240 MHz / 5 / 1) instead of the previous 33.25 MHz from the AHB clock (133 MHz / 2 / 2). Signed-off-by: Benoît Thébaudeau <benoit@wsystem.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Diffstat (limited to 'board/freescale')
-rw-r--r--board/freescale/mx25pdk/mx25pdk.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/board/freescale/mx25pdk/mx25pdk.c b/board/freescale/mx25pdk/mx25pdk.c
index 788d3c3..cab769c 100644
--- a/board/freescale/mx25pdk/mx25pdk.c
+++ b/board/freescale/mx25pdk/mx25pdk.c
@@ -175,6 +175,12 @@ int board_mmc_init(bd_t *bis)
imx_iomux_v3_setup_multiple_pads(sdhc1_pads, ARRAY_SIZE(sdhc1_pads));
+ /*
+ * Set the eSDHC1 PER clock to the maximum frequency lower than or equal
+ * to 50 MHz that can be obtained, which requires to use UPLL as the
+ * clock source. This actually gives 48 MHz.
+ */
+ imx_set_perclk(MXC_ESDHC1_CLK, true, 50000000);
esdhc_cfg[0].sdhc_clk = mxc_get_clock(MXC_ESDHC1_CLK);
return fsl_esdhc_initialize(bis, &esdhc_cfg[0]);
}