18 Feb, 2016

1 commit

  • commit 61595dca742a9ba9a4c998b9af1f468adc816275 upstream.

    Since the build of PCM timer may be disabled via Kconfig now, each
    driver that provides a timer interface needs to set CONFIG_SND_TIMER
    explicitly. Otherwise it may get a build error due to missing
    symbol.

    Fixes: 90bbaf66ee7b ('ALSA: timer: add config item to export PCM timer disabling for expert')
    Reported-by: kbuild test robot
    Signed-off-by: Takashi Iwai
    Signed-off-by: Greg Kroah-Hartman

    Takashi Iwai
     

13 Jun, 2015

1 commit


24 Mar, 2015

1 commit


09 Mar, 2015

1 commit


05 Mar, 2015

1 commit


12 Feb, 2015

1 commit

  • This patch moves the driver object initialization and allocation to
    each driver's module init/exit code like other normal drivers. The
    snd_seq_driver struct is now published in seq_device.h, and each
    driver is responsible to define it with proper driver attributes
    (name, probe and remove) with snd_seq_driver specific attributes as id
    and argsize fields. The helper functions snd_seq_driver_register(),
    snd_seq_driver_unregister() and module_snd_seq_driver() are used for
    simplifying codes.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     

29 Jan, 2015

1 commit


28 Jan, 2015

2 commits


19 Jan, 2015

2 commits


12 Jan, 2015

2 commits

  • Detected sound font memory goes unreported unless the kernel was built with
    ALSA debugging enabled. Elevate that to a pr_info.

    Signed-off-by: David Flater
    Signed-off-by: Takashi Iwai

    David Flater
     
  • Applicable to any kernel since 2013:

    The special case added in commit 1338fc97d07a did not handle the possibility
    that the address space on an AWE64 Value would wrap around at 512 KiB. That
    is what it does, so the memory is still not detected on those cards.

    Fix that with a logic clean-up that eliminates the need for a special case.

    Signed-off-by: David Flater
    Signed-off-by: Takashi Iwai

    David Flater
     

04 Jan, 2015

2 commits


02 Jan, 2015

8 commits

  • Most callers of snd_wss_pcm(), snd_wss_timer() and snd_cs4236_pcm() pass
    NULL as the last parameter, some callers pass a pointer but never use it
    after the function has been called and only a few callers pass a pointer and
    actually use it. The later is only the case for snd_wss_pcm() for
    snd_cs4236_pcm() and it is possible to get the same PCM object by accessing
    the pcm field of the snd_wss struct that was passed as the first parameter.

    This function removes the last parameters from the functions mentioned above
    and updates the callers which used it to use chip->pcm instead. This allows
    us to slightly simplify the functions since they don't have to check and set
    the last parameter anymore which makes the code slightly shorter and
    cleaner.

    Signed-off-by: Lars-Peter Clausen
    Signed-off-by: Takashi Iwai

    Lars-Peter Clausen
     
  • All callers of snd_sb16dsp_pcm() always pass the pcm field of the first
    parameter as the last parameter. Simplify the function by moving this inside
    the function itself. This makes the code a bit shorter and cleaner.

    Signed-off-by: Lars-Peter Clausen
    Signed-off-by: Takashi Iwai

    Lars-Peter Clausen
     
  • snd_sb8dsp_pcm() and snd_sb8dsp_midi() take a pointer to a pointer of a
    PCM/MIDI where if this parameter is provided the newly allocated object is
    stored. All callers pass NULL though, so remove the parameter. This makes
    the code a bit cleaner and shorter.

    Signed-off-by: Lars-Peter Clausen
    Signed-off-by: Takashi Iwai

    Lars-Peter Clausen
     
  • snd_msnd_pcm() takes a pointer to a pointer of a PCM where if this parameter
    is provided the newly allocated PCM is stored. All callers pass NULL though,
    so remove the parameter. This makes the code a bit cleaner and shorter.

    Signed-off-by: Lars-Peter Clausen
    Signed-off-by: Takashi Iwai

    Lars-Peter Clausen
     
  • snd_gf1_pcm_new() and snd_gf1_rawmidi_new() take a pointer to a pointer of a
    PCM/MIDI where if this parameter is provided the newly allocated object is
    stored. All callers pass NULL though, so remove the parameter. This makes
    the code a bit cleaner and shorter.

    Signed-off-by: Lars-Peter Clausen
    Signed-off-by: Takashi Iwai

    Lars-Peter Clausen
     
  • snd_es18xx_pcm() takes a pointer to a pointer of a PCM where if this
    parameter is provided the newly allocated PCM is stored. All callers pass
    NULL though, so remove the parameter. This makes the code a bit cleaner and
    shorter.

    Signed-off-by: Lars-Peter Clausen
    Signed-off-by: Takashi Iwai

    Lars-Peter Clausen
     
  • snd_es1688_pcm() takes a pointer to a pointer of a PCM where if this
    parameter is provided the newly allocated PCM is stored. This PCM is also
    available from the pcm field of the snd_es1688 struct that got passed to the
    same function. This patch updates all callers which passed a pointer to use
    that field instead and then removes the parameter from the function. This
    makes the code a bit shorter and cleaner.

    Signed-off-by: Lars-Peter Clausen
    Signed-off-by: Takashi Iwai

    Lars-Peter Clausen
     
  • snd_ad1816a_pcm() and snd_ad1816a_timer() take a pointer to a pointer of a
    PCM/timer where if this parameter is provided the newly allocated object is
    stored. All callers pass NULL though, so remove the parameter. This makes
    the code a bit cleaner and shorter.

    Signed-off-by: Lars-Peter Clausen
    Signed-off-by: Takashi Iwai

    Lars-Peter Clausen
     

26 Dec, 2014

1 commit

  • The instrument layer codes have been dropped years ago, but this file
    was left intentionally with a slight hope for the new implementations.
    But, looking at the reality, the probability we'll have a new code for
    ISA GUS board is very low, and I won't bet it. So, rather clean this
    legacy stuff up. Developers can still refer to the old code via git
    history.

    Reported-by: Rickard Strandqvist
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     

22 Nov, 2014

2 commits


04 Nov, 2014

1 commit

  • Add GPO0 and GPO1 (General Purpose Outputs) controls to mixer.
    These can be used on some cards to control amplifier mute (seen in ES1868
    datasheet) or additional onboard chips such as QX2130 QXpander processor.

    These GPOs are present on ES1868, ES1869, ES1887 and ES1888 chips.

    Tested on ES1868 with QX2130.

    Signed-off-by: Ondrej Zary
    Signed-off-by: Takashi Iwai

    Ondrej Zary
     

21 Oct, 2014

6 commits


30 May, 2014

1 commit


14 May, 2014

1 commit


14 Apr, 2014

1 commit


08 Apr, 2014

1 commit

  • If the renamed symbol is defined lib/iomap.c implements ioport_map and
    ioport_unmap and currently (nearly) all platforms define the port
    accessor functions outb/inb and friend unconditionally. So
    HAS_IOPORT_MAP is the better name for this.

    Consequently NO_IOPORT is renamed to NO_IOPORT_MAP.

    The motivation for this change is to reintroduce a symbol HAS_IOPORT
    that signals if outb/int et al are available. I will address that at
    least one merge window later though to keep surprises to a minimum and
    catch new introductions of (HAS|NO)_IOPORT.

    The changes in this commit were done using:

    $ git grep -l -E '(NO|HAS)_IOPORT' | xargs perl -p -i -e 's/\b((?:CONFIG_)?(?:NO|HAS)_IOPORT)\b/$1_MAP/'

    Signed-off-by: Uwe Kleine-König
    Acked-by: Arnd Bergmann
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Uwe Kleine-König
     

12 Feb, 2014

1 commit


13 Nov, 2013

1 commit


12 Nov, 2013

1 commit

  • msnd_pinnacle.c is used for both snd-msnd-pinnacle and
    snd-msnd-classic drivers, and both should have different driver
    names. Using the same driver name results in the sysfs warning for
    duplicated entries like
    kobject: 'msnd-pinnacle.7' (cec33408): kobject_release, parent (null) (delayed)
    kobject: 'msnd-pinnacle' (cecd4980): kobject_release, parent cf3ad9b0 (delayed)
    ------------[ cut here ]------------
    WARNING: CPU: 0 PID: 1 at fs/sysfs/dir.c:486 sysfs_warn_dup+0x7d/0xa0()
    sysfs: cannot create duplicate filename '/bus/isa/drivers/msnd-pinnacle'
    ......

    Reported-by: Fengguang Wu
    Cc:
    Signed-off-by: Takashi Iwai

    Takashi Iwai