From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sergei Shtylyov Date: Wed, 26 May 2010 21:26:43 +0400 Subject: [U-Boot] [PATCH] USB: fix create_pipe() Message-ID: <201005262126.43781.sshtylyov@ru.mvista.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de create_pipe() can give wrong result if an expression is passed as the 'endpoint' argument -- due to missing parentheses. Thanks to Martin Mueller for finding the bug and providing the patch. Signed-off-by: Sergei Shtylyov --- include/usb.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) Index: u-boot/include/usb.h =================================================================== --- u-boot.orig/include/usb.h +++ u-boot/include/usb.h @@ -259,7 +259,7 @@ int usb_set_interface(struct usb_device */ /* Create various pipes... */ #define create_pipe(dev,endpoint) \ - (((dev)->devnum << 8) | (endpoint << 15) | \ + (((dev)->devnum << 8) | ((endpoint) << 15) | \ ((dev)->speed << 26) | (dev)->maxpacketsize) #define default_pipe(dev) ((dev)->speed << 26)