01 Feb, 2006

8 commits

  • This is the usbatm part of the Arjan, Jes and Ingo
    mass semaphore to mutex conversion, reworked to apply on top
    of the patches I just sent to you. This time, with correct
    attribution and signed-off lines.

    Signed-off-by: Arjan van de Ven
    Signed-off-by: Ingo Molnar
    Signed-off-by: Duncan Sands
    Signed-off-by: Greg Kroah-Hartman

    Arjan van de Ven
     
  • Don't throttle on -EILSEQ urb status if requested by a minidriver.
    It seems the ueagle modems are buggy, giving -EILSEQ when they
    have no data to send. The ueagle change will be sent separately
    by the ueagle guys. Patch by Matthieu Castet.

    Signed-off-by: Duncan Sands
    Signed-off-by: Greg Kroah-Hartman

    Duncan Sands
     
  • The receive logic has always assumed that urbs contain an integral
    number of ATM cells, which is a bit naughty, though it never caused
    any problems with bulk transfers. Isochronous urbs spank us soundly
    for this. Fixed thanks to this patch, mostly by Stanislaw Gruszka.

    Signed-off-by: Duncan Sands
    Signed-off-by: Greg Kroah-Hartman

    Duncan Sands
     
  • While the usbatm core has had some support for using isoc urbs
    for some time, there was no way for users to turn it on. While
    use of isoc transfer should still be considered experimental, it
    now works well enough to let users turn it on. Minidrivers signal
    to the core that they want to use isoc transfer by setting the new
    UDSL_USE_ISOC flag. The speedtch minidriver gets a new module
    parameter enable_isoc (defaults to false), plus some logic that
    checks for the existence of an isoc receive endpoint (not all
    speedtouch modems have one).

    Signed-off-by: Duncan Sands
    Signed-off-by: Greg Kroah-Hartman

    Duncan Sands
     
  • This patch causes vcc_release_async to be applied to any open
    vcc's when the modem is disconnected. This signals a socket
    shutdown, letting the socket user know that the game is up.
    I wrote this patch because of reports that pppd would keep
    connections open forever when the modem is disconnected.
    This patch does not fix that problem, but it's a step in the
    right direction. It doesn't help because the pppoatm module
    doesn't yet monitor state changes on the ATM socket, so simply
    never realises that the ATM connection has gone down (meaning
    it doesn't tell the ppp layer). But at least there is a socket
    state change now. Unfortunately this patch may create problems
    for those rare users like me who use routed IP or some other
    non-ppp connection method that goes via the ATM ARP daemon: the
    daemon is buggy, and with this patch will crash when the modem
    is disconnected. Users with a buggy atmarpd can simply restart
    it after disconnecting the modem.

    Signed-off-by: Duncan Sands
    Signed-off-by: Greg Kroah-Hartman

    Duncan Sands
     
  • Remove the unused .owner field in struct usbatm_driver.

    Signed-off-by: Duncan Sands
    Signed-off-by: Greg Kroah-Hartman

    Duncan Sands
     
  • Have minidrivers and the core signal special requirements
    using a flags field in struct usbatm_data. For the moment
    this is only used to replace the need_heavy_init bind
    parameter, but there'll be new flags in later patches.

    Signed-off-by: Duncan Sands
    Signed-off-by: Greg Kroah-Hartman

    Duncan Sands
     
  • Formatting, changes to variable names, comments, log level changes,
    printk rate limiting.

    Signed-off-by: Duncan Sands
    Signed-off-by: Greg Kroah-Hartman

    Duncan Sands
     

18 Nov, 2005

1 commit


28 Jun, 2005

2 commits

  • Work around the gcc-2.95.x macro expansion bug.

    Cc: Duncan Sands
    Signed-off-by: Andrew Morton
    Signed-off-by: Greg Kroah-Hartman

    Andrew Morton
     
  • Rework the core usbatm code: minidrivers (i.e. drivers for particular
    modems) now register themselves with the usbatm core, supplying methods
    for binding/unbinding etc. The design was inspired by usb-serial and
    usbnet. At the same time, more common code from the speedtch and
    cxacru (patch 3/5) drivers was generalized and moved into the core. The
    transmission and reception parts have been unified and simplified. Since
    this is a major change and I don't like underscores in file names,
    usb_atm.[ch] has been renamed usbatm.[ch].

    Many thanks to Roman Kagan, who did a lot of the coding.

    Signed-off-by: Duncan Sands
    Signed-off-by: Greg Kroah-Hartman

    Duncan Sands