05 May, 2015
1 commit
-
High capacity support is not a host capability, but a device capability
that is queried via the OCR. The flag in the operating conditions
request argument can just be set unconditionally. This matches the Linux
implementation.[panto] Hand merged and renumbering MMC_MODE_DDR_52MHz.
Signed-off-by: Rob Herring
Signed-off-by: Pantelis Antoniou
Cc: Pantelis Antoniou
05 Dec, 2014
3 commits
-
Renesas R-Mobile/R-Car ARM SoC of MMC has the same IP that are supported by
sh_mmcif. This adds support R-Mobile/R-Car ARM SoC with the setting of the
clock support.Signed-off-by: Nobuhiro Iwamatsu
Signed-off-by: Nobuhiro Iwamatsu -
Maximum value and the minimum value of clock for sh_mmcif instead by
base of MMC clock. This removes fixed clock, make the changes to be calculated
according to environment.Signed-off-by: Nobuhiro Iwamatsu
Signed-off-by: Nobuhiro Iwamatsu -
Use DIV_ROUND_UP and fls to simplify the code.
Signed-off-by: Nobuhiro Iwamatsu
Signed-off-by: Nobuhiro Iwamatsu
02 Apr, 2014
2 commits
-
Signed-off-by: Nobuhiro Iwamatsu
Reported-by: Masahiro Yamada
Acked-by: Pantelis Antoniou -
BY commit "mmc: Split mmc struct, rework mmc initialization (v2)",
sh_mmcif has compile error. This fixes compile error.Signed-off-by: Nobuhiro Iwamatsu
CC: Pantelis Antoniou
Reported-by: Masahiro Yamada
Acked-by: Pantelis Antoniou
24 Mar, 2014
3 commits
-
The way that struct mmc was implemented was a bit of a mess;
configuration and internal state all jumbled up in a single structure.On top of that the way initialization is done with mmc_register leads
to a lot of duplicated code in drivers.Typically the initialization got something like this in every driver.
struct mmc *mmc = malloc(sizeof(struct mmc));
memset(mmc, 0, sizeof(struct mmc);
/* fill in fields of mmc struct */
/* store private data pointer */
mmc_register(mmc);By using the new mmc_create call one just passes an mmc config struct
and an optional private data pointer like this:struct mmc = mmc_create(&cfg, priv);
All in tree drivers have been updated to the new form, and expect
mmc_register to go away before long.Changes since v1:
* Use calloc instead of manually calling memset.
* Mark mmc_register as deprecated.Signed-off-by: Pantelis Antoniou
-
Using an array is pointless; even more pointless (and scary) is using
sprintf to fill it without a format string.Signed-off-by: Pantelis Antoniou
-
Remove the in-structure ops and put them in mmc_ops with
a constant pointer to it.This makes the mmc structure smaller as well as conserving
code space (in theory).All in-tree drivers are converted as well; this is done in a
single patch in order to not break git bisect.Changes since V1:
Fix compilation b0rked issue on omap platforms where OMAP_GPIO was
not set.Signed-off-by: Pantelis Antoniou
09 Mar, 2013
1 commit
-
Add generic mmc write protection functionality.
Signed-off-by: Nikita Kiryanov
Signed-off-by: Igor Grinberg
06 Sep, 2012
1 commit
-
The controller can control high capacity cards. So, the patch adds
the flag. If the flag is not set, "mmcinfo" will fail when a high
capacity card is used.Signed-off-by: Yoshihiro Shimoda
Signed-off-by: Andy Fleming
09 Jan, 2012
1 commit
-
Check for card detect each time an MMC/SD device is initialized. If card
detection is not implemented, this code behaves as before and continues
assuming a card is present. If no card is detected, has_init is reset
for the MMC/SD device (to force initialization next time) and an error
is returned.Signed-off-by: Thierry Reding
Tested-by: Jason Liu
16 Jul, 2011
1 commit
-
Some Renesas SuperH have MMCIF module. This driver supports it.
Signed-off-by: Yoshihiro Shimoda
Acked-by: Andy Fleming