Skip to contentSkip to conversation

usb: musb: Fix format specifier warning

PATCH In review Emil Goode 2 participants 2 messages May 31, 2013

Subsystems (3)
lore
Share & tools
lore

Emil Goode

author
#0 lore raw

PATCH v2 1/1 usb: musb: Fix format specifier warning

This patch fixes a format specifier warning. dma_addr_t can be either u32 or u64 so we should cast to the largest type and change the format specifier to %llx.
The addition of urb->transfer_dma and urb->actual_length is also done a few lines below. I have moved this code up and pass the variable buf to dev_dbg.

Sparse output:
drivers/usb/musb/musb_host.c:1761:4: warning:
format ‘%x’ expects argument of type ‘unsigned int’, but argument 6 has type ‘dma_addr_t’ [-Wformat]

---
v2: Added missing braces according to Doc/CodingStyle

 drivers/usb/musb/musb_host.c |   11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)
drivers/usb/musb/musb_host.c +5 -6
index 094cf80..45c4e8b 100644
@@ -1756,11 +1756,11 @@ void musb_host_rx(struct musb *musb, u8 epnum)
 			dma_addr_t		buf;
 
 			rx_count = musb_readw(epio, MUSB_RXCOUNT);
+			buf = urb->transfer_dma + urb->actual_length;
 
-			dev_dbg(musb->controller, "RX%d count %d, buffer 0x%x len %d/%d\n",
+			dev_dbg(musb->controller, "RX%d count %d, buffer 0x%llx len %d/%d\n",
 					epnum, rx_count,
-					urb->transfer_dma
-						+ urb->actual_length,
+					(unsigned long long)buf,
 					qh->offset,
 					urb->transfer_buffer_length);
 
@@ -1785,14 +1785,13 @@ void musb_host_rx(struct musb *musb, u8 epnum)
 					    rx_count, d->length);
 
 					length = d->length;
-				} else
+				} else {
 					length = rx_count;
+				}
 				d->status = d_status;
 				buf = urb->transfer_dma + d->offset;
 			} else {
 				length = rx_count;
-				buf = urb->transfer_dma +
-						urb->actual_length;
 			}
 
 			dma->desired_mode = 0;
Signature · 1 line
1.7.10.4
#1 lore raw

Hi,

Quoted 7 lines · Emil Goode

This patch fixes a format specifier warning. dma_addr_t can be either u32 or u64 so we should cast to the largest type and change the format specifier to %llx.
The addition of urb->transfer_dma and urb->actual_length is also done a few lines below. I have moved this code up and pass the variable buf to dev_dbg.

Quoted 6 lines

Sparse output:
drivers/usb/musb/musb_host.c:1761:4: warning:
format ‘%x’ expects argument of type ‘unsigned int’, but argument 6 has type ‘dma_addr_t’ [-Wformat]

already sent this one yesterday:

http://marc.info/?l=linux-usb&m=136987256218081

Signature · 1 line
balbi