svn commit: r254432 - head/sys/dev/mmc
Ian Lepore
ian at FreeBSD.org
Sat Aug 17 00:19:28 UTC 2013
Author: ian
Date: Sat Aug 17 00:19:27 2013
New Revision: 254432
URL: http://svnweb.freebsd.org/changeset/base/254432
Log:
Consistently init all mmc request, command, and data structures to zero
before using them.
Modified:
head/sys/dev/mmc/mmc.c
head/sys/dev/mmc/mmcsd.c
Modified: head/sys/dev/mmc/mmc.c
==============================================================================
--- head/sys/dev/mmc/mmc.c Fri Aug 16 23:05:34 2013 (r254431)
+++ head/sys/dev/mmc/mmc.c Sat Aug 17 00:19:27 2013 (r254432)
@@ -436,6 +436,7 @@ mmc_wait_for_app_cmd(struct mmc_softc *s
int err;
do {
+ memset(&appcmd, 0, sizeof(appcmd));
appcmd.opcode = MMC_APP_CMD;
appcmd.arg = rca << 16;
appcmd.flags = MMC_RSP_R1 | MMC_CMD_AC;
@@ -627,6 +628,7 @@ mmc_switch(struct mmc_softc *sc, uint8_t
struct mmc_command cmd;
int err;
+ memset(&cmd, 0, sizeof(cmd));
cmd.opcode = MMC_SWITCH_FUNC;
cmd.arg = (MMC_SWITCH_FUNC_WR << 24) |
(index << 16) |
@@ -646,8 +648,8 @@ mmc_sd_switch(struct mmc_softc *sc, uint
struct mmc_command cmd;
struct mmc_data data;
- memset(&cmd, 0, sizeof(struct mmc_command));
- memset(&data, 0, sizeof(struct mmc_data));
+ memset(&cmd, 0, sizeof(cmd));
+ memset(&data, 0, sizeof(data));
memset(res, 0, 64);
cmd.opcode = SD_SWITCH_FUNC;
@@ -674,14 +676,14 @@ mmc_set_card_bus_width(struct mmc_softc
uint8_t value;
if (mmcbr_get_mode(sc->dev) == mode_sd) {
- memset(&cmd, 0, sizeof(struct mmc_command));
+ memset(&cmd, 0, sizeof(cmd));
cmd.opcode = ACMD_SET_CLR_CARD_DETECT;
cmd.flags = MMC_RSP_R1 | MMC_CMD_AC;
cmd.arg = SD_CLR_CARD_DETECT;
err = mmc_wait_for_app_cmd(sc, rca, &cmd, CMD_RETRIES);
if (err != 0)
return (err);
- memset(&cmd, 0, sizeof(struct mmc_command));
+ memset(&cmd, 0, sizeof(cmd));
cmd.opcode = ACMD_SET_BUS_WIDTH;
cmd.flags = MMC_RSP_R1 | MMC_CMD_AC;
switch (width) {
@@ -757,6 +759,8 @@ mmc_test_bus_width(struct mmc_softc *sc)
mmcbr_set_bus_width(sc->dev, bus_width_8);
mmcbr_update_ios(sc->dev);
+ memset(&cmd, 0, sizeof(cmd));
+ memset(&data, 0, sizeof(data));
cmd.opcode = MMC_BUSTEST_W;
cmd.arg = 0;
cmd.flags = MMC_RSP_R1 | MMC_CMD_ADTC;
@@ -767,6 +771,8 @@ mmc_test_bus_width(struct mmc_softc *sc)
data.flags = MMC_DATA_WRITE;
mmc_wait_for_cmd(sc, &cmd, 0);
+ memset(&cmd, 0, sizeof(cmd));
+ memset(&data, 0, sizeof(data));
cmd.opcode = MMC_BUSTEST_R;
cmd.arg = 0;
cmd.flags = MMC_RSP_R1 | MMC_CMD_ADTC;
@@ -788,6 +794,8 @@ mmc_test_bus_width(struct mmc_softc *sc)
mmcbr_set_bus_width(sc->dev, bus_width_4);
mmcbr_update_ios(sc->dev);
+ memset(&cmd, 0, sizeof(cmd));
+ memset(&data, 0, sizeof(data));
cmd.opcode = MMC_BUSTEST_W;
cmd.arg = 0;
cmd.flags = MMC_RSP_R1 | MMC_CMD_ADTC;
@@ -798,6 +806,8 @@ mmc_test_bus_width(struct mmc_softc *sc)
data.flags = MMC_DATA_WRITE;
mmc_wait_for_cmd(sc, &cmd, 0);
+ memset(&cmd, 0, sizeof(cmd));
+ memset(&data, 0, sizeof(data));
cmd.opcode = MMC_BUSTEST_R;
cmd.arg = 0;
cmd.flags = MMC_RSP_R1 | MMC_CMD_ADTC;
@@ -1059,6 +1069,7 @@ mmc_all_send_cid(struct mmc_softc *sc, u
struct mmc_command cmd;
int err;
+ memset(&cmd, 0, sizeof(cmd));
cmd.opcode = MMC_ALL_SEND_CID;
cmd.arg = 0;
cmd.flags = MMC_RSP_R2 | MMC_CMD_BCR;
@@ -1074,6 +1085,7 @@ mmc_send_csd(struct mmc_softc *sc, uint1
struct mmc_command cmd;
int err;
+ memset(&cmd, 0, sizeof(cmd));
cmd.opcode = MMC_SEND_CSD;
cmd.arg = rca << 16;
cmd.flags = MMC_RSP_R2 | MMC_CMD_BCR;
@@ -1090,8 +1102,8 @@ mmc_app_send_scr(struct mmc_softc *sc, u
struct mmc_command cmd;
struct mmc_data data;
- memset(&cmd, 0, sizeof(struct mmc_command));
- memset(&data, 0, sizeof(struct mmc_data));
+ memset(&cmd, 0, sizeof(cmd));
+ memset(&data, 0, sizeof(data));
memset(rawscr, 0, 8);
cmd.opcode = ACMD_SEND_SCR;
@@ -1116,8 +1128,8 @@ mmc_send_ext_csd(struct mmc_softc *sc, u
struct mmc_command cmd;
struct mmc_data data;
- memset(&cmd, 0, sizeof(struct mmc_command));
- memset(&data, 0, sizeof(struct mmc_data));
+ memset(&cmd, 0, sizeof(cmd));
+ memset(&data, 0, sizeof(data));
memset(rawextcsd, 0, 512);
cmd.opcode = MMC_SEND_EXT_CSD;
@@ -1140,8 +1152,8 @@ mmc_app_sd_status(struct mmc_softc *sc,
struct mmc_command cmd;
struct mmc_data data;
- memset(&cmd, 0, sizeof(struct mmc_command));
- memset(&data, 0, sizeof(struct mmc_data));
+ memset(&cmd, 0, sizeof(cmd));
+ memset(&data, 0, sizeof(data));
memset(rawsdstatus, 0, 64);
cmd.opcode = ACMD_SD_STATUS;
@@ -1165,6 +1177,7 @@ mmc_set_relative_addr(struct mmc_softc *
struct mmc_command cmd;
int err;
+ memset(&cmd, 0, sizeof(cmd));
cmd.opcode = MMC_SET_RELATIVE_ADDR;
cmd.arg = resp << 16;
cmd.flags = MMC_RSP_R6 | MMC_CMD_BCR;
@@ -1179,6 +1192,7 @@ mmc_send_relative_addr(struct mmc_softc
struct mmc_command cmd;
int err;
+ memset(&cmd, 0, sizeof(cmd));
cmd.opcode = SD_SEND_RELATIVE_ADDR;
cmd.arg = 0;
cmd.flags = MMC_RSP_R6 | MMC_CMD_BCR;
@@ -1194,6 +1208,7 @@ mmc_send_status(struct mmc_softc *sc, ui
struct mmc_command cmd;
int err;
+ memset(&cmd, 0, sizeof(cmd));
cmd.opcode = MMC_SEND_STATUS;
cmd.arg = rca << 16;
cmd.flags = MMC_RSP_R1 | MMC_CMD_AC;
@@ -1209,6 +1224,7 @@ mmc_set_blocklen(struct mmc_softc *sc, u
struct mmc_command cmd;
int err;
+ memset(&cmd, 0, sizeof(cmd));
cmd.opcode = MMC_SET_BLOCKLEN;
cmd.arg = len;
cmd.flags = MMC_RSP_R1 | MMC_CMD_AC;
Modified: head/sys/dev/mmc/mmcsd.c
==============================================================================
--- head/sys/dev/mmc/mmcsd.c Fri Aug 16 23:05:34 2013 (r254431)
+++ head/sys/dev/mmc/mmcsd.c Sat Aug 17 00:19:27 2013 (r254432)
@@ -328,6 +328,7 @@ mmcsd_rw(struct mmcsd_softc *sc, struct
memset(&req, 0, sizeof(req));
memset(&cmd, 0, sizeof(cmd));
memset(&stop, 0, sizeof(stop));
+ memset(&data, 0, sizeof(data));
cmd.mrq = &req;
req.cmd = &cmd;
cmd.data = &data;
More information about the svn-src-all
mailing list