// #define VERBOSE /* extra debug messages (success too) */
// #define USB_TRACE /* packet-level success messages */
+#include <linux/config.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/pci.h>
if (!_ep)
return NULL;
- req = kzalloc(sizeof *req, gfp_flags);
+ req = kmalloc(sizeof *req, gfp_flags);
if (!req)
return NULL;
+ memset(req, 0, sizeof *req);
req->req.dma = DMA_ADDR_INVALID;
INIT_LIST_HEAD(&req->queue);
return &req->req;
unsigned long resource, len;
void __iomem *base = NULL;
int retval;
+ char buf [8], *bufp;
/* if you want to support more than one controller in a system,
* usb_gadget_driver_{register,unregister}() must change.
pci_set_drvdata(pdev, dev);
INFO(dev, "%s\n", driver_desc);
INFO(dev, "version: " DRIVER_VERSION " %s\n", dmastr());
- INFO(dev, "irq %d, pci mem %p\n", pdev->irq, base);
+#ifndef __sparc__
+ scnprintf(buf, sizeof buf, "%d", pdev->irq);
+ bufp = buf;
+#else
+ bufp = __irq_itoa(pdev->irq);
+#endif
+ INFO(dev, "irq %s, pci mem %p\n", bufp, base);
/* init to known state, then setup irqs */
udc_reset(dev);
udc_reinit (dev);
- if (request_irq(pdev->irq, goku_irq, IRQF_SHARED/*|IRQF_SAMPLE_RANDOM*/,
+ if (request_irq(pdev->irq, goku_irq, SA_SHIRQ/*|SA_SAMPLE_RANDOM*/,
driver_name, dev) != 0) {
- DBG(dev, "request interrupt %d failed\n", pdev->irq);
+ DBG(dev, "request interrupt %s failed\n", bufp);
retval = -EBUSY;
goto done;
}