From ea2d915974342e3af8a7c390fd11ae075c583f5b Mon Sep 17 00:00:00 2001 From: Anatolij Gustschin Date: Mon, 19 Dec 2011 04:20:35 +0000 Subject: usb: s3c_udc_otg: fix GCC 4.6 build warnings Fix: In file included from s3c_udc_otg.c:216:0: s3c_udc_otg_xfer_dma.c: In function 'complete_tx': s3c_udc_otg_xfer_dma.c:280:33: warning: variable 'is_short' set but not used s3c_udc_otg_xfer_dma.c:280:6: warning: variable 'ep_tsr' set but not used s3c_udc_otg_xfer_dma.c: In function 's3c_udc_irq': s3c_udc_otg_xfer_dma.c:469:16: warning: variable 'flags' set but not used s3c_udc_otg_xfer_dma.c:468:18: warning: variable 'gintmsk' set but not used s3c_udc_otg_xfer_dma.c: In function 's3c_queue': s3c_udc_otg_xfer_dma.c:582:14: warning: variable 'gintsts' set but not used s3c_udc_otg_xfer_dma.c:581:16: warning: variable 'flags' set but not used s3c_udc_otg_xfer_dma.c: In function 's3c_ep0_read': s3c_udc_otg_xfer_dma.c:778:6: warning: variable 'ret' set but not used s3c_udc_otg_xfer_dma.c: In function 's3c_udc_set_halt': s3c_udc_otg_xfer_dma.c:1020:16: warning: variable 'flags' set but not used s3c_udc_otg_xfer_dma.c: In function 's3c_ep0_setup': s3c_udc_otg_xfer_dma.c:1258:13: warning: initialization from incompatible pointer type [enabled by default] s3c_udc_otg_xfer_dma.c:1239:16: warning: variable 'is_in' set but not used s3c_udc_otg_xfer_dma.c:1239:9: warning: variable 'bytes' set but not used s3c_udc_otg.c: In function 'usb_gadget_register_driver': s3c_udc_otg.c:292:16: warning: variable 'flags' set but not used s3c_udc_otg.c: In function 'usb_gadget_unregister_driver': s3c_udc_otg.c:338:16: warning: variable 'flags' set but not used s3c_udc_otg.c: In function 's3c_ep_enable': s3c_udc_otg.c:582:16: warning: variable 'flags' set but not used s3c_udc_otg.c: In function 's3c_ep_disable': s3c_udc_otg.c:646:16: warning: variable 'flags' set but not used s3c_udc_otg.c: In function 's3c_dequeue': s3c_udc_otg.c:704:16: warning: variable 'flags' set but not used Signed-off-by: Anatolij Gustschin Cc: Lukasz Majewski Cc: Remy Bohmer --- drivers/usb/gadget/s3c_udc_otg.c | 52 +++++----- drivers/usb/gadget/s3c_udc_otg_xfer_dma.c | 166 ++++++++++++++++-------------- include/usb/lin_gadget_compat.h | 2 +- include/usb/s3c_udc.h | 20 ++-- 4 files changed, 125 insertions(+), 115 deletions(-) diff --git a/drivers/usb/gadget/s3c_udc_otg.c b/drivers/usb/gadget/s3c_udc_otg.c index 901fac982a..1050a98b6c 100644 --- a/drivers/usb/gadget/s3c_udc_otg.c +++ b/drivers/usb/gadget/s3c_udc_otg.c @@ -47,7 +47,6 @@ #include #include "regs-otg.h" -#include #include /***********************************************************/ @@ -73,8 +72,6 @@ #define EP0_CON 0 #define EP_MASK 0xF -#if defined(DEBUG_S3C_UDC_SETUP) || defined(DEBUG_S3C_UDC_ISR) \ - || defined(DEBUG_S3C_UDC_OUT_EP) static char *state_names[] = { "WAIT_FOR_SETUP", "DATA_STATE_XMIT", @@ -86,7 +83,6 @@ static char *state_names[] = { "WAIT_FOR_IN_COMPLETE", "WAIT_FOR_NULL_COMPLETE", }; -#endif #define DRIVER_DESC "S3C HS USB OTG Device Driver, (c) Samsung Electronics" #define DRIVER_VERSION "15 March 2009" @@ -362,7 +358,7 @@ static void done(struct s3c_ep *ep, struct s3c_request *req, int status) { unsigned int stopped = ep->stopped; - DEBUG("%s: %s %p, req = %p, stopped = %d\n", + debug("%s: %s %p, req = %p, stopped = %d\n", __func__, ep->ep.name, ep, &req->req, stopped); list_del_init(&req->queue); @@ -373,7 +369,7 @@ static void done(struct s3c_ep *ep, struct s3c_request *req, int status) status = req->req.status; if (status && status != -ESHUTDOWN) { - DEBUG("complete %s req %p stat %d len %u/%u\n", + debug("complete %s req %p stat %d len %u/%u\n", ep->ep.name, &req->req, status, req->req.actual, req->req.length); } @@ -401,7 +397,7 @@ static void done(struct s3c_ep *ep, struct s3c_request *req, int status) req->req.complete(&ep->ep, &req->req); spin_lock(&ep->dev->lock); - DEBUG("callback completed\n"); + debug("callback completed\n"); ep->stopped = stopped; } @@ -413,7 +409,7 @@ static void nuke(struct s3c_ep *ep, int status) { struct s3c_request *req; - DEBUG("%s: %s %p\n", __func__, ep->ep.name, ep); + debug("%s: %s %p\n", __func__, ep->ep.name, ep); /* called with irqs blocked */ while (!list_empty(&ep->queue)) { @@ -456,7 +452,7 @@ static void reconfig_usbd(void) int i; unsigned int uTemp = writel(CORE_SOFT_RESET, ®->grstctl); - DEBUG(2, "Reseting OTG controller\n"); + debug("Reseting OTG controller\n"); writel(0<<15 /* PHY Low Power Clock sel*/ |1<<14 /* Non-Periodic TxFIFO Rewind Enable*/ @@ -526,13 +522,13 @@ static void reconfig_usbd(void) /* Flush the RX FIFO */ writel(RX_FIFO_FLUSH, ®->grstctl); while (readl(®->grstctl) & RX_FIFO_FLUSH) - DEBUG("%s: waiting for S3C_UDC_OTG_GRSTCTL\n", __func__); + debug("%s: waiting for S3C_UDC_OTG_GRSTCTL\n", __func__); /* Flush all the Tx FIFO's */ writel(TX_FIFO_FLUSH_ALL, ®->grstctl); writel(TX_FIFO_FLUSH_ALL | TX_FIFO_FLUSH, ®->grstctl); while (readl(®->grstctl) & TX_FIFO_FLUSH) - DEBUG("%s: waiting for S3C_UDC_OTG_GRSTCTL\n", __func__); + debug("%s: waiting for S3C_UDC_OTG_GRSTCTL\n", __func__); /* 13. Clear NAK bit of EP0, EP1, EP2*/ /* For Slave mode*/ @@ -581,7 +577,7 @@ static int s3c_ep_enable(struct usb_ep *_ep, struct s3c_udc *dev; unsigned long flags; - DEBUG("%s: %p\n", __func__, _ep); + debug("%s: %p\n", __func__, _ep); ep = container_of(_ep, struct s3c_ep, ep); if (!_ep || !desc || ep->desc || _ep->name == ep0name @@ -590,7 +586,7 @@ static int s3c_ep_enable(struct usb_ep *_ep, || ep_maxpacket(ep) < le16_to_cpu(get_unaligned(&desc->wMaxPacketSize))) { - DEBUG("%s: bad ep or descriptor\n", __func__); + debug("%s: bad ep or descriptor\n", __func__); return -EINVAL; } @@ -599,7 +595,7 @@ static int s3c_ep_enable(struct usb_ep *_ep, && ep->bmAttributes != USB_ENDPOINT_XFER_BULK && desc->bmAttributes != USB_ENDPOINT_XFER_INT) { - DEBUG("%s: %s type mismatch\n", __func__, _ep->name); + debug("%s: %s type mismatch\n", __func__, _ep->name); return -EINVAL; } @@ -608,14 +604,14 @@ static int s3c_ep_enable(struct usb_ep *_ep, && le16_to_cpu(get_unaligned(&desc->wMaxPacketSize)) != ep_maxpacket(ep)) || !get_unaligned(&desc->wMaxPacketSize)) { - DEBUG("%s: bad %s maxpacket\n", __func__, _ep->name); + debug("%s: bad %s maxpacket\n", __func__, _ep->name); return -ERANGE; } dev = ep->dev; if (!dev->driver || dev->gadget.speed == USB_SPEED_UNKNOWN) { - DEBUG("%s: bogus device state\n", __func__); + debug("%s: bogus device state\n", __func__); return -ESHUTDOWN; } @@ -632,7 +628,7 @@ static int s3c_ep_enable(struct usb_ep *_ep, s3c_udc_ep_activate(ep); spin_unlock_irqrestore(&ep->dev->lock, flags); - DEBUG("%s: enabled %s, stopped = %d, maxpacket = %d\n", + debug("%s: enabled %s, stopped = %d, maxpacket = %d\n", __func__, _ep->name, ep->stopped, ep->ep.maxpacket); return 0; } @@ -645,11 +641,11 @@ static int s3c_ep_disable(struct usb_ep *_ep) struct s3c_ep *ep; unsigned long flags; - DEBUG("%s: %p\n", __func__, _ep); + debug("%s: %p\n", __func__, _ep); ep = container_of(_ep, struct s3c_ep, ep); if (!_ep || !ep->desc) { - DEBUG("%s: %s not enabled\n", __func__, + debug("%s: %s not enabled\n", __func__, _ep ? ep->ep.name : NULL); return -EINVAL; } @@ -664,7 +660,7 @@ static int s3c_ep_disable(struct usb_ep *_ep) spin_unlock_irqrestore(&ep->dev->lock, flags); - DEBUG("%s: disabled %s\n", __func__, _ep->name); + debug("%s: disabled %s\n", __func__, _ep->name); return 0; } @@ -673,7 +669,7 @@ static struct usb_request *s3c_alloc_request(struct usb_ep *ep, { struct s3c_request *req; - DEBUG("%s: %s %p\n", __func__, ep->name, ep); + debug("%s: %s %p\n", __func__, ep->name, ep); req = kmalloc(sizeof *req, gfp_flags); if (!req) @@ -689,7 +685,7 @@ static void s3c_free_request(struct usb_ep *ep, struct usb_request *_req) { struct s3c_request *req; - DEBUG("%s: %p\n", __func__, ep); + debug("%s: %p\n", __func__, ep); req = container_of(_req, struct s3c_request, req); WARN_ON(!list_empty(&req->queue)); @@ -703,7 +699,7 @@ static int s3c_dequeue(struct usb_ep *_ep, struct usb_request *_req) struct s3c_request *req; unsigned long flags; - DEBUG("%s: %p\n", __func__, _ep); + debug("%s: %p\n", __func__, _ep); ep = container_of(_ep, struct s3c_ep, ep); if (!_ep || ep->ep.name == ep0name) @@ -737,11 +733,11 @@ static int s3c_fifo_status(struct usb_ep *_ep) ep = container_of(_ep, struct s3c_ep, ep); if (!_ep) { - DEBUG("%s: bad ep\n", __func__); + debug("%s: bad ep\n", __func__); return -ENODEV; } - DEBUG("%s: %d\n", __func__, ep_index(ep)); + debug("%s: %d\n", __func__, ep_index(ep)); /* LPD can't report unclaimed bytes from IN fifos */ if (ep_is_in(ep)) @@ -759,11 +755,11 @@ static void s3c_fifo_flush(struct usb_ep *_ep) ep = container_of(_ep, struct s3c_ep, ep); if (unlikely(!_ep || (!ep->desc && ep->ep.name != ep0name))) { - DEBUG("%s: bad ep\n", __func__); + debug("%s: bad ep\n", __func__); return; } - DEBUG("%s: %d\n", __func__, ep_index(ep)); + debug("%s: %d\n", __func__, ep_index(ep)); } static const struct usb_gadget_ops s3c_udc_ops = { @@ -849,7 +845,7 @@ int s3c_udc_probe(struct s3c_plat_otg_data *pdata) struct s3c_udc *dev = &memory; int retval = 0, i; - DEBUG("%s: %p\n", __func__, pdata); + debug("%s: %p\n", __func__, pdata); dev->pdata = pdata; diff --git a/drivers/usb/gadget/s3c_udc_otg_xfer_dma.c b/drivers/usb/gadget/s3c_udc_otg_xfer_dma.c index 255385750e..b11108da37 100644 --- a/drivers/usb/gadget/s3c_udc_otg_xfer_dma.c +++ b/drivers/usb/gadget/s3c_udc_otg_xfer_dma.c @@ -62,7 +62,7 @@ void s3c_udc_pre_setup(void) { u32 ep_ctrl; - DEBUG_IN_EP("%s : Prepare Setup packets.\n", __func__); + debug_cond(DEBUG_IN_EP, "%s : Prepare Setup packets.\n", __func__); invalidate_dcache_range((unsigned long) usb_ctrl_dma_addr, (unsigned long) usb_ctrl_dma_addr @@ -91,7 +91,8 @@ static inline void s3c_ep0_complete_out(void) DEBUG_EP0("%s:EP0 ZLP DOEPCTL0 = 0x%x\n", __func__, readl(®->out_endp[EP0_CON].doepctl)); - DEBUG_IN_EP("%s : Prepare Complete Out packet.\n", __func__); + debug_cond(DEBUG_IN_EP, + "%s : Prepare Complete Out packet.\n", __func__); invalidate_dcache_range((unsigned long) usb_ctrl_dma_addr, (unsigned long) usb_ctrl_dma_addr @@ -203,14 +204,15 @@ int setdma_tx(struct s3c_ep *ep, struct s3c_request *req) writel(DEPCTL_EPENA|DEPCTL_CNAK|ctrl, ®->in_endp[ep_num].diepctl); - DEBUG_IN_EP("%s:EP%d TX DMA start : DIEPDMA0 = 0x%x," - "DIEPTSIZ0 = 0x%x, DIEPCTL0 = 0x%x\n" - "\tbuf = 0x%p, pktcnt = %d, xfersize = %d\n", - __func__, ep_num, - readl(®->in_endp[ep_num].diepdma), - readl(®->in_endp[ep_num].dieptsiz), - readl(®->in_endp[ep_num].diepctl), - buf, pktcnt, length); + debug_cond(DEBUG_IN_EP, + "%s:EP%d TX DMA start : DIEPDMA0 = 0x%x," + "DIEPTSIZ0 = 0x%x, DIEPCTL0 = 0x%x\n" + "\tbuf = 0x%p, pktcnt = %d, xfersize = %d\n", + __func__, ep_num, + readl(®->in_endp[ep_num].diepdma), + readl(®->in_endp[ep_num].dieptsiz), + readl(®->in_endp[ep_num].diepctl), + buf, pktcnt, length); return length; } @@ -287,8 +289,9 @@ static void complete_tx(struct s3c_udc *dev, u8 ep_num) } if (list_empty(&ep->queue)) { - DEBUG_IN_EP("%s: TX DMA done : NULL REQ on IN EP-%d\n", - __func__, ep_num); + debug_cond(DEBUG_IN_EP, + "%s: TX DMA done : NULL REQ on IN EP-%d\n", + __func__, ep_num); return; } @@ -301,33 +304,38 @@ static void complete_tx(struct s3c_udc *dev, u8 ep_num) is_short = (xfer_size < ep->ep.maxpacket); req->req.actual += min(xfer_size, req->req.length - req->req.actual); - DEBUG_IN_EP("%s: TX DMA done : ep = %d, tx bytes = %d/%d, " - "is_short = %d, DIEPTSIZ = 0x%x, remained bytes = %d\n", - __func__, ep_num, req->req.actual, req->req.length, - is_short, ep_tsr, xfer_size); + debug_cond(DEBUG_IN_EP, + "%s: TX DMA done : ep = %d, tx bytes = %d/%d, " + "is_short = %d, DIEPTSIZ = 0x%x, remained bytes = %d\n", + __func__, ep_num, req->req.actual, req->req.length, + is_short, ep_tsr, xfer_size); if (ep_num == 0) { if (dev->ep0state == DATA_STATE_XMIT) { - DEBUG_IN_EP("%s: ep_num = %d, ep0stat ==" - "DATA_STATE_XMIT\n", - __func__, ep_num); + debug_cond(DEBUG_IN_EP, + "%s: ep_num = %d, ep0stat ==" + "DATA_STATE_XMIT\n", + __func__, ep_num); last = write_fifo_ep0(ep, req); if (last) dev->ep0state = WAIT_FOR_COMPLETE; } else if (dev->ep0state == WAIT_FOR_IN_COMPLETE) { - DEBUG_IN_EP("%s: ep_num = %d, completing request\n", - __func__, ep_num); + debug_cond(DEBUG_IN_EP, + "%s: ep_num = %d, completing request\n", + __func__, ep_num); done(ep, req, 0); dev->ep0state = WAIT_FOR_SETUP; } else if (dev->ep0state == WAIT_FOR_COMPLETE) { - DEBUG_IN_EP("%s: ep_num = %d, completing request\n", - __func__, ep_num); + debug_cond(DEBUG_IN_EP, + "%s: ep_num = %d, completing request\n", + __func__, ep_num); done(ep, req, 0); dev->ep0state = WAIT_FOR_OUT_COMPLETE; s3c_ep0_complete_out(); } else { - DEBUG_IN_EP("%s: ep_num = %d, invalid ep state\n", - __func__, ep_num); + debug_cond(DEBUG_IN_EP, + "%s: ep_num = %d, invalid ep state\n", + __func__, ep_num); } return; } @@ -337,7 +345,8 @@ static void complete_tx(struct s3c_udc *dev, u8 ep_num) if (!list_empty(&ep->queue)) { req = list_entry(ep->queue.next, struct s3c_request, queue); - DEBUG_IN_EP("%s: Next Tx request start...\n", __func__); + debug_cond(DEBUG_IN_EP, + "%s: Next Tx request start...\n", __func__); setdma_tx(ep, req); } } @@ -347,19 +356,22 @@ static inline void s3c_udc_check_tx_queue(struct s3c_udc *dev, u8 ep_num) struct s3c_ep *ep = &dev->ep[ep_num]; struct s3c_request *req; - DEBUG_IN_EP("%s: Check queue, ep_num = %d\n", __func__, ep_num); + debug_cond(DEBUG_IN_EP, + "%s: Check queue, ep_num = %d\n", __func__, ep_num); if (!list_empty(&ep->queue)) { req = list_entry(ep->queue.next, struct s3c_request, queue); - DEBUG_IN_EP("%s: Next Tx request(0x%p) start...\n", - __func__, req); + debug_cond(DEBUG_IN_EP, + "%s: Next Tx request(0x%p) start...\n", + __func__, req); if (ep_is_in(ep)) setdma_tx(ep, req); else setdma_rx(ep, req); } else { - DEBUG_IN_EP("%s: NULL REQ on IN EP-%d\n", __func__, ep_num); + debug_cond(DEBUG_IN_EP, + "%s: NULL REQ on IN EP-%d\n", __func__, ep_num); return; } @@ -372,15 +384,15 @@ static void process_ep_in_intr(struct s3c_udc *dev) u8 ep_num = 0; ep_intr = readl(®->daint); - DEBUG_IN_EP("*** %s: EP In interrupt : DAINT = 0x%x\n", - __func__, ep_intr); + debug_cond(DEBUG_IN_EP, + "*** %s: EP In interrupt : DAINT = 0x%x\n", __func__, ep_intr); ep_intr &= DAINT_MASK; while (ep_intr) { if (ep_intr & DAINT_IN_EP_INT(1)) { ep_intr_status = readl(®->in_endp[ep_num].diepint); - DEBUG_IN_EP("\tEP%d-IN : DIEPINT = 0x%x\n", + debug_cond(DEBUG_IN_EP, "\tEP%d-IN : DIEPINT = 0x%x\n", ep_num, ep_intr_status); /* Interrupt Clear */ @@ -473,7 +485,8 @@ static int s3c_udc_irq(int irq, void *_dev) intr_status = readl(®->gintsts); gintmsk = readl(®->gintmsk); - DEBUG_ISR("\n*** %s : GINTSTS=0x%x(on state %s), GINTMSK : 0x%x," + debug_cond(DEBUG_ISR, + "\n*** %s : GINTSTS=0x%x(on state %s), GINTMSK : 0x%x," "DAINT : 0x%x, DAINTMSK : 0x%x\n", __func__, intr_status, state_names[dev->ep0state], gintmsk, readl(®->daint), readl(®->daintmsk)); @@ -484,30 +497,32 @@ static int s3c_udc_irq(int irq, void *_dev) } if (intr_status & INT_ENUMDONE) { - DEBUG_ISR("\tSpeed Detection interrupt\n"); + debug_cond(DEBUG_ISR, "\tSpeed Detection interrupt\n"); writel(INT_ENUMDONE, ®->gintsts); usb_status = (readl(®->dsts) & 0x6); if (usb_status & (USB_FULL_30_60MHZ | USB_FULL_48MHZ)) { - DEBUG_ISR("\t\tFull Speed Detection\n"); + debug_cond(DEBUG_ISR, "\t\tFull Speed Detection\n"); set_max_pktsize(dev, USB_SPEED_FULL); } else { - DEBUG_ISR("\t\tHigh Speed Detection : 0x%x\n", - usb_status); + debug_cond(DEBUG_ISR, + "\t\tHigh Speed Detection : 0x%x\n", + usb_status); set_max_pktsize(dev, USB_SPEED_HIGH); } } if (intr_status & INT_EARLY_SUSPEND) { - DEBUG_ISR("\tEarly suspend interrupt\n"); + debug_cond(DEBUG_ISR, "\tEarly suspend interrupt\n"); writel(INT_EARLY_SUSPEND, ®->gintsts); } if (intr_status & INT_SUSPEND) { usb_status = readl(®->dsts); - DEBUG_ISR("\tSuspend interrupt :(DSTS):0x%x\n", usb_status); + debug_cond(DEBUG_ISR, + "\tSuspend interrupt :(DSTS):0x%x\n", usb_status); writel(INT_SUSPEND, ®->gintsts); if (dev->gadget.speed != USB_SPEED_UNKNOWN @@ -525,7 +540,7 @@ static int s3c_udc_irq(int irq, void *_dev) } if (intr_status & INT_RESUME) { - DEBUG_ISR("\tResume interrupt\n"); + debug_cond(DEBUG_ISR, "\tResume interrupt\n"); writel(INT_RESUME, ®->gintsts); if (dev->gadget.speed != USB_SPEED_UNKNOWN @@ -538,13 +553,15 @@ static int s3c_udc_irq(int irq, void *_dev) if (intr_status & INT_RESET) { usb_status = readl(®->gotgctl); - DEBUG_ISR("\tReset interrupt - (GOTGCTL):0x%x\n", usb_status); + debug_cond(DEBUG_ISR, + "\tReset interrupt - (GOTGCTL):0x%x\n", usb_status); writel(INT_RESET, ®->gintsts); if ((usb_status & 0xc0000) == (0x3 << 18)) { if (reset_available) { - DEBUG_ISR("\t\tOTG core got reset (%d)!!\n", - reset_available); + debug_cond(DEBUG_ISR, + "\t\tOTG core got reset (%d)!!\n", + reset_available); reconfig_usbd(); dev->ep0state = WAIT_FOR_SETUP; reset_available = 0; @@ -554,7 +571,7 @@ static int s3c_udc_irq(int irq, void *_dev) } else { reset_available = 1; - DEBUG_ISR("\t\tRESET handling skipped\n"); + debug_cond(DEBUG_ISR, "\t\tRESET handling skipped\n"); } } @@ -585,7 +602,7 @@ static int s3c_queue(struct usb_ep *_ep, struct usb_request *_req, if (unlikely(!_req || !_req->complete || !_req->buf || !list_empty(&req->queue))) { - DEBUG("%s: bad params\n", __func__); + debug("%s: bad params\n", __func__); return -EINVAL; } @@ -593,7 +610,7 @@ static int s3c_queue(struct usb_ep *_ep, struct usb_request *_req, if (unlikely(!_ep || (!ep->desc && ep->ep.name != ep0name))) { - DEBUG("%s: bad ep: %s, %d, %x\n", __func__, + debug("%s: bad ep: %s, %d, %p\n", __func__, ep->ep.name, !ep->desc, _ep); return -EINVAL; } @@ -602,7 +619,7 @@ static int s3c_queue(struct usb_ep *_ep, struct usb_request *_req, dev = ep->dev; if (unlikely(!dev->driver || dev->gadget.speed == USB_SPEED_UNKNOWN)) { - DEBUG("%s: bogus device state %p\n", __func__, dev->driver); + debug("%s: bogus device state %p\n", __func__, dev->driver); return -ESHUTDOWN; } @@ -612,7 +629,7 @@ static int s3c_queue(struct usb_ep *_ep, struct usb_request *_req, _req->actual = 0; /* kickstart this i/o queue? */ - DEBUG("\n*** %s: %s-%s req = %p, len = %d, buf = %p" + debug("\n*** %s: %s-%s req = %p, len = %d, buf = %p" "Q empty = %d, stopped = %d\n", __func__, _ep->name, ep_is_in(ep) ? "in" : "out", _req, _req->length, _req->buf, @@ -644,8 +661,9 @@ static int s3c_queue(struct usb_ep *_ep, struct usb_request *_req, } else if (ep_is_in(ep)) { gintsts = readl(®->gintsts); - DEBUG_IN_EP("%s: ep_is_in, S3C_UDC_OTG_GINTSTS=0x%x\n", - __func__, gintsts); + debug_cond(DEBUG_IN_EP, + "%s: ep_is_in, S3C_UDC_OTG_GINTSTS=0x%x\n", + __func__, gintsts); setdma_tx(ep, req); } else { @@ -775,13 +793,12 @@ static void s3c_ep0_read(struct s3c_udc *dev) { struct s3c_request *req; struct s3c_ep *ep = &dev->ep[0]; - int ret; if (!list_empty(&ep->queue)) { req = list_entry(ep->queue.next, struct s3c_request, queue); } else { - DEBUG("%s: ---> BUG\n", __func__); + debug("%s: ---> BUG\n", __func__); BUG(); return; } @@ -801,7 +818,7 @@ static void s3c_ep0_read(struct s3c_udc *dev) return; } - ret = setdma_rx(ep, req); + setdma_rx(ep, req); } /* @@ -910,19 +927,19 @@ static void s3c_udc_set_nak(struct s3c_ep *ep) u32 ep_ctrl = 0; ep_num = ep_index(ep); - DEBUG("%s: ep_num = %d, ep_type = %d\n", __func__, ep_num, ep->ep_type); + debug("%s: ep_num = %d, ep_type = %d\n", __func__, ep_num, ep->ep_type); if (ep_is_in(ep)) { ep_ctrl = readl(®->in_endp[ep_num].diepctl); ep_ctrl |= DEPCTL_SNAK; writel(ep_ctrl, ®->in_endp[ep_num].diepctl); - DEBUG("%s: set NAK, DIEPCTL%d = 0x%x\n", + debug("%s: set NAK, DIEPCTL%d = 0x%x\n", __func__, ep_num, readl(®->in_endp[ep_num].diepctl)); } else { ep_ctrl = readl(®->out_endp[ep_num].doepctl); ep_ctrl |= DEPCTL_SNAK; writel(ep_ctrl, ®->out_endp[ep_num].doepctl); - DEBUG("%s: set NAK, DOEPCTL%d = 0x%x\n", + debug("%s: set NAK, DOEPCTL%d = 0x%x\n", __func__, ep_num, readl(®->out_endp[ep_num].doepctl)); } @@ -936,7 +953,7 @@ void s3c_udc_ep_set_stall(struct s3c_ep *ep) u32 ep_ctrl = 0; ep_num = ep_index(ep); - DEBUG("%s: ep_num = %d, ep_type = %d\n", __func__, ep_num, ep->ep_type); + debug("%s: ep_num = %d, ep_type = %d\n", __func__, ep_num, ep->ep_type); if (ep_is_in(ep)) { ep_ctrl = readl(®->in_endp[ep_num].diepctl); @@ -948,7 +965,7 @@ void s3c_udc_ep_set_stall(struct s3c_ep *ep) ep_ctrl |= DEPCTL_STALL; writel(ep_ctrl, ®->in_endp[ep_num].diepctl); - DEBUG("%s: set stall, DIEPCTL%d = 0x%x\n", + debug("%s: set stall, DIEPCTL%d = 0x%x\n", __func__, ep_num, readl(®->in_endp[ep_num].diepctl)); } else { @@ -958,7 +975,7 @@ void s3c_udc_ep_set_stall(struct s3c_ep *ep) ep_ctrl |= DEPCTL_STALL; writel(ep_ctrl, ®->out_endp[ep_num].doepctl); - DEBUG("%s: set stall, DOEPCTL%d = 0x%x\n", + debug("%s: set stall, DOEPCTL%d = 0x%x\n", __func__, ep_num, readl(®->out_endp[ep_num].doepctl)); } @@ -971,7 +988,7 @@ void s3c_udc_ep_clear_stall(struct s3c_ep *ep) u32 ep_ctrl = 0; ep_num = ep_index(ep); - DEBUG("%s: ep_num = %d, ep_type = %d\n", __func__, ep_num, ep->ep_type); + debug("%s: ep_num = %d, ep_type = %d\n", __func__, ep_num, ep->ep_type); if (ep_is_in(ep)) { ep_ctrl = readl(®->in_endp[ep_num].diepctl); @@ -991,7 +1008,7 @@ void s3c_udc_ep_clear_stall(struct s3c_ep *ep) } writel(ep_ctrl, ®->in_endp[ep_num].diepctl); - DEBUG("%s: cleared stall, DIEPCTL%d = 0x%x\n", + debug("%s: cleared stall, DIEPCTL%d = 0x%x\n", __func__, ep_num, readl(®->in_endp[ep_num].diepctl)); } else { @@ -1006,7 +1023,7 @@ void s3c_udc_ep_clear_stall(struct s3c_ep *ep) } writel(ep_ctrl, ®->out_endp[ep_num].doepctl); - DEBUG("%s: cleared stall, DOEPCTL%d = 0x%x\n", + debug("%s: cleared stall, DOEPCTL%d = 0x%x\n", __func__, ep_num, readl(®->out_endp[ep_num].doepctl)); } @@ -1025,14 +1042,14 @@ static int s3c_udc_set_halt(struct usb_ep *_ep, int value) if (unlikely(!_ep || !ep->desc || ep_num == EP0_CON || ep->desc->bmAttributes == USB_ENDPOINT_XFER_ISOC)) { - DEBUG("%s: %s bad ep or descriptor\n", __func__, ep->ep.name); + debug("%s: %s bad ep or descriptor\n", __func__, ep->ep.name); return -EINVAL; } /* Attempt to halt IN ep will fail if any transfer requests * are still queue */ if (value && ep_is_in(ep) && !list_empty(&ep->queue)) { - DEBUG("%s: %s queue not empty, req = %p\n", + debug("%s: %s queue not empty, req = %p\n", __func__, ep->ep.name, list_entry(ep->queue.next, struct s3c_request, queue)); @@ -1040,7 +1057,7 @@ static int s3c_udc_set_halt(struct usb_ep *_ep, int value) } dev = ep->dev; - DEBUG("%s: ep_num = %d, value = %d\n", __func__, ep_num, value); + debug("%s: ep_num = %d, value = %d\n", __func__, ep_num, value); spin_lock_irqsave(&dev->lock, flags); @@ -1076,7 +1093,7 @@ void s3c_udc_ep_activate(struct s3c_ep *ep) daintmsk = (1 << ep_num) << DAINT_OUT_BIT; } - DEBUG("%s: EPCTRL%d = 0x%x, ep_is_in = %d\n", + debug("%s: EPCTRL%d = 0x%x, ep_is_in = %d\n", __func__, ep_num, ep_ctrl, ep_is_in(ep)); /* If the EP is already active don't change the EP Control @@ -1090,12 +1107,12 @@ void s3c_udc_ep_activate(struct s3c_ep *ep) if (ep_is_in(ep)) { writel(ep_ctrl, ®->in_endp[ep_num].diepctl); - DEBUG("%s: USB Ative EP%d, DIEPCTRL%d = 0x%x\n", + debug("%s: USB Ative EP%d, DIEPCTRL%d = 0x%x\n", __func__, ep_num, ep_num, readl(®->in_endp[ep_num].diepctl)); } else { writel(ep_ctrl, ®->out_endp[ep_num].doepctl); - DEBUG("%s: USB Ative EP%d, DOEPCTRL%d = 0x%x\n", + debug("%s: USB Ative EP%d, DOEPCTRL%d = 0x%x\n", __func__, ep_num, ep_num, readl(®->out_endp[ep_num].doepctl)); } @@ -1103,7 +1120,7 @@ void s3c_udc_ep_activate(struct s3c_ep *ep) /* Unmask EP Interrtupt */ writel(readl(®->daintmsk)|daintmsk, ®->daintmsk); - DEBUG("%s: DAINTMSK = 0x%x\n", __func__, readl(®->daintmsk)); + debug("%s: DAINTMSK = 0x%x\n", __func__, readl(®->daintmsk)); } @@ -1236,14 +1253,14 @@ static int s3c_udc_set_feature(struct usb_ep *_ep) void s3c_ep0_setup(struct s3c_udc *dev) { struct s3c_ep *ep = &dev->ep[0]; - int i, bytes, is_in; + int i; u8 ep_num; /* Nuke all previous transfers */ nuke(ep, -EPROTO); /* read control req from fifo (8 bytes) */ - bytes = s3c_fifo_read(ep, (u32 *)usb_ctrl, 8); + s3c_fifo_read(ep, (u32 *)usb_ctrl, 8); DEBUG_SETUP("%s: bRequestType = 0x%x(%s), bRequest = 0x%x" "\twLength = 0x%x, wValue = 0x%x, wIndex= 0x%x\n", @@ -1255,7 +1272,7 @@ void s3c_ep0_setup(struct s3c_udc *dev) #ifdef DEBUG_S3C_UDC { int i, len = sizeof(*usb_ctrl); - char *p = usb_ctrl; + char *p = (char *)usb_ctrl; printf("pkt = "); for (i = 0; i < len; i++) { @@ -1293,11 +1310,8 @@ void s3c_ep0_setup(struct s3c_udc *dev) /* Set direction of EP0 */ if (likely(usb_ctrl->bRequestType & USB_DIR_IN)) { ep->bEndpointAddress |= USB_DIR_IN; - is_in = 1; - } else { ep->bEndpointAddress &= ~USB_DIR_IN; - is_in = 0; } /* cope with automagic for some standard requests. */ dev->req_std = (usb_ctrl->bRequestType & USB_TYPE_MASK) diff --git a/include/usb/lin_gadget_compat.h b/include/usb/lin_gadget_compat.h index 9b315118d5..fce3be7e80 100644 --- a/include/usb/lin_gadget_compat.h +++ b/include/usb/lin_gadget_compat.h @@ -26,7 +26,7 @@ /* common */ #define spin_lock_init(...) #define spin_lock(...) -#define spin_lock_irqsave(lock, flags) do {flags = 1; } while (0) +#define spin_lock_irqsave(lock, flags) do { debug("%lu\n", flags); } while (0) #define spin_unlock(...) #define spin_unlock_irqrestore(lock, flags) do {flags = 0; } while (0) #define disable_irq(...) diff --git a/include/usb/s3c_udc.h b/include/usb/s3c_udc.h index 14dadc8b05..31d8f6cba0 100644 --- a/include/usb/s3c_udc.h +++ b/include/usb/s3c_udc.h @@ -131,16 +131,10 @@ extern struct s3c_udc *the_controller; #define DEBUG_EP0(fmt, args...) do {} while (0) #endif -#ifdef DEBUG_S3C_UDC -#define DEBUG(fmt, args...) printk(fmt, ##args) -#else -#define DEBUG(fmt, args...) do {} while (0) -#endif - #ifdef DEBUG_S3C_UDC_ISR -#define DEBUG_ISR(fmt, args...) printk(fmt, ##args) +#define DEBUG_ISR 1 #else -#define DEBUG_ISR(fmt, args...) do {} while (0) +#define DEBUG_ISR 0 #endif #ifdef DEBUG_S3C_UDC_OUT_EP @@ -150,9 +144,15 @@ extern struct s3c_udc *the_controller; #endif #ifdef DEBUG_S3C_UDC_IN_EP -#define DEBUG_IN_EP(fmt, args...) printk(fmt, ##args) +#define DEBUG_IN_EP 1 #else -#define DEBUG_IN_EP(fmt, args...) do {} while (0) +#define DEBUG_IN_EP 0 +#endif + +#if defined(DEBUG_S3C_UDC_SETUP) || defined(DEBUG_S3C_UDC_EP0) || \ + defined(DEBUG_S3C_UDC_ISR) || defined(DEBUG_S3C_UDC_OUT_EP) || \ + defined(DEBUG_S3C_UDC_IN_EP) || defined(DEBUG_S3C_UDC) +#define DEBUG #endif #define ERR(stuff...) printf("ERR udc: " stuff) -- cgit v1.2.3