USB: Use (get|put)_unaligned for accessing wMaxPacketSize
authorTom Rini <trini@ti.com>
Thu, 15 Dec 2011 15:40:51 +0000 (08:40 -0700)
committerRemy Bohmer <linux@bohmer.net>
Fri, 16 Dec 2011 20:37:17 +0000 (21:37 +0100)
commitb2fb47f1873ae812ce33129996a22b11a36d0aa9
tree8afeef2bce3d0ca0aa44ed59956086f6dae2767c
parentddc7e541ae62f29d85b35cdf8d12c7322d353d51
USB: Use (get|put)_unaligned for accessing wMaxPacketSize

In 9792987721c7980453fe6447c3fa6593b44f8458 Stefan describes a usecase
where the previous behavior of leaving wMaxPacketSize be unaligned
caused fatal problems.  The initial fix for this problem was incomplete
however as it showed another cases of non-aligned access that previously
worked implicitly.  This switches to making sure that all access of
wMaxPacketSize are done via (get|put)_unaligned.

In order to maintain a level of readability to the code in some cases
we now use a variable for the value of wMaxPacketSize and in others, a
macro.

Cc: Minkyu Kang <mk7.kang@samsung.com>
Cc: Remy Bohmer <linux@bohmer.net>
OpenRISC:
Tested-by: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
Beagleboard xM, Pandaboard run-tested, s5p_goni build-tested.
Signed-off-by: Tom Rini <trini@ti.com>
common/cmd_usb.c
common/usb.c
drivers/serial/usbtty.c
drivers/usb/gadget/epautoconf.c
drivers/usb/gadget/s3c_udc_otg.c
include/usbdescriptors.h