diff options
author | Albert ARIBAUD <albert.u.boot@aribaud.net> | 2013-04-04 13:49:32 +0400 |
---|---|---|
committer | Albert ARIBAUD <albert.u.boot@aribaud.net> | 2013-04-04 13:49:32 +0400 |
commit | be08abc2429c2e9cbce3d0abc1d315171d683520 (patch) | |
tree | 9c3f8c892cf8918c9a5b4cd0b9b29558b0aff0e7 /drivers | |
parent | 5eaa215607c8668bfa6a7183407eba8fec63d648 (diff) | |
parent | d36b39bf0d1dbe4ef03f7fc1f20b2e52eb90acf5 (diff) | |
download | u-boot-be08abc2429c2e9cbce3d0abc1d315171d683520.tar.xz |
Merge branch 'u-boot-imx/master' into 'u-boot-arm/master'
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/mmc/fsl_esdhc.c | 7 | ||||
-rw-r--r-- | drivers/spi/mxc_spi.c | 8 |
2 files changed, 11 insertions, 4 deletions
diff --git a/drivers/mmc/fsl_esdhc.c b/drivers/mmc/fsl_esdhc.c index 54b5363169..35f879ea6e 100644 --- a/drivers/mmc/fsl_esdhc.c +++ b/drivers/mmc/fsl_esdhc.c @@ -580,6 +580,13 @@ int fsl_esdhc_initialize(bd_t *bis, struct fsl_esdhc_cfg *cfg) mmc->host_caps = MMC_MODE_4BIT | MMC_MODE_8BIT | MMC_MODE_HC; + if (cfg->max_bus_width > 0) { + if (cfg->max_bus_width < 8) + mmc->host_caps &= ~MMC_MODE_8BIT; + if (cfg->max_bus_width < 4) + mmc->host_caps &= ~MMC_MODE_4BIT; + } + if (caps & ESDHC_HOSTCAPBLT_HSS) mmc->host_caps |= MMC_MODE_HS_52MHz | MMC_MODE_HS; diff --git a/drivers/spi/mxc_spi.c b/drivers/spi/mxc_spi.c index d792d8d493..cb48019a42 100644 --- a/drivers/spi/mxc_spi.c +++ b/drivers/spi/mxc_spi.c @@ -137,11 +137,11 @@ static s32 spi_cfg_mxc(struct mxc_spi_slave *mxcs, unsigned int cs, return -1; } - reg_ctrl = reg_read(®s->ctrl); - /* Reset spi */ - reg_write(®s->ctrl, (reg_ctrl & ~MXC_CSPICTRL_EN)); - reg_write(®s->ctrl, (reg_ctrl | MXC_CSPICTRL_EN)); + reg_write(®s->ctrl, 0); + reg_write(®s->ctrl, MXC_CSPICTRL_EN); + + reg_ctrl = reg_read(®s->ctrl); /* * The following computation is taken directly from Freescale's code. |