X-Git-Url: http://git.rohieb.name/openwrt.git/blobdiff_plain/7a4bdab85080df3e4a39ed3cf6d7e5ee325a26d2..2168f4032ed2c60876b95faf6d0f3aec99860886:/package/libertas/src/if_sdio.c diff --git a/package/libertas/src/if_sdio.c b/package/libertas/src/if_sdio.c index 85675c5fa..5a828c7b4 100644 --- a/package/libertas/src/if_sdio.c +++ b/package/libertas/src/if_sdio.c @@ -19,7 +19,7 @@ * current block size. * * As SDIO is still new to the kernel, it is unfortunately common with - * bugs in the host controllers related to that. One such bug is that + * bugs in the host controllers related to that. One such bug is that * controllers cannot do transfers that aren't a multiple of 4 bytes. * If you don't have time to fix the host controller driver, you can * work around the problem by modifying if_sdio_host_to_card() and @@ -136,12 +136,6 @@ static int if_sdio_handle_cmd(struct if_sdio_card *card, spin_lock_irqsave(&card->priv->driver_lock, flags); - if (!card->priv->cur_cmd) { - lbs_deb_sdio("discarding spurious response\n"); - ret = 0; - goto out; - } - if (size > LBS_CMD_BUFFER_SIZE) { lbs_deb_sdio("response packet too large (%d bytes)\n", (int)size); @@ -149,7 +143,7 @@ static int if_sdio_handle_cmd(struct if_sdio_card *card, goto out; } - memcpy(card->priv->cur_cmd->cmdbuf, buffer, size); + memcpy(card->priv->upld_buf, buffer, size); card->priv->upld_len = size; card->int_cause |= MRVDRV_CMD_UPLD_RDY;