
-----Original Message----- From: Jagan Teki [mailto:jagannadh.teki@gmail.com] Sent: Tuesday, May 09, 2017 7:09 PM To: Peng Fan peng.fan@nxp.com Cc: Stefano Babic sbabic@denx.de; u-boot@lists.denx.de Subject: Re: [U-Boot] [PATCH V2 1/4] mmc: fsl_esdhc: introduce vs18_enable for 1.8V fix I/O
On Mon, May 8, 2017 at 12:32 PM, Peng Fan peng.fan@nxp.com wrote:
When using eMMC with 1.8V I/O, the VSELECT bit need to be set in the USDHC controller when init.
This patch adds a parameter "vs18_enable" in fsl_esdhc_cfg structure and priv data, so each controller can have different settings.
We could not use CONFIG_SYS_FSL_ESDHC_FORCE_VSELECT, it has problem that it will apply to all USDHC controllers and it only set the 1.8V at init phase. So if user does not select to the eMMC device, the voltage on the I/O pins are not correct.
Signed-off-by: Peng Fan peng.fan@nxp.com Cc: Jaehoon Chung jh80.chung@samsung.com Cc: York Sun york.sun@nxp.com Cc: Stefano Babic sbabic@denx.de
V2: None
drivers/mmc/fsl_esdhc.c | 9 +++++++++ include/fsl_esdhc.h | 1 + 2 files changed, 10 insertions(+)
diff --git a/drivers/mmc/fsl_esdhc.c b/drivers/mmc/fsl_esdhc.c index f3c6358..bddfe24 100644 --- a/drivers/mmc/fsl_esdhc.c +++ b/drivers/mmc/fsl_esdhc.c @@ -92,6 +92,7 @@ struct fsl_esdhc {
- @dev: pointer for the device
- @non_removable: 0: removable; 1: non-removable
- @wp_enable: 1: enable checking wp; 0: no check
*/
- @vs18_enable: 1: use 1.8V voltage; 0: use 3.3V
- @cd_gpio: gpio for card detection
- @wp_gpio: gpio for write protection
@@ -104,6 +105,7 @@ struct fsl_esdhc_priv { struct udevice *dev; int non_removable; int wp_enable;
int vs18_enable;
I think this can be achieved with adding "no-1-8-v" property.
We need to support non-dts case.
Regards, Peng.
thanks!
Jagan Teki Free Software Engineer | www.openedev.com U-Boot, Linux | Upstream Maintainer Hyderabad, India.