[RFC 0/2] dw_mmc: add multislot support

Jaehoon Chung jh80.chung at samsung.com
Thu Apr 26 03:30:02 PDT 2018


Hi,

On 04/17/2018 09:11 PM, Eugeniy Paltsev wrote:
> This series consists of two patches:
> 1. revert removal of previously existed "pseudo-multislot" support.
>  * Revert "mmc: dw_mmc: remove the deprecated "num-slots""
>  * Revert "mmc: dw_mmc: fix the wrong condition check of getting num-slots from DT"
>  * Revert "mmc: dw_mmc: remove the unnecessary slot variable"
>  * Revert "mmc: dw_mmc: update kernel-doc comments for dw_mci"
>  * Revert "mmc: dw_mmc: use the 'slot' instead of 'cur_slot'"
>  * Revert "mmc: dw_mmc: remove the 'id' arguments about functions relevant to slot"
>  * Revert "mmc: dw_mmc: change the array of slots"
>  * Revert "mmc: dw_mmc: remove the loop about finding slots"
>  * Revert "mmc: dw_mmc: deprecated the "num-slots" property"
> 
> 2. Add missing stuff to support multislot mode in DesignWare MMC driver.
>  * Add missing slot switch to __dw_mci_start_request() function.
>  * Refactor set_ios function:
>    a) Calculate common clock which is
>       suitable for all slots instead of directly use clock value
>       provided by mmc core. We calculate common clock as the minimum
>       among each used slot clocks. This clock is calculated in
>       dw_mci_calc_common_clock() function which is called
>       from set_ios()
>    b) Disable clock only if no other slots are ON.
>    c) Setup clock directly in set_ios() only if no other slots
>       are ON. Otherwise adjust clock in __dw_mci_start_request()
>       function before slot switch.
>    d) Move timings and bus_width setup to separate funcions.
>  * Use timing field in each slot structure instead of common field in
>    host structure.
>  * Add locks to serialize access to registers.

Sorry for late. :(
Well, I will read the other comments..and reply soon. 

Best Regards,
Jaehoon Chung

> 
> NOTE: this patch is based off of v4.17-rc1
> 
> NOTE: as of today I tested this changes (in singleslot and multislot
>    modes) only on Synopsys HSDK board. But I will get ODROID-XU4 board
>    (with Exynos5422 which has DW MMC controller) the next week
>    so I will test it on this board too to catch any regressions.
> 
> Eugeniy Paltsev (2):
>   dw_mmc: revert removal multislot support
>   dw_mmc: add multislot support
> 
>  .../devicetree/bindings/mmc/synopsys-dw-mshc.txt   |   5 +
>  drivers/mmc/host/dw_mmc-exynos.c                   |   4 +-
>  drivers/mmc/host/dw_mmc-pci.c                      |   1 +
>  drivers/mmc/host/dw_mmc.c                          | 486 +++++++++++++++------
>  drivers/mmc/host/dw_mmc.h                          |  35 +-
>  5 files changed, 387 insertions(+), 144 deletions(-)
> 




More information about the linux-snps-arc mailing list