lkml.org 
[lkml]   [2003]   [Oct]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: USB and DMA on Alpha with 2.6.0-test7
On Fri, Oct 10, 2003 at 10:18:15AM -0700, David Brownell wrote:
> We might need arch-specific implementations of that
> method, and maybe Alpha is even one of them. But if
> there's going to be a default implementation for that
> method, the current scheme has portability problems.

Sigh. The generic dma_* stuff wasn't a well thought-out idea,
and it's too late to change it in 2.6. :-(
Right now calling dma_* functions for non-busmaster devices
just *doesn't work*.

> Nope -- there's EHCI, which can handle 64-bit DMA when the
> silicon allows ... which is why that test exists.

That test is not a test at all - it's precise equivalent
of "if (1)" on i386. On other platforms it's just a BUG().
I'd suggest following (untested) patch.

Ivan.

--- t7/drivers/usb/net/usbnet.c Wed Oct 8 23:24:07 2003
+++ linux/drivers/usb/net/usbnet.c Fri Oct 10 22:10:24 2003
@@ -2970,7 +2970,7 @@ usbnet_probe (struct usb_interface *udev
memcpy (net->dev_addr, node_id, sizeof node_id);

// possible with some EHCI controllers
- if (dma_supported (&udev->dev, 0xffffffffffffffffULL))
+ if (*udev->dev->dma_mask == 0xffffffffffffffffULL))
net->features |= NETIF_F_HIGHDMA;

net->change_mtu = usbnet_change_mtu;
--- t7/drivers/usb/net/kaweth.c Wed Oct 8 23:24:26 2003
+++ linux/drivers/usb/net/kaweth.c Fri Oct 10 22:11:21 2003
@@ -1120,7 +1120,7 @@ static int kaweth_probe(

usb_set_intfdata(intf, kaweth);

- if (dma_supported (&intf->dev, 0xffffffffffffffffULL))
+ if (*intf->dev->dma_mask == 0xffffffffffffffffULL))
kaweth->net->features |= NETIF_F_HIGHDMA;

SET_NETDEV_DEV(netdev, &intf->dev);
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
\
 
 \ /
  Last update: 2005-03-22 13:49    [W:0.055 / U:0.228 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site