| #
b673f29a |
| 15-May-2017 |
Ziyuan Xu <xzy.xu@rock-chips.com> |
mmc: add support for HS400 mode of eMMC5.0
This patch adds HS400 mode support for eMMC5.0 device. HS400 mode is high speed DDR interface timing from HS200. Clock frequency is up to 200MHz and only 8
mmc: add support for HS400 mode of eMMC5.0
This patch adds HS400 mode support for eMMC5.0 device. HS400 mode is high speed DDR interface timing from HS200. Clock frequency is up to 200MHz and only 8-bit bus width is supported. In addition, tuning process of HS200 is required to synchronize the command response on the CMD line because CMD input timing for HS400 mode is the same as HS200 mode.
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
show more ...
|
| #
5545757f |
| 15-May-2017 |
Ziyuan Xu <xzy.xu@rock-chips.com> |
mmc: add DDR52 support for eMMC card
4.41+ eMMC card devices can run at 52MHz on DDR 8-bit mode, it can improve write/read performance. Host driver can set MMC_MODE_DDR_52Mhz to enable this feature.
mmc: add DDR52 support for eMMC card
4.41+ eMMC card devices can run at 52MHz on DDR 8-bit mode, it can improve write/read performance. Host driver can set MMC_MODE_DDR_52Mhz to enable this feature.
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
show more ...
|
| #
3e3ff0ac |
| 15-May-2017 |
Ziyuan Xu <xzy.xu@rock-chips.com> |
mmc: remove tran_speed from struct mmc
The clock element is updated by mmc_set_clock every time, it denotes the current transfer speed.
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
|
| #
caa21a21 |
| 15-May-2017 |
Ziyuan Xu <xzy.xu@rock-chips.com> |
mmc: rework ddr mode judgement with timing
Since the card device is set the proper timing after speed mode switch is completed, host driver can get ddr_mode from timing parameter. So drop the antiqu
mmc: rework ddr mode judgement with timing
Since the card device is set the proper timing after speed mode switch is completed, host driver can get ddr_mode from timing parameter. So drop the antiquated ddr_mode.
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
show more ...
|
| #
49dba033 |
| 15-May-2017 |
Ziyuan Xu <xzy.xu@rock-chips.com> |
mmc: add support for HS200 mode of eMMC4.5
Add the support of the HS200 mode for eMMC 4.5 devices. The eMMC 4.5 device has support up to 200MHz bus speed, it can speed up the boot speed.
We can ena
mmc: add support for HS200 mode of eMMC4.5
Add the support of the HS200 mode for eMMC 4.5 devices. The eMMC 4.5 device has support up to 200MHz bus speed, it can speed up the boot speed.
We can enable this feature via MMC_MODE_HS200 if the host controller has the ability to support HS200 timing. Also the tuning feature required when the HS200 mode is selected.
By the way, mmc card can only switch to high speed mode in SPL stage.
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
show more ...
|
| #
55e5defd |
| 15-May-2017 |
Ziyuan Xu <xzy.xu@rock-chips.com> |
mmc: rework mmc_switch for non-send_status scenario
Per JEDEC spec, it is not recommended to use cmd13 to get card status after speed mode switch. CMD13 can't be guaranteed due to the asynchronous o
mmc: rework mmc_switch for non-send_status scenario
Per JEDEC spec, it is not recommended to use cmd13 to get card status after speed mode switch. CMD13 can't be guaranteed due to the asynchronous operation.
Besieds, if the host controller supports busy detection in HW, we use it instead of cmd13.
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
show more ...
|
| #
ad77484a |
| 15-May-2017 |
Ziyuan Xu <xzy.xu@rock-chips.com> |
mmc: add card_busy to query card status
Card devices get into busy status since host request speed mode switch, if host controller is able to query whether the device is busy, try it instead of send
mmc: add card_busy to query card status
Card devices get into busy status since host request speed mode switch, if host controller is able to query whether the device is busy, try it instead of sending cmd13.
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
show more ...
|
| #
e61cd3d7 |
| 15-May-2017 |
Ziyuan Xu <xzy.xu@rock-chips.com> |
mmc: rework high speed mode selection
Select timing parameter for the host since HS mode switch is completed.
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
|
| #
81db2d36 |
| 15-May-2017 |
Ziyuan Xu <xzy.xu@rock-chips.com> |
mmc: add set_timing entry for timing selection
Some controller should do some configuration according to the selected timing.
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
|
| #
227f658e |
| 15-May-2017 |
Ziyuan Xu <xzy.xu@rock-chips.com> |
mmc: select the available type from host_caps and card_caps
The original implementation select HS timing by default, add available type selection for higher speed mode compatibility, such as hs200,
mmc: select the available type from host_caps and card_caps
The original implementation select HS timing by default, add available type selection for higher speed mode compatibility, such as hs200, hs400, hs400es.
By the way, we assume that card run at 1.8V or 1.2V I/O when its timing is ddr52/hs200/hs400(es).
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
show more ...
|
| #
1fdafb2e |
| 18-Aug-2017 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' of git://git.denx.de/u-boot-mmc
|
| #
e7881d85 |
| 29-Jul-2017 |
Simon Glass <sjg@chromium.org> |
dm: mmc: Drop CONFIG_DM_MMC_OPS
All boards which use DM_MMC have now been converted to use DM_MMC_OPS. Drop the option and good riddance.
Signed-off-by: Simon Glass <sjg@chromium.org>
|
| #
5c6631be |
| 01-Aug-2017 |
Tom Rini <trini@konsulko.com> |
Merge git://git.denx.de/u-boot-mmc
|
| #
c4d660d4 |
| 04-Jul-2017 |
Simon Glass <sjg@chromium.org> |
dm: mmc: Allow disabling driver model in SPL
At present if U-Boot proper uses driver model for MMC, then SPL has to also. While this is desirable, it places a significant barrier to moving to driver
dm: mmc: Allow disabling driver model in SPL
At present if U-Boot proper uses driver model for MMC, then SPL has to also. While this is desirable, it places a significant barrier to moving to driver model in some cases. For example, with a space-constrained SPL it may be necessary to enable CONFIG_SPL_OF_PLATDATA which involves adjusting some drivers.
Add new SPL versions of the options for DM_MMC, DM_MMC_OPS and BLK. By default these follow their non-SPL versions, but this can be changed by boards which need it.
Signed-off-by: Simon Glass <sjg@chromium.org>
show more ...
|
| #
05cbeb7c |
| 23-Apr-2017 |
Simon Glass <sjg@chromium.org> |
dm: mmc: Don't call board_mmc_power_init() with driver model
We should not call out to board code from drivers. With driver model, mmc_power_init() already has code to use a named regulator, but the
dm: mmc: Don't call board_mmc_power_init() with driver model
We should not call out to board code from drivers. With driver model, mmc_power_init() already has code to use a named regulator, but the legacy code path remains. Update the code to make this clear.
Signed-off-by: Simon Glass <sjg@chromium.org>
show more ...
|
| #
6f730459 |
| 12-Mar-2017 |
Xu Ziyuan <xzy.xu@rock-chips.com> |
mmc: drop unnecessary send_status request
It's redundant to send cmd13 after cmd9 whose response is not R1b. The card devices will not be busy w/ cmd9.
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.c
mmc: drop unnecessary send_status request
It's redundant to send cmd13 after cmd9 whose response is not R1b. The card devices will not be busy w/ cmd9.
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
show more ...
|
| #
5877d8f3 |
| 21-Mar-2017 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' of git://git.denx.de/u-boot-mmc
|
| #
166c2b8f |
| 12-Mar-2017 |
Xu Ziyuan <xzy.xu@rock-chips.com> |
mmc: drop unnecessary send_status request
It's redundant to send cmd13 after cmd9 whose response is not R1b. The card devices will not be busy w/ cmd9.
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.c
mmc: drop unnecessary send_status request
It's redundant to send cmd13 after cmd9 whose response is not R1b. The card devices will not be busy w/ cmd9.
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
show more ...
|
| #
919b4858 |
| 10-Jan-2017 |
Jagan Teki <jagan@amarulasolutions.com> |
mmc: Print error code for mmc_complete_init failure
Print the error code for non-zero (failure case) instead of making debug statement without any condition, this usually gives proper clue in failur
mmc: Print error code for mmc_complete_init failure
Print the error code for non-zero (failure case) instead of making debug statement without any condition, this usually gives proper clue in failure condition.
Log:
show more ...
|
| #
b5b838f1 |
| 01-Dec-2016 |
Marek Vasut <marex@denx.de> |
mmc: Tinification of the mmc code
Add new configuration option CONFIG_MMC_TINY which strips away all memory allocation within the MMC code and code for handling multiple cards. This allows extremely
mmc: Tinification of the mmc code
Add new configuration option CONFIG_MMC_TINY which strips away all memory allocation within the MMC code and code for handling multiple cards. This allows extremely space-constrained SPL code use the MMC framework.
Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Marek Vasut <marex@denx.de> Cc: Tom Rini <trini@konsulko.com> Cc: Jaehoon Chung <jh80.chung@samsung.com>
show more ...
|
| #
ce9eca94 |
| 01-Dec-2016 |
Marek Vasut <marex@denx.de> |
mmc: Fix warning if debug() is not used
If debug() is not used, then the whole content of debug(...) will be removed by the preprocessor, which will result in the following warning. This patch adds
mmc: Fix warning if debug() is not used
If debug() is not used, then the whole content of debug(...) will be removed by the preprocessor, which will result in the following warning. This patch adds __maybe_unused annotation to fix this.
drivers/mmc/mmc.c: In function ‘mmc_init’: drivers/mmc/mmc.c:1685:11: warning: variable ‘start’ set but not used [-Wunused-but-set-variable] unsigned start;
Reviewed-by: Tom Rini <trini@konsulko.com> Signed-off-by: Marek Vasut <marex@denx.de> Cc: Pantelis Antoniou <panto@antoniou-consulting.com> Cc: Jaehoon Chung <jh80.chung@samsung.com>
show more ...
|
| #
cd3d4880 |
| 25-Nov-2016 |
Tomas Melin <tomas.melin@vaisala.com> |
mmc: add bkops-enable command
Add new command that provides possibility to enable the background operations handshake functionality (BKOPS_EN, EXT_CSD byte [163]) on eMMC devices.
This is an option
mmc: add bkops-enable command
Add new command that provides possibility to enable the background operations handshake functionality (BKOPS_EN, EXT_CSD byte [163]) on eMMC devices.
This is an optional feature of eMMCs, the setting is write-once. The command must be explicitly taken into use with CONFIG_CMD_BKOPS_ENABLE.
Signed-off-by: Tomas Melin <tomas.melin@vaisala.com>
show more ...
|
| #
2d221489 |
| 29-Nov-2016 |
Stefano Babic <sbabic@denx.de> |
Merge branch 'master' of git://git.denx.de/u-boot
Signed-off-by: Stefano Babic <sbabic@denx.de>
|
| #
c2cbd164 |
| 17-Nov-2016 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' of http://git.denx.de/u-boot-mmc
|
| #
a9003dc6 |
| 04-Nov-2016 |
Maxime Ripard <maxime.ripard@free-electrons.com> |
mmc: Retry the switch command
Some eMMC will fail at the first switch, but would succeed in a subsequent one.
Make sure we try several times to cover those cases. The number of retries (and the beh
mmc: Retry the switch command
Some eMMC will fail at the first switch, but would succeed in a subsequent one.
Make sure we try several times to cover those cases. The number of retries (and the behaviour) is currently what is being used in Linux.
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Reviewed-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: Tom Rini <trini@konsulko.com>
show more ...
|