10 Nov, 2014

1 commit

  • Add a new helper function snd_pcm_stop_xrun() to the standard sequnce
    lock/snd_pcm_stop(XRUN)/unlock by a single call, and replace the
    existing open codes with this helper.

    The function checks the PCM running state to prevent setting the wrong
    state, too, for more safety.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     

14 Feb, 2014

1 commit


21 Oct, 2013

1 commit

  • Add a flag to snd_fw_transaction() to allow it to abort when a bus reset
    happens. This removes most of the duplicated error handling loops that
    were required around calls to the low-level fw_run_transaction().

    Also add a flag to suppress error messages; errors are expected when we
    attempt to clean up after the device was unplugged.

    Signed-off-by: Clemens Ladisch

    Clemens Ladisch
     

10 Jun, 2013

1 commit

  • FireWire upper layer drivers are converted from generic
    struct driver.probe() and .remove()
    to bus-specific
    struct fw_driver.probe() and .remove().

    The new .probe() adds a const struct ieee1394_device_id *id argument,
    indicating the entry in the driver's device identifiers table which
    matched the fw_unit to be probed. This new argument is used by the
    snd-firewire-speakers driver to look up device-specific parameters and
    methods. There is at least one other FireWire audio driver currently in
    development in which this will be useful too.

    The new .remove() drops the unused error return code.

    Although all in-tree drivers are being converted to the new methods,
    support for the old methods is left in place in this commit. This
    allows public developer trees to merge this commit and then move to the
    new fw_driver methods.

    Signed-off-by: Stefan Richter
    Acked-by: Clemens Ladisch (for sound/firewire/)
    Cc: Peter Hurley (for drivers/staging/fwserial/)

    Stefan Richter
     

23 Mar, 2012

1 commit

  • Pull IEEE 1394 (FireWire) subsystem updates post v3.3 from Stefan Richter:

    - Some SBP-2 initiator fixes, side product from ongoing work on a target.

    - Reintroduction of an isochronous I/O feature of the older ieee1394 driver
    stack (flush buffer completions); it was evidently rarely used but not
    actually unused. Matching libraw1394 code is already available.

    - Be sure to prefix all kernel log messages with device name or card name,
    and other logging related cleanups.

    - Misc other small cleanups, among them a small API change that affects
    sound/firewire/ too. Clemens Ladisch is aware of it.

    * tag 'firewire-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394: (26 commits)
    firewire: allow explicit flushing of iso packet completions
    firewire: prevent dropping of completed iso packet header data
    firewire: ohci: factor out iso completion flushing code
    firewire: ohci: simplify iso header pointer arithmetic
    firewire: ohci: optimize control bit checks
    firewire: ohci: remove unused excess_bytes field
    firewire: ohci: copy_iso_headers(): make comment match the code
    firewire: cdev: fix IR multichannel event documentation
    firewire: ohci: fix too-early completion of IR multichannel buffers
    firewire: ohci: move runtime debug facility out of #ifdef
    firewire: tone down some diagnostic log messages
    firewire: sbp2: replace a GFP_ATOMIC allocation
    firewire: sbp2: Fix SCSI sense data mangling
    firewire: sbp2: Ignore SBP-2 targets on the local node
    firewire: sbp2: Take into account Unit_Unique_ID
    firewire: nosy: Use the macro DMA_BIT_MASK().
    firewire: core: convert AR-req handler lock from _irqsave to _bh
    firewire: core: fix race at address_handler unregistration
    firewire: core: remove obsolete comment
    firewire: core: prefix log messages with card name
    ...

    Linus Torvalds
     

16 Jan, 2012

1 commit

  • fw_unit device drivers invariably need to talk to the fw_unit's parent
    (an fw_device) and grandparent (an fw_card). firewire-core already
    maintains an fw_card reference for the entire lifetime of an fw_device.
    Likewise, let firewire-core maintain an fw_device reference for the
    entire lifetime of an fw_unit so that fw_unit drivers don't have to.

    Signed-off-by: Stefan Richter

    Stefan Richter
     

15 Aug, 2011

1 commit


17 Jun, 2011

1 commit

  • Since commit 13882a82ee16 (optimize iso queueing by setting
    wake only after the last packet), drivers are required to call
    fw_iso_context_queue_flush() after queueing a batch of packets.
    The missing call would have an effect only if the controller
    queue underruns, but then the DMA would stop completely.

    Signed-off-by: Clemens Ladisch
    Signed-off-by: Takashi Iwai

    Clemens Ladisch
     

11 May, 2011

8 commits