03 Jan, 2009

40 commits

  • Added a few comments - no functional change.

    Signed-off-by: Sam Ravnborg

    Sam Ravnborg
     
  • We had a recursive dependency between MMU_MOTOROLA and MMU_SUN3
    Fix it by dropping the unused dependencies on MMU_MOTOROLA.

    MMU_MOTOROLA is set to y only using select so any dependencies
    are anyway ignored.

    Signed-off-by: Sam Ravnborg
    Acked-by: Geert Uytterhoeven
    Cc: Roman Zippel

    Sam Ravnborg
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: (32 commits)
    ide-atapi: start dma in a drive-specific way
    ide-atapi: put the rest of non-ide-cd code into the else-clause of ide_transfer_pc
    ide-atapi: remove timeout arg to ide_issue_pc
    ide-cd: remove handler wrappers
    ide-cd: remove xferlen arg to cdrom_start_packet_command
    ide-atapi: split drive-specific functionality in ide_issue_pc
    ide-atapi: assign expiry and timeout based on device type
    ide-atapi: compute cmd_len based on device type in ide_transfer_pc
    ide: remove the last ide-scsi remnants
    ide-atapi: remove ide-scsi remnants from ide_pc_intr()
    ide-atapi: remove ide-scsi remnants from ide_transfer_pc()
    ide-atapi: remove ide-scsi remnants from ide_issue_pc
    ide-cd: move cdrom_timer_expiry to ide-atapi.c
    ide-atapi: teach ide atapi about drive->waiting_for_dma
    ide-atapi: accomodate transfer length calculation for ide-cd
    ide-atapi: setup dma for ide-cd
    ide-atapi: combine drive-specific assignments
    ide-atapi: add a dev_is_idecd-inline
    remove ide-scsi
    ide-floppy: allocate only toplevel packet commands
    ...

    Linus Torvalds
     
  • * 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/dvrabel/uwb: (31 commits)
    uwb: remove beacon cache entry after calling uwb_notify()
    uwb: remove unused include/linux/uwb/debug.h
    uwb: use print_hex_dump()
    uwb: use dev_dbg() for debug messages
    uwb: fix memory leak in uwb_rc_notif()
    wusb: fix oops when terminating a non-existant reservation
    uwb: fix oops when terminating an already terminated reservation
    uwb: improved MAS allocator and reservation conflict handling
    wusb: add debug files for ASL, PZL and DI to the whci-hcd driver
    uwb: fix oops in debug PAL's reservation callback
    uwb: clean up whci_wait_for() timeout error message
    wusb: whci-hcd shouldn't do ASL/PZL updates while channel is inactive
    uwb: remove unused beacon group join/leave events
    wlp: start/stop radio on network interface up/down
    uwb: add basic radio manager
    uwb: add pal parameter to new reservation callback
    uwb: fix races between events and neh timers
    uwb: don't unbind the radio controller driver when resetting
    uwb: per-radio controller event thread and beacon cache
    uwb: add commands to add/remove IEs to the debug interface
    ...

    Linus Torvalds
     
  • Ben Herrenschmidt is taking over as the primary powerpc architecture
    maintainer. I'll still be around as his backup/deputy.

    Signed-off-by: Paul Mackerras
    Acked-by: Grant Likely
    Signed-off-by: Linus Torvalds

    Paul Mackerras
     
  • * i8k-updates:
    i8k: Add Dell Vostro systems
    i8k: Enable i8k on Dell Precision Systems

    Linus Torvalds
     
  • This trivial patch adds support for i8k on the new Dell Vostro models.
    I tested it on my Vostro 1400, and it works. It does print a warning
    when loading the module:

    i8k: unable to get SMM BIOS version

    But I couldn't figure out how to fix that. The module seems to work fine,
    anyway...

    Signed-off-by: Federico Heinz
    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Federico Heinz
     
  • Patch to enable i8k on Dell Precisions.

    Signed-off-by: Andy Spencer
    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Andy Spencer
     
  • Signed-off-by: Ingo Brueckl
    Signed-off-by: Linus Torvalds

    Ingo Brueckl
     
  • * tty-updates: (75 commits)
    serial_8250: support for Sealevel Systems Model 7803 COMM+8
    hso maintainers update patch
    hso modem detect fix patch against Alan Cox'es tty tree
    tty: Fix an ircomm warning and note another bug
    drivers/char/cyclades.c: cy_pci_probe: fix error path
    Serial: UART driver changes for Cavium OCTEON.
    Serial: Allow port type to be specified when calling serial8250_register_port.
    8250: Serial driver changes to support future Cavium OCTEON serial patches.
    8250: Don't clobber spinlocks.
    fix for tty-serial-move-port
    tty: We want the port object to be persistent
    __FUNCTION__ is gcc-specific, use __func__
    serial: RS485 ioctl structure uses __u32 include linux/types.h
    tty: Drop the lock_kernel in the private ioctl hook
    synclink_cs: Convert to tty_port
    tty: use port methods for the rocket driver
    tty: kref the rocket driver
    tty: make rocketport use standard port->flags
    tty: Redo the rocket driver locking
    tty: Make epca use the port helpers
    ...

    Linus Torvalds
     
  • Add support for Sealevel Systems Model 7803 COMM+8

    Signed-off-by: Flavio Leitner
    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Flavio Leitner
     
  • Added D.J. Barrow as maintainer of hso driver.

    Signed-off-by: Denis Joseph Barrow
    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Denis Joseph Barrow
     
  • Fixed incorrect check for the modem port, this prevents
    crashes caused by issueing a tiocmget_submit_urb
    on endpoints which don't exist for non modem devices.

    Signed-off-by: Denis Joseph Barrow
    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Denis Joseph Barrow
     
  • Roel Kluin noted that line is unsigned so one test is unneccessary. Also
    add a warning for another flaw I noticed while making this change.

    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • We forgot to release resources in one case.

    Addresses http://bugzilla.kernel.org/show_bug.cgi?id=12137

    Reported-by: Florian Lohoff
    Signed-off-by: Andrew Morton
    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • Cavium UART implementation is not covered by existing uart_configS.
    Define a new uart_config (PORT_OCTEON) which is specified by OCTEON
    platform device registration code.

    Signed-off-by: Tomaso Paoletti
    Signed-off-by: David Daney
    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    David Daney
     
  • Add flag value UPF_FIXED_TYPE which specifies that the UART type is
    known and should not be probed. For this case the UARTs properties
    are just copied out of the uart_config entry.

    This allows us to keep SOC specific 8250 probe code out of 8250.c. In
    this case we know the serial hardware will not be changing as it is on
    the same silicon as the CPU, and we can specify it with certainty in
    the board/cpu setup code.

    The alternative is to load up 8250.c with a bunch of OCTEON specific
    special cases in the probing code.

    Signed-off-by: David Daney
    Signed-off-by: Andrew Morton
    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    David Daney
     
  • In order to use Cavium OCTEON specific serial i/o drivers, we first
    patch the 8250 driver to use replaceable I/O functions. Compatible
    I/O functions are added for existing iotypeS.

    An added benefit of this change is that it makes it easy to factor
    some of the existing special cases out to board/SOC specific support
    code.

    The alternative is to load up 8250.c with a bunch of OCTEON specific
    iotype code and bug work-arounds.

    Signed-off-by: David Daney
    Signed-off-by: Tomaso Paoletti
    Signed-off-by: Andrew Morton
    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    David Daney
     
  • In serial8250_isa_init_ports(), the port's lock is initialized. We
    should not overwrite it. In early_serial_setup(), only copy in the
    fields we need. Since the early console code only uses a subset of
    the fields, these are sufficient.

    Signed-off-by: David Daney
    Signed-off-by: Tomaso Paoletti
    Signed-off-by: Andrew Morton
    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    David Daney
     
  • Hi Alan

    next-20081204 crashes with the following message:

    BUG: unable to handle kernel paging request at ffff88007d320248
    IP: [] uart_remove_one_port+0xef/0x111
    kfree(info);
    393: 49 8d 7d 10 lea 0x10(%r13),%rdi
    397: e8 00 00 00 00 callq 39c

    Signed-off-by: Alexander Beregalov
    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Alexander Beregalov
     
  • Move the tty_port and uart_info bits around a little. By embedding the uart_info
    into the uart_port we get rid of lots of corner case testing and also get the
    ability to go portstateinfo which is a bit more elegant than the current
    data structures.

    Downsides - we allocate a tiny bit more memory for unused ports, upside we've
    removed as much code as it saved for most users..

    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • Signed-off-by: Harvey Harrison
    Signed-off-by: Andrew Morton
    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Harvey Harrison
     
  • In the commit below a new struct serial_rs485 was introduced for a new
    ioctl:

    commit c26c56c0f40e200e61d1390629c806f6adaffbcc
    Author: Alan Cox
    Date: Mon Oct 13 10:37:48 2008 +0100

    tty: Cris has a nice RS485 ioctl so we should steal it

    This structure uses the __u32 types for some of its members, which leads
    to the following compile error:

    $ cc -I.../include -c X.c
    In file included from X.c:2: .../include/linux/serial.h:185:
    error: expected specifier-qualifier-list before ‘__u32’
    $

    It seems that these types are appropriate for this structure as it is
    to be exposed to userspace. These types are available via linux/types.h
    so move the include of that outside the __KERNEL__ section.

    Signed-off-by: Andy Whitcroft
    Signed-off-by: Andrew Morton
    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Andy Whitcroft
     
  • We don't need the BKL here any more so it can go. In a couple of spots the
    driver requirements are not clear so push the lock down into the driver.

    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • Use the tty port operations, add refcounting, and refactor a bit to make the
    refcounting work cleanly.

    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • Now we have our ducks in order we can begin switching to the port
    operations

    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • We will need this kref fitted to make full use of the port operations.

    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • We need to this ready for using the standard helpers

    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • Bring this driver into the port locking model

    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • Now the locking is straight and the port kref usage is straight we can
    replace lots of chunks of code with the standard port helpers

    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • Bring epca into line with the port locking.

    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • Makes TIOCM ioctls for Data Carrier Detect & related functions
    work like /drivers/serial/serial-core.c potentially needed
    for pppd & similar user programs.

    Signed-off-by: Denis Joseph Barrow
    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Denis Joseph Barrow
     
  • Init the tty structure once
    Don't set ->low_latency twice in a row
    Don't force bits we should be leaving to the user
    Don't allocate termios arrays as these are in fact allocated by the tty layer
    for you and just overwrite the ones allocated in the driver

    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • Checking tty == NULL doesn't help us unless we have a clear semantic for
    the locking of the tty object in the driver. Use the tty kref objects so that
    we can take references to the tty in the USB event handling paths.

    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • Update the nozomi driver to use krefs

    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • disc_data and driver_data are void *

    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • The write wakeup is done anyway for the poll while DO_WRITE_WAKUP is
    cleared, set and managed by the ldisc layer and is no business of the pty
    code.

    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • The N_TTY ldisc layer does not send SIGIO POLL_OUTs correctly when output is
    possible due to flawed handling of the TTY_DO_WRITE_WAKEUP bit. It will
    either send no SIGIOs at all or on every tty wakeup.

    The fix is to set the bit when the tty driver write would block and test
    and clear it on write wakeup.

    [Merged with existing N_TTY patches and a small buglet fixed -- Alan]

    Signed-off-by: Thomas Pfaff
    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Thomas Pfaff
     
  • The underlying problem is that the device methods don't all correctly
    handle disconnected status and some keep reporting bytes pending which
    causes tcdrain to stall.

    When the cable is unplugged they are definitely gone, and as this is true
    for all USB cables we can fix it in the core usb serial code.

    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Alan Cox