
On 03/24/2016 11:26 PM, Peng Fan wrote:
Support Driver Model for fsl esdhc driver.
- Introduce a new structure struct fsl_esdhc_priv
- Refactor fsl_esdhc_initialize which is originally used by board code.
- Introduce fsl_esdhc_init to be common usage for DM and non-DM
- Introduce fsl_esdhc_cfg_to_priv to build the bridge for non-DM part.
- The original API for board code is still there, but we use 'fsl_esdhc_cfg_to_priv' and 'fsl_esdhc_init' to serve it.
- All the functions are changed to use 'struct fsl_esdhc_priv', except fsl_esdhc_initialize.
- Since clk driver is not implemented, use mxc_get_clock to geth the clk and fill 'priv->sdhc_clk'.
Has been tested on i.MX6UL 14X14 EVK board: " =>dm tree .... simple_bus [ + ] | `-- aips-bus@02100000 mmc [ + ] | |-- usdhc@02190000 mmc [ + ] | |-- usdhc@02194000 .... => mmc list FSL_SDHC: 0 (SD) FSL_SDHC: 1 (SD) "
Signed-off-by: Peng Fan van.freenix@gmail.com Cc: York Sun york.sun@nxp.com Cc: Yangbo Lu yangbo.lu@nxp.com Cc: Hector Palacios hector.palacios@digi.com Cc: Eric Nelson eric@nelint.com Cc: Stefano Babic sbabic@denx.de Cc: Fabio Estevam fabio.estevam@nxp.com Cc: Pantelis Antoniou panto@antoniou-consulting.com Cc: Simon Glass sjg@chromium.org
V3: Fix build error reported by York for PPC.
V2: restructure the V1 patch. Introduce fsl_esdhc_priv structure. Introduce code to handle cd-gpios and non-removable.
drivers/mmc/fsl_esdhc.c | 253 ++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 213 insertions(+), 40 deletions(-)
Applied to u-boot-fsl-qoriq master. Awaiting upstream. Thanks.
York