From: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
To: Felipe Balbi <balbi@ti.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>,
Peter Chen <peter.chen@freescale.com>,
Andrzej Pietrasiewicz <andrzej.p@samsung.com>,
linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [PATCH 04/17] net2280: Remove use_dma module parameter
Date: Fri, 28 Nov 2014 14:50:49 +0100 [thread overview]
Message-ID: <1417182662-7405-5-git-send-email-ricardo.ribalda@gmail.com> (raw)
In-Reply-To: <1417182662-7405-1-git-send-email-ricardo.ribalda@gmail.com>
use_dma parameter was designed to enable the dma on the chip. It was
enabled by default.
It comes from the time when the dma was not reliable. Now it has been
working ok in production.
This patch removes this parameter.
Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
---
drivers/usb/gadget/udc/net2280.c | 33 +++++----------------------------
1 file changed, 5 insertions(+), 28 deletions(-)
diff --git a/drivers/usb/gadget/udc/net2280.c b/drivers/usb/gadget/udc/net2280.c
index fc5c0a2..230b8d4 100644
--- a/drivers/usb/gadget/udc/net2280.c
+++ b/drivers/usb/gadget/udc/net2280.c
@@ -80,18 +80,6 @@ static const char *const ep_name[] = {
"ep-e", "ep-f", "ep-g", "ep-h",
};
-/* use_dma -- general goodness, fewer interrupts, less cpu load (vs PIO)
- *
- * The net2280 DMA engines are not tightly integrated with their FIFOs;
- * not all cases are (yet) handled well in this driver or the silicon.
- * Some gadget drivers work better with the dma support here than others.
- * These two parameters let you use PIO or more aggressive DMA.
- */
-static bool use_dma = true;
-
-/* "modprobe net2280 use_dma=n" etc */
-module_param(use_dma, bool, 0444);
-
/* mode 0 == ep-{a,b,c,d} 1K fifo each
* mode 1 == ep-{a,b} 2K fifo each, ep-{c,d} unavailable
* mode 2 == ep-a 2K fifo, ep-{b,c} 1K each, ep-d unavailable
@@ -455,7 +443,7 @@ static int net2280_disable(struct usb_ep *_ep)
/* synch memory views with the device */
(void)readl(&ep->cfg->ep_cfg);
- if (use_dma && !ep->dma && ep->num >= 1 && ep->num <= 4)
+ if (!ep->dma && ep->num >= 1 && ep->num <= 4)
ep->dma = &ep->dev->dma[ep->num - 1];
spin_unlock_irqrestore(&ep->dev->lock, flags);
@@ -1508,12 +1496,11 @@ static ssize_t registers_show(struct device *_dev,
/* Main Control Registers */
t = scnprintf(next, size, "%s version " DRIVER_VERSION
- ", chiprev %04x, dma %s\n\n"
+ ", chiprev %04x\n\n"
"devinit %03x fifoctl %08x gadget '%s'\n"
"pci irqenb0 %02x irqenb1 %08x "
"irqstat0 %04x irqstat1 %08x\n",
driver_name, dev->chiprev,
- use_dma ? "enabled" : "disabled",
readl(&dev->regs->devinit),
readl(&dev->regs->fifoctl),
s,
@@ -1995,10 +1982,6 @@ static void usb_reset(struct net2280 *dev)
static void usb_reinit_228x(struct net2280 *dev)
{
u32 tmp;
- int init_dma;
-
- /* use_dma changes are ignored till next device re-init */
- init_dma = use_dma;
/* basic endpoint init */
for (tmp = 0; tmp < 7; tmp++) {
@@ -2010,8 +1993,7 @@ static void usb_reinit_228x(struct net2280 *dev)
if (tmp > 0 && tmp <= 4) {
ep->fifo_size = 1024;
- if (init_dma)
- ep->dma = &dev->dma[tmp - 1];
+ ep->dma = &dev->dma[tmp - 1];
} else
ep->fifo_size = 64;
ep->regs = &dev->epregs[tmp];
@@ -2035,7 +2017,6 @@ static void usb_reinit_228x(struct net2280 *dev)
static void usb_reinit_338x(struct net2280 *dev)
{
- int init_dma;
int i;
u32 tmp, val;
u32 fsmvalue;
@@ -2043,9 +2024,6 @@ static void usb_reinit_338x(struct net2280 *dev)
static const u32 ep_reg_addr[9] = { 0x00, 0xC0, 0x00, 0xC0, 0x00,
0x00, 0xC0, 0x00, 0xC0 };
- /* use_dma changes are ignored till next device re-init */
- init_dma = use_dma;
-
/* basic endpoint init */
for (i = 0; i < dev->n_ep; i++) {
struct net2280_ep *ep = &dev->ep[i];
@@ -2054,7 +2032,7 @@ static void usb_reinit_338x(struct net2280 *dev)
ep->dev = dev;
ep->num = i;
- if (i > 0 && i <= 4 && init_dma)
+ if (i > 0 && i <= 4)
ep->dma = &dev->dma[i - 1];
if (dev->enhanced_mode) {
@@ -3606,8 +3584,7 @@ static int net2280_probe(struct pci_dev *pdev, const struct pci_device_id *id)
ep_info(dev, "%s\n", driver_desc);
ep_info(dev, "irq %d, pci mem %p, chip rev %04x\n",
pdev->irq, base, dev->chiprev);
- ep_info(dev, "version: " DRIVER_VERSION "; dma %s %s\n",
- use_dma ? "enabled" : "disabled",
+ ep_info(dev, "version: " DRIVER_VERSION "; %s\n",
dev->enhanced_mode ? "enhanced mode" : "legacy mode");
retval = device_create_file(&pdev->dev, &dev_attr_registers);
if (retval)
--
2.1.3
next prev parent reply other threads:[~2014-11-28 13:51 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-28 13:50 [PATCH 00/17] net2280: Code cleanout, improve debug and remove broken param Ricardo Ribalda Delgado
2014-11-28 13:50 ` [PATCH 01/17] net2280: Remove obsolete module param use_dma_chaining Ricardo Ribalda Delgado
2014-11-28 13:50 ` [PATCH 02/17] net2280: remove full_speed module parameter Ricardo Ribalda Delgado
2014-11-28 13:50 ` [PATCH 03/17] net2280: Remove module parameter use_msi Ricardo Ribalda Delgado
2014-11-28 13:50 ` Ricardo Ribalda Delgado [this message]
2014-11-28 13:50 ` [PATCH 05/17] net2280: Remove dma_started field Ricardo Ribalda Delgado
2014-11-28 13:50 ` [PATCH 06/17] net2280: Remove restart_dma inline function definition Ricardo Ribalda Delgado
2014-11-28 14:46 ` Sergei Shtylyov
2014-11-28 15:21 ` Ricardo Ribalda Delgado
2014-11-28 20:16 ` Sergei Shtylyov
2014-12-23 18:44 ` Felipe Balbi
2014-12-23 20:20 ` Ricardo Ribalda Delgado
2014-12-23 23:44 ` Felipe Balbi
2014-11-28 13:50 ` [PATCH 07/17] net2280: Code cleanout remove ep_stdrsp function Ricardo Ribalda Delgado
2014-11-28 13:50 ` [PATCH 08/17] net2280: Remove field is_halt Ricardo Ribalda Delgado
2014-11-28 13:50 ` [PATCH 09/17] net2280: Remove function ep_stall Ricardo Ribalda Delgado
2014-11-28 13:50 ` [PATCH 10/17] net2280: Merge abort_dma for 228x and 338x Ricardo Ribalda Delgado
2014-11-28 13:50 ` [PATCH 11/17] net2280: Clean function net2280_queue Ricardo Ribalda Delgado
2014-11-28 13:50 ` [PATCH 12/17] net2280: Improve patching of defect 7374 Ricardo Ribalda Delgado
2014-11-28 13:50 ` [PATCH 13/17] net2280: Remove function resume_dma Ricardo Ribalda Delgado
2014-11-28 13:50 ` [PATCH 14/17] net2280: Declare allow_status_338x as inline Ricardo Ribalda Delgado
2014-11-28 13:51 ` [PATCH 15/17] net2280: Simplify scan_dma_completions Ricardo Ribalda Delgado
2014-11-28 13:51 ` [PATCH 16/17] net2280: Move ASSERT_OUT_NAKING into out_flush Ricardo Ribalda Delgado
2014-11-28 13:51 ` [PATCH 17/17] net2280: Re-enable dynamic debug messages Ricardo Ribalda Delgado
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1417182662-7405-5-git-send-email-ricardo.ribalda@gmail.com \
--to=ricardo.ribalda@gmail.com \
--cc=andrzej.p@samsung.com \
--cc=balbi@ti.com \
--cc=gregkh@linuxfoundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=peter.chen@freescale.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®