07 Nov, 2011

2 commits

  • * 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux: (230 commits)
    Revert "tracing: Include module.h in define_trace.h"
    irq: don't put module.h into irq.h for tracking irqgen modules.
    bluetooth: macroize two small inlines to avoid module.h
    ip_vs.h: fix implicit use of module_get/module_put from module.h
    nf_conntrack.h: fix up fallout from implicit moduleparam.h presence
    include: replace linux/module.h with "struct module" wherever possible
    include: convert various register fcns to macros to avoid include chaining
    crypto.h: remove unused crypto_tfm_alg_modname() inline
    uwb.h: fix implicit use of asm/page.h for PAGE_SIZE
    pm_runtime.h: explicitly requires notifier.h
    linux/dmaengine.h: fix implicit use of bitmap.h and asm/page.h
    miscdevice.h: fix up implicit use of lists and types
    stop_machine.h: fix implicit use of smp.h for smp_processor_id
    of: fix implicit use of errno.h in include/linux/of.h
    of_platform.h: delete needless include
    acpi: remove module.h include from platform/aclinux.h
    miscdevice.h: delete unnecessary inclusion of module.h
    device_cgroup.h: delete needless include
    net: sch_generic remove redundant use of
    net: inet_timewait_sock doesnt need
    ...

    Fix up trivial conflicts (other header files, and removal of the ab3550 mfd driver) in
    - drivers/media/dvb/frontends/dibx000_common.c
    - drivers/media/video/{mt9m111.c,ov6650.c}
    - drivers/mfd/ab3550-core.c
    - include/linux/dmaengine.h

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
    ALSA: hda - Revert the check of NO_PRESENCE pincfg default bit
    ALSA: hda - Fix a regression for DMA-position check with CA0110
    ALSA: hda - Fix silent output regression with ALC861
    ALSA: control: remove compilation warning on 32-bit
    ALSA: ua101: fix crash when unplugging

    Linus Torvalds
     

06 Nov, 2011

6 commits

  • The implementation on commit [08a1f5eb: ALSA: hda - Check NO_PRESENCE
    pincfg default bit] seems like a mis-interpretation of specification.
    The spec gives the reversed bit definition. But, following the spec
    also causes to change so many existing device configurations, thus we
    can't change it so easily for now. For 3.2-rc1, it's safer to revert
    this check (actually this patch comments out the code).

    We may re-introduced the fixed version once after the wider test-case
    coverages are done.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • The regression-fix in 3.1 for the check of DMA-position validity caused
    yet another regression for CA0110. As usual, this hardware seems working
    only with LPIB properly. Adding the appropriate driver-caps bit to force
    LPIB fixes the problem.

    Reported-and-tested-by: Andres Freund
    Cc: [v3.1]
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • The 3.1 kernel has a regression for ALC861 codec where no sound output
    is heard with the default setup. It's because the amps in DACs aren't
    properly unmuted while the output mixers are assigned only to pins.

    This patch fixes the missing initialization of DACs when no mixer is
    assigned to them.

    Tested-by: Andrea Iob
    Cc: [v3.1+]
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • This was introduced by 'ALSA: control: add support for ENUMERATED user
    space controls' which adds a u64 variable that gets cast to a pointer:

    sound/core/control.c: In function 'snd_ctl_elem_init_enum_names':
    sound/core/control.c:1089: warning: cast to pointer from integer of different size

    Cast to uintptr_t before casting to pointer to avoid the warning.

    Signed-off-by: Olof Johansson
    [cl: replace long with uintptr_t]
    Signed-off-by: Clemens Ladisch
    Signed-off-by: Takashi Iwai

    Olof Johansson
     
  • If the device is unplugged while running, it is possible for a PCM
    device to be closed after the disconnect callback has returned. This
    means that kill_stream_urb() and disable_iso_interface() would try to
    access already-invalid or freed USB data structures.

    The function free_usb_related_resources() was intended to prevent this,
    but forgot to clear the affected variables.

    Reported-and-tested-by: Olivier Courtay
    Signed-off-by: Clemens Ladisch
    Cc: 2.6.33+
    Signed-off-by: Takashi Iwai

    Clemens Ladisch
     
  • * 'next/cleanup3' of git://git.linaro.org/people/arnd/arm-soc: (79 commits)
    ARM: SAMSUNG: Move fimc plat. device from board files to plat-samsung
    ARM: SAMSUNG: Cleanup resources by using macro
    ARM: SAMSUNG: Cleanup plat-samsung/devs.c and devs.h
    ARM: S5P: To merge devs.c files to one devs.c
    ARM: S3C64XX: To merge devs.c files to one devs.c
    ARM: S3C24XX: To merge s3c24xx devs.c files to one devs.c
    ARM: S5P64X0: Add Power Management support
    ARM: S5P: Make the sleep code common for S5P series SoCs
    ARM: S5P: Make the common S5P PM code conditionally compile
    ARM: SAMSUNG: Move S5P header files to plat-samsung
    ARM: SAMSUNG: Move S3C24XX header files to plat-samsung
    ARM: SAMSUNG: Moving each SoC support header files
    ARM: SAMSUNG: Consolidate plat/pll.h
    ARM: SAMSUNG: Consolidate plat/pwm-clock.h
    ARM: SAMSUNG: Cleanup mach/clkdev.h
    ARM: SAMSUNG: remove sdhci default configuration setup platform helper
    ARM: EXYNOS4: Add FIMC device on SMDKV310 board
    ARM: EXYNOS4: Add header file protection macros
    ARM: EXYNOS4: Add usb ehci device to the SMDKV310
    ARM: S3C2443: Add hsspi-clock from pclk and rename S3C2443 hsspi sclk
    ...

    Fix up conflicts in
    - arch/arm/mach-exynos4/{Kconfig,clock.c}
    ARM_CPU_SUSPEND, various random device tables (gah!)
    - drivers/gpio/Makefile
    sa1100 gpio added, samsung gpio drivers merged

    Linus Torvalds
     

05 Nov, 2011

1 commit

  • * 'next' of git://git.infradead.org/users/vkoul/slave-dma: (63 commits)
    dmaengine: mid_dma: mask_peripheral_interrupt only when dmac is idle
    dmaengine/ep93xx_dma: add module.h include
    pch_dma: Reduce wasting memory
    pch_dma: Fix suspend issue
    dma/timberdale: free_irq() on an error path
    dma: shdma: transfer based runtime PM
    dmaengine: shdma: protect against the IRQ handler
    dmaengine i.MX DMA/SDMA: add missing include of linux/module.h
    dmaengine: delete redundant chan_id and chancnt initialization in dma drivers
    dmaengine/amba-pl08x: Check txd->llis_va before freeing dma_pool
    dmaengine/amba-pl08x: Add support for sg len greater than one for slave transfers
    serial: sh-sci: don't filter on DMA device, use only channel ID
    ARM: SAMSUNG: Remove Samsung specific enum type for dma direction
    ASoC: Samsung: Update DMA interface
    spi/s3c64xx: Merge dma control code
    spi/s3c64xx: Add support DMA engine API
    ARM: SAMSUNG: Remove S3C-PL330-DMA driver
    ARM: S5P64X0: Use generic DMA PL330 driver
    ARM: S5PC100: Use generic DMA PL330 driver
    ARM: S5PV210: Use generic DMA PL330 driver
    ...

    Fix up fairly trivial conflicts in
    - arch/arm/mach-exynos4/{Kconfig,clock.c}
    - arch/arm/mach-s5p64x0/dma.c

    Linus Torvalds
     

04 Nov, 2011

4 commits

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (24 commits)
    ALSA: hda/realtek - Skip invalid digital out pins
    ALSA: hda/sigmatel - Automatically retrieve digital I/O widgets
    ALSA: hda - Remove unused variables
    ALSA: hda/realtek - Don't create alt-stream for capture when unnecessary
    ALSA: hda - Add support for 92HD65 / 92HD66 family of codecs
    ALSA: hda - Disable power-widget control for IDT 92HD83/93 as default
    ALSA: hda - Check NO_PRESENCE pincfg default bit
    ASoC: Ensure we always delay for WM8962 FLL when starting from SYSCLK
    ASoC: Ensure the WM8962 oscillator and PLLs start up disabled
    ASoC: Ensure WM8962 PLL registers are reset
    ALSA: intel8x0 - Fix inclusion of kvm_para.h
    ALSA: hda_hwdep: Fix possible buffer overflow
    ASoC: Fix return value of wm5100_gpio_direction_out()
    ASoC: WM8904: Set `invert' bit for Capture Switch
    ASoC: Leave input audio data bit length settings untouched in wm8711_set_dai_fmt
    ASoC: wm8711: Fix wrong mask for setting input audio data bit length select
    ALSA: intel8x0: Improve performance in virtual environment
    ALSA: hdspm - Enable all firmware ranges for PCI MADI/AES cards
    ALSA: hdsp - Correct HDSP_VERSION_BIT constant, thus partly fixing RPM detection
    ALSA: hdspm - Fix MADI channel format in the status ioctl
    ...

    Linus Torvalds
     
  • * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (37 commits)
    MIPS: O32: Provide definition of registers ta0 .. ta3.
    MIPS: perf: Add Octeon support for hardware perf.
    MIPS: perf: Add support for 64-bit perf counters.
    MIPS: perf: Reorganize contents of perf support files.
    MIPS: perf: Cleanup formatting in arch/mips/kernel/perf_event.c
    MIPS: Add accessor macros for 64-bit performance counter registers.
    MIPS: Add probes for more Octeon II CPUs.
    MIPS: Add more CPU identifiers for Octeon II CPUs.
    MIPS: XLR, XLS: Add comment for smp setup
    MIPS: JZ4740: GPIO: Check correct IRQ in demux handler
    MIPS: JZ4740: GPIO: Simplify IRQ demuxer
    MIPS: JZ4740: Use generic irq chip
    MIPS: Alchemy: remove all CONFIG_SOC_AU1??? defines
    MIPS: Alchemy: kill au1xxx.h header
    MIPS: Alchemy: clean DMA code of CONFIG_SOC_AU1??? defines
    MIPS, IDE: Alchem, au1xxx-ide: Remove pb1200/db1200 header dep
    MIPS: Alchemy: Redo PCI as platform driver
    MIPS: Alchemy: more base address cleanup
    MIPS: Alchemy: rewrite USB platform setup.
    MIPS: Alchemy: abstract USB block control register access
    ...

    Fix up trivial conflicts in:
    arch/mips/alchemy/devboards/db1x00/platform.c
    drivers/ide/Kconfig
    drivers/mmc/host/au1xmmc.c
    drivers/video/Kconfig
    sound/mips/Kconfig

    Linus Torvalds
     
  • Takashi Iwai
     
  • Some BIOS report invalid pins as digital output pins. The driver checks
    the connection but it doesn't do it fully correctly, and it leaves some
    undefined value as the audio-out widget, which makes the driver spewing
    warnings. This patch fixes the issue.

    Reference: https://bugzilla.novell.com/show_bug.cgi?id=727348

    Cc:
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     

03 Nov, 2011

4 commits

  • Revise stac92xx_parse_auto_config to automatically scan for digital input
    and output converters.

    Signed-off-by: Charles Chin
    Signed-off-by: Takashi Iwai

    Charles Chin
     
  • Just clean-up what GCC caught.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • When the driver finds multiple ADCs, it tries to create an alternative
    capture PCM stream. However, these secondary ADCs might be useless or
    in uncontrolled paths in some cases, e.g. when auto-mic or dynamic
    ADC-switching is enabled. Also, when only a single capture source is
    available, the multi-streams don't make sense, too.

    With this patch, the driver checks such condition and skips the alt
    stream appropriately.

    Cc:
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • * 'for-linus' of git://github.com/richardweinberger/linux: (90 commits)
    um: fix ubd cow size
    um: Fix kmalloc argument order in um/vdso/vma.c
    um: switch to use of drivers/Kconfig
    UserModeLinux-HOWTO.txt: fix a typo
    UserModeLinux-HOWTO.txt: remove ^H characters
    um: we need sys/user.h only on i386
    um: merge delay_{32,64}.c
    um: distribute exports to where exported stuff is defined
    um: kill system-um.h
    um: generic ftrace.h will do...
    um: segment.h is x86-only and needed only there
    um: asm/pda.h is not needed anymore
    um: hw_irq.h can go generic as well
    um: switch to generic-y
    um: clean Kconfig up a bit
    um: a couple of missing dependencies...
    um: kill useless argument of free_chan() and free_one_chan()
    um: unify ptrace_user.h
    um: unify KSTK_...
    um: fix gcov build breakage
    ...

    Linus Torvalds
     

02 Nov, 2011

7 commits


01 Nov, 2011

9 commits


31 Oct, 2011

7 commits

  • Set `invert' bit for Capture Switch. Otherwise analogue is muted when
    Capture Switch is ON.

    Signed-off-by: Hong Xu
    Signed-off-by: Mark Brown
    Cc: stable@kernel.org

    Hong Xu
     
  • Current implementation in wm8711_set_dai_fmt always clear BIT[3:2]
    (the Input Audio Data Bit Length Select) of WM8711_IFACE(07h) register.
    Input Audio Data Bit Length Select bits are set by wm8711_hw_params,
    we should leave BIT[3:2] untouched in wm8711_set_dai_fmt.

    Signed-off-by: Axel Lin
    Signed-off-by: Mark Brown
    Cc: stable@kernel.org

    Axel Lin
     
  • The Input Audio Data Bit Length Select is controlled by BIT[3:2] of
    WM8711_IFACE(07h) register.
    Current code incorrectly masks BIT[1:0] which is for Audio Data Format Select.

    Signed-off-by: Axel Lin
    Signed-off-by: Mark Brown
    Cc: stable@kernel.org

    Axel Lin
     
  • v3: detection code is x86 and KVM specific, hide it under ifdef
    v2: add detection for virtual environments (KVM and Parallels)

    This patch is intended to improve performance in virtualized environments
    like Parallels Desktop or KVM/VirtualBox/QEMU (virtual ICH/AC97 audio).

    I/O access is very time-expensive operation in virtual world: VCPU
    can be rescheduled and in the worst case we get more than 10ms delay on
    each I/O access.

    In the virtual environment loop exit rule
    (old_civ == current_civ && old_picb == current_picb) is never satisfied,
    because old_picb is never the same as current_picb due to delay inspired
    by reading current_civ. As a result loop ended by timeout and we get 10x
    more I/O operations.

    Experimental data from Prallels Desktop 7, RHEL6 guest (I/O ops per
    second):

    Original code:
    In Port Counter Callback
    f014 41550 fffff00000179d00 ac97_bm_read_civ+0x000
    f018 41387 fffff0000017a580 ac97_bm_read_picb+0x000

    With patch:
    In Port Counter Callback
    f014 4090 fffff00000179d00 ac97_bm_read_civ+0x000
    f018 1964 fffff0000017a580 ac97_bm_read_picb+0x000

    Signed-off-by: Konstantin Ozerkov
    Signed-off-by: Denis V. Lunev
    Signed-off-by: Takashi Iwai

    Konstantin Ozerkov
     
  • From the Windows INF file, we know the firmware ranges for all RME
    cards. For PCIe, a single revision ID per device (RayDAT, MADI, AIO,
    AES) is used. Contrary, the older PCI versions use ranges, that is,
    one revision ID per firmware version.

    Instead of listing all possible revisions individually, match the range.

    This commit enables all MADI and AES PCI versions ever shipped.

    Signed-off-by: Adrian Knoth
    Signed-off-by: Takashi Iwai

    Adrian Knoth
     
  • HDSP_VERSION_BIT has to be ORed with HDSP_S_LOAD. This fixes the detection
    of at least some RME RPM boxes.

    Signed-off-by: Adrian Knoth
    Signed-off-by: Takashi Iwai

    Adrian Knoth
     
  • SNDRV_HDSPM_IOCTL_GET_STATUS is supposed to query the current card
    status, so we have to return what we receive on the MADI wire (RX), not
    what we transmit (TX) to others. The latter is a config item to be
    queried via SNDRV_HDSPM_IOCTL_GET_CONFIG.

    Signed-off-by: Adrian Knoth
    Signed-off-by: Takashi Iwai

    Adrian Knoth