linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] at76_usb: fix bugs introduced by "Staging: at76_usb: cleanup dma on stack issues"
@ 2009-01-30  4:59 Jason Andryuk
  2009-01-30 14:05 ` John W. Linville
  0 siblings, 1 reply; 3+ messages in thread
From: Jason Andryuk @ 2009-01-30  4:59 UTC (permalink / raw)
  To: linux-wireless@vger.kernel.org

Tracking down the firmware loading problem led to this commit.

$ git bisect bad
0d1d1424330cc1934f2b2742f0cfa2c31e6a250b is first bad commit
commit 0d1d1424330cc1934f2b2742f0cfa2c31e6a250b
Author: Oliver Neukum <oliver@neukum.org>
Date:   Thu Dec 18 13:16:40 2008 +0100

    Staging: at76_usb: cleanup dma on stack issues

    - no DMA on stack
    - cleanup unclear endianness issue

    Signed-off-by: Oliver Neukum <oneukum@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

:040000 040000 c4fee9ea0fef25926229d810d19dc2f89cca9401
8b165a35d16280d2413b2700a6080ef290ca1009 M	drivers

The "no DMA on stack" conversion was incomplete with respect to
updating the arguments passed to usb_control_msg.  The value 40 is
hardcoded as it was prior to conversion.

The driver can now load firmware, but is not fully functional.

Signed-off-by: Jason Andryuk <jandryuk@gmail.com>
--

diff --git a/drivers/staging/at76_usb/at76_usb.c b/drivers/staging/at76_usb/at76
index 185533e..befde9b 100644
--- a/drivers/staging/at76_usb/at76_usb.c
+++ b/drivers/staging/at76_usb/at76_usb.c
@@ -598,7 +598,7 @@ static int at76_get_op_mode(struct usb_device *udev)
                return -ENOMEM;
        ret = usb_control_msg(udev, usb_rcvctrlpipe(udev, 0), 0x33,
                              USB_TYPE_VENDOR | USB_DIR_IN |
-                             USB_RECIP_INTERFACE, 0x01, 0, &op_mode, 1,
+                             USB_RECIP_INTERFACE, 0x01, 0, op_mode, 1,
                              USB_CTRL_GET_TIMEOUT);
        saved = *op_mode;
        kfree(op_mode);
@@ -731,7 +731,7 @@ static inline int at76_get_cmd_status(struct usb_device *ude
        ret = usb_control_msg(udev, usb_rcvctrlpipe(udev, 0), 0x22,
                              USB_TYPE_VENDOR | USB_DIR_IN |
                              USB_RECIP_INTERFACE, cmd, 0, stat_buf,
-                             sizeof(stat_buf), USB_CTRL_GET_TIMEOUT);
+                             40, USB_CTRL_GET_TIMEOUT);
        if (ret >= 0)
                ret = stat_buf[5];
        kfree(stat_buf);

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2009-02-04  1:28 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-01-30  4:59 [PATCH] at76_usb: fix bugs introduced by "Staging: at76_usb: cleanup dma on stack issues" Jason Andryuk
2009-01-30 14:05 ` John W. Linville
2009-02-04  1:26   ` patch staging-at76_usb-fix-bugs-introduced-by-staging-at76_usb-cleanup-dma-on-stack-issues.patch added to gregkh-2.6 tree gregkh

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).