X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fstaging%2Fflorian.git;a=blobdiff_plain;f=package%2Flibertas%2Fsrc%2Fif_sdio.c;fp=package%2Flibertas%2Fsrc%2Fif_sdio.c;h=5a828c7b4c2e45075e870c1d1a3357b776adced1;hp=85675c5fa4a23bdee21f54e2c7781d5a7a52edcd;hb=3829f7b3f1ce44131a25f34d3c21ee33ab1ba7fa;hpb=8ee2e7a4a3161b73949836276e5fd847c44f1c10 diff --git a/package/libertas/src/if_sdio.c b/package/libertas/src/if_sdio.c index 85675c5fa4..5a828c7b4c 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;