diff options
author | Masahiro Yamada <yamada.masahiro@socionext.com> | 2017-01-13 11:51:51 +0900 |
---|---|---|
committer | Jaehoon Chung <jh80.chung@samsung.com> | 2017-01-13 12:17:03 +0900 |
commit | bf9c4d146467297771a0f60bdb897be38671dba7 (patch) | |
tree | bf6ae953eda31084ad00c89894bc45a2650effff /include | |
parent | 4386feb73da7946fc79b55c4fa41c6dd66dcb2e2 (diff) | |
download | u-boot-imx-bf9c4d146467297771a0f60bdb897be38671dba7.zip u-boot-imx-bf9c4d146467297771a0f60bdb897be38671dba7.tar.gz u-boot-imx-bf9c4d146467297771a0f60bdb897be38671dba7.tar.bz2 |
mmc: sdhci: fix NULL pointer access when host->ops is not set
Until recently, sdhci_ops was used only for overriding IO accessors.
(so, host->ops was not set by any drivers except bcm2835_sdhci.c)
Now, we have more optional callbacks, get_cd, set_control_reg, and
set_clock. However, the code
if (host->ops->get_cd)
host->ops->get_cd(host);
... expects host->ops is set for all drivers.
Commit 5e96217f0434 ("mmc: pic32_sdhci: move the code to
pic32_sdhci.c") and commit 62226b68631b ("mmc: sdhci: move the
callback function into sdhci_ops") added sdhci_ops for pic32_sdhci.c
and s5p_sdhci.c, but the other drivers still do not (need not) set
host->ops because all callbacks in sdhci_ops are optional.
host->ops must be checked to avoid the system crash caused by NULL
pointer access.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions