17 Jan, 2012

1 commit

  • * 'fixes' of git://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-arm:
    ARM: sa11x0: assabet: fix build warning
    ARM: Add arm_memblock_steal() to allocate memory away from the kernel
    ARM: 7275/1: LPAE: Check the CPU support for the long descriptor format
    ARM: 7274/1: NUC900: Rename nuc900-audio platform device to nuc900-ac97
    ARM: 7272/1: S3C24XX: Fix build error for missing
    ARM: 7271/1: Fix typo in conversion of ARCH_NR_GPIOS to Kconfig

    Linus Torvalds
     

15 Jan, 2012

1 commit

  • * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (119 commits)
    MIPS: Delete unused function add_temporary_entry.
    MIPS: Set default pci cache line size.
    MIPS: Flush huge TLB
    MIPS: Octeon: Remove SYS_SUPPORTS_HIGHMEM.
    MIPS: Octeon: Add support for OCTEON II PCIe
    MIPS: Octeon: Update PCI Latency timer and enable more error reporting.
    MIPS: Alchemy: Update cpu-feature-overrides
    MIPS: Alchemy: db1200: Improve PB1200 detection.
    MIPS: Alchemy: merge Au1000 and Au1300-style IRQ controller code.
    MIPS: Alchemy: chain IRQ controllers to MIPS IRQ controller
    MIPS: Alchemy: irq: register pm at irq init time
    MIPS: Alchemy: Touchscreen support on DB1100
    MIPS: Alchemy: Hook up IrDA on DB1000/DB1100
    net/irda: convert au1k_ir to platform driver.
    MIPS: Alchemy: remove unused board headers
    MTD: nand: make au1550nd.c a platform_driver
    MIPS: Netlogic: Mark Netlogic chips as SMT capable
    MIPS: Netlogic: Add support for XLP 3XX cores
    MIPS: Netlogic: Merge some of XLR/XLP wakup code
    MIPS: Netlogic: Add default XLP config.
    ...

    Fix up trivial conflicts in arch/mips/kernel/{perf_event_mipsxx.c,
    traps.c} and drivers/tty/serial/Makefile

    Linus Torvalds
     

13 Jan, 2012

4 commits

  • Russell King
     
  • This change ensures the platform device name matches nuc900-ac97 platform
    driver name.

    Signed-off-by: Axel Lin
    Acked-by: Wan Zongshun
    Signed-off-by: Russell King

    Axel Lin
     
  • For historical reasons, we allow module_param(bool) to take an int (or
    an unsigned int). That's going away.

    A few drivers really want an int: they set it to -1 and a parameter
    will set it to 0 or 1. This sucks: reading them from sysfs will give
    'Y' for both -1 and 1, but if we change it to an int, then the users
    might be broken (if they did "param" instead of "param=1").

    Use a new 'bint' parser for them.

    (ntfs has a different problem: it needs an int for debug_msgs because
    it's also exposed via sysctl.)

    Cc: Steve Glendinning
    Cc: Jean Delvare
    Cc: Guenter Roeck
    Cc: Hoang-Nam Nguyen
    Cc: Christoph Raisch
    Cc: Roland Dreier
    Cc: Sean Hefty
    Cc: Hal Rosenstock
    Cc: linux390@de.ibm.com
    Cc: Anton Altaparmakov
    Cc: Jaroslav Kysela
    Cc: Takashi Iwai
    Cc: lm-sensors@lm-sensors.org
    Cc: linux-rdma@vger.kernel.org
    Cc: linux-s390@vger.kernel.org
    Cc: linux-ntfs-dev@lists.sourceforge.net
    Cc: alsa-devel@alsa-project.org
    Acked-by: Takashi Iwai (For the sound part)
    Acked-by: Guenter Roeck (For the hwmon driver)
    Signed-off-by: Rusty Russell

    Rusty Russell
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (526 commits)
    ASoC: twl6040 - Add method to query optimum PDM_DL1 gain
    ALSA: hda - Fix the lost power-setup of seconary pins after PM resume
    ALSA: usb-audio: add Yamaha MOX6/MOX8 support
    ALSA: virtuoso: add S/PDIF input support for all Xonars
    ALSA: ice1724 - Support for ooAoo SQ210a
    ALSA: ice1724 - Allow card info based on model only
    ALSA: ice1724 - Create capture pcm only for ADC-enabled configurations
    ALSA: hdspm - Provide unique driver id based on card serial
    ASoC: Dynamically allocate the rtd device for a non-empty release()
    ASoC: Fix recursive dependency due to select ATMEL_SSC in SND_ATMEL_SOC_SSC
    ALSA: hda - Fix the detection of "Loopback Mixing" control for VIA codecs
    ALSA: hda - Return the error from get_wcaps_type() for invalid NIDs
    ALSA: hda - Use auto-parser for HP laptops with cx20459 codec
    ALSA: asihpi - Fix potential Oops in snd_asihpi_cmode_info()
    ALSA: hdsp - Fix potential Oops in snd_hdsp_info_pref_sync_ref()
    ALSA: hda/cirrus - support for iMac12,2 model
    ASoC: cx20442: add bias control over a platform provided regulator
    ALSA: usb-audio - Avoid flood of frame-active debug messages
    ALSA: snd-usb-us122l: Delete calls to preempt_disable
    mfd: Put WM8994 into cache only mode when suspending
    ...

    Fix up trivial conflicts in:
    - arch/arm/mach-s3c64xx/mach-crag6410.c:
    renamed speyside_wm8962 to tobermory, added littlemill right
    next to it
    - drivers/base/regmap/{regcache.c,regmap.c}:
    duplicate diff that had already come in with other changes in
    the regmap tree

    Linus Torvalds
     

12 Jan, 2012

3 commits


11 Jan, 2012

12 commits

  • Takashi Iwai
     
  • The DL1 PDM interface adds a little gain depending on the output device.
    Add a method to retrieve the gain value for machine driver usage.

    Signed-off-by: Liam Girdwood

    Liam Girdwood
     
  • When multiple headphone or other detectable output pins are present,
    the power-map has to be updated after resume appropriately, but the
    current driver doesn't check all pins but only the first pin (since
    it's enough to check it for the mute-behavior). This resulted in the
    silent output from the secondary outputs after PM resume.

    This patch fixes the problem by checking all pins at (re-)init time.

    Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=740347

    Cc:
    Signed-off-by: Takashi Iwai

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

    Clemens Ladisch
     
  • All Xonar cards support S/PDIF input, but the cards without optical or
    coaxial plugs have only undocumented pin connectors. Support for the
    ST/STX was already added in a previous patch; this adds support for the
    D1/DX (JP2), DG (J5), DS (J5), and HDAV Slim (J12).

    Many thanks to Zoltan Miklos for testing the DS and DX.

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

    Clemens Ladisch
     
  • This card shares PCI ids with Chaintec AV710. Therefore, it will not be
    detected automatically, it can only be activated by the module parameter
    model=sq210a.

    Signed-off-by: Pavel Hofman
    Signed-off-by: Takashi Iwai

    Pavel Hofman
     
  • When two different cards share the same PCI vendor/subvendor
    identification, allow card info based on model only.
    Do not require subvendor ID.

    Signed-off-by: Pavel Hofman
    Signed-off-by: Takashi Iwai

    Pavel Hofman
     
  • Add the capture pcm only if there is at least one ADC configured in
    the SYSCONF register.

    Signed-off-by: Pavel Hofman
    Signed-off-by: Takashi Iwai

    Pavel Hofman
     
  • Before, /proc/asound looked like this:

    2 [Default ]: HDSPM - RME RayDAT_f1cd85
    RME RayDAT S/N 0xf1cd85 at 0xf7300000, irq 18

    In case of a second HDSPM card, its name would be Default_1. This is
    cumbersome, because the order of the cards isn't stable across reboots.

    To help userspace tools referring to the correct card, this commit
    provides a unique id for each card:

    2 [HDSPMxf1cd85 ]: HDSPM - RME RayDAT_f1cd85
    RME RayDAT S/N 0xf1cd85 at 0xf7300000, irq 18

    In this example, userspace (configuration files) would then use
    hw:HDSPMxf1cd85 to choose the right card.

    The serial is masked to 24bits, so this string is always shorter than
    sixteen chars.

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

    Adrian Knoth
     
  • The device model needs a release() function so it can free devices when
    they become dereferenced. Do that for rtds.

    Signed-off-by: Mark Brown

    Mark Brown
     
  • commit 739be96 "ASoC: Fix build dependency for SND_ATMEL_SOC_SSC"
    introduces below build warnings:

    drivers/misc/Kconfig:212:error: recursive dependency detected!
    drivers/misc/Kconfig:212: symbol ATMEL_SSC is selected by SND_ATMEL_SOC_SSC
    sound/soc/atmel/Kconfig:9: symbol SND_ATMEL_SOC_SSC is selected by SND_AT91_SOC_SAM9G20_WM8731
    sound/soc/atmel/Kconfig:18: symbol SND_AT91_SOC_SAM9G20_WM8731 depends on ATMEL_SSC

    SND_ATMEL_SOC_SSC needs ATMEL_SSC to pass compilation.
    This patch remove the "select ATMEL_SSC" from SND_ATMEL_SOC_SSC to avoid above
    warnings. And then ensures all the machine drivers that select SND_ATMEL_SOC_SSC
    need to depend on ATMEL_SSC.

    Reported-by: Stephen Rothwell
    Signed-off-by: Axel Lin
    Signed-off-by: Mark Brown

    Axel Lin
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (40 commits)
    regulator: set constraints.apply_uV to 0 in of_get_fixed_voltage_config
    regulator: max8925: fix enabled/disabled judgement mistake
    regulator: add regulator_bulk_force_disable function
    regulator: pass regulator_register of_node in fixed voltage driver
    regulator: add regulator_force_disable() definition for !CONFIG_REGULATOR
    regulator: Enable supply regulator if child rail is enabled.
    regulator: mc13892: Convert to devm_kzalloc()
    regulator: mc13783: Convert to devm_kzalloc()
    regulator: Fix checking return value of create_regulator
    regulator: Fix the error handling if create_regulator fails
    regulator: Export regulator_is_supported_voltage()
    regulator: mc13892: add device tree probe support
    regulator: mc13892: remove the unnecessary prefix from regulator name
    regulator: Convert wm831x regulator drivers to devm_kzalloc()
    regulator: da9052: Staticize non-exported symbols
    regulator: Replace kzalloc with devm_kzalloc and if-else with a switch-case for da9052-regulator
    regulator: Update da9052-regulator for DT changes
    regulator: DA9052/53 Regulator support
    regulator: pass device_node to of_get_regulator_init_data()
    regulator: If a single voltage is set with device tree then set apply_uV
    ...

    Linus Torvalds
     

10 Jan, 2012

10 commits

  • Currently the driver checks only the out_mix_path[] for the primary
    output route for judging whether to create the loopback-mixing control
    or not. But, there are cases where aamix-routing is available only on
    headphone or speaker paths but not on the primary output path. So, the
    driver ignores such cases inappropriately.

    This patch fixes the check of the loopback-mixing control by testing
    all mix-routing paths.

    Cc:
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • When an invalid NID is given, get_wcaps() returns zero as the error,
    but get_wcaps_type() takes it as the normal value and returns a bogus
    AC_WID_AUD_OUT value. This confuses the parser.

    With this patch, get_wcaps_type() returns -1 when value 0 is given,
    i.e. an invalid NID is passed to get_wcaps().

    Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=740118

    Cc:
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • These laptops can work well with the auto-parser and their BIOS setups,
    and in addition, the auto-parser fixes the problem with S3/S4 where
    the unsol event handling is killed after resume due to fallback to the
    single-cmd mode.

    Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=740115

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

    Takashi Iwai
     
  • clock management changes for i.MX

    Another simple series related to clock management, this time only for
    imx.

    * tag 'clk' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
    ARM: mxs: select HAVE_CLK_PREPARE for clock
    clk: add config option HAVE_CLK_PREPARE into Kconfig
    ASoC: mxs-saif: convert to clk_prepare/clk_unprepare
    video: mxsfb: convert to clk_prepare/clk_unprepare
    serial: mxs-auart: convert to clk_prepare/clk_unprepare
    net: flexcan: convert to clk_prepare/clk_unprepare
    mtd: gpmi-lib: convert to clk_prepare/clk_unprepare
    mmc: mxs-mmc: convert to clk_prepare/clk_unprepare
    dma: mxs-dma: convert to clk_prepare/clk_unprepare
    net: fec: add clk_prepare/clk_unprepare
    ARM: mxs: convert platform code to clk_prepare/clk_unprepare
    clk: add helper functions clk_prepare_enable and clk_disable_unprepare

    Fix up trivial conflicts in drivers/net/ethernet/freescale/fec.c due to
    commit 0ebafefcaa7a ("net: fec: add clk_prepare/clk_unprepare") clashing
    trivially with commit e163cc97f9ac ("net/fec: fix the .remove code").

    Linus Torvalds
     
  • Driver specific changes

    Again, a lot of platforms have changes in here: pxa, samsung, omap,
    at91, imx, ...

    * tag 'drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (54 commits)
    ARM: sa1100: clean up of the clock support
    ARM: pxa: add dummy clock for sa1100-rtc
    RTC: sa1100: support sa1100, pxa and mmp soc families
    RTC: sa1100: remove redundant code of setting alarm
    RTC: sa1100: Clean out ost register
    Input: zylonite-wm97xx - replace IRQ_GPIO() with gpio_to_irq()
    pcmcia: pxa: replace IRQ_GPIO() with gpio_to_irq()
    ARM: EXYNOS: Modified files for SPI consolidation work
    ARM: S5P64X0: Enable SDHCI support
    ARM: S5P64X0: Add lookup of sdhci-s3c clocks using generic names
    ARM: S5P64X0: Add HSMMC setup for host Controller
    ARM: EXYNOS: Add USB OHCI support to ORIGEN board
    USB: Add Samsung Exynos OHCI diver
    ARM: EXYNOS: Add USB OHCI support to SMDKV310 board
    ARM: EXYNOS: Add USB OHCI device
    net: macb: fix build break with !CONFIG_OF
    i2c: tegra: Support DVC controller in device tree
    i2c: tegra: Add __devinit/exit to probe/remove
    net/at91_ether: use gpio_is_valid for phy IRQ line
    ARM: at91/net: add macb ethernet controller in 9g45/9g20 DT
    ...

    Linus Torvalds
     
  • New feature development

    This adds support for new features, and contains stuff from most
    platforms. A number of these patches could have fit into other
    branches, too, but were small enough not to cause too much
    confusion here.

    * tag 'devel' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (28 commits)
    mfd/db8500-prcmu: remove support for early silicon revisions
    ARM: ux500: fix the smp_twd clock calculation
    ARM: ux500: remove support for early silicon revisions
    ARM: ux500: update register files
    ARM: ux500: register DB5500 PMU dynamically
    ARM: ux500: update ASIC detection for U5500
    ARM: ux500: support DB8520
    ARM: picoxcell: implement watchdog restart
    ARM: OMAP3+: hwmod data: Add the default clockactivity for I2C
    ARM: OMAP3: hwmod data: disable multiblock reads on MMC1/2 on OMAP34xx/35xx <= ES2.1
    ARM: OMAP: USB: EHCI and OHCI hwmod structures for OMAP4
    ARM: OMAP: USB: EHCI and OHCI hwmod structures for OMAP3
    ARM: OMAP: hwmod data: Add support for AM35xx UART4/ttyO3
    ARM: Orion: Remove address map info from all platform data structures
    ARM: Orion: Get address map from plat-orion instead of via platform_data
    ARM: Orion: mbus_dram_info consolidation
    ARM: Orion: Consolidate the address map setup
    ARM: Kirkwood: Add configuration for MPP12 as GPIO
    ARM: Kirkwood: Recognize A1 revision of 6282 chip
    ARM: ux500: update the MOP500 GPIO assignments
    ...

    Linus Torvalds
     
  • Dan Carpenter reported that setting 0 to uinfo->value.enumerated.items
    in snd_asihpi_cmode_info() may lead to Oops. This function should
    return an error immediately in such a case instead.

    Cc: Dan Carpenter
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • Dan Carpenter reported that setting 0 to uinfo->value.enumerated.items
    in snd_hdsp_info_pref_sync_ref() may lead to Oops. This function should
    return an error immediately in such a case instead.

    Cc: Dan Carpenter
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • This early 2011 model just need to have headphones on GPI02
    instead of GPI01, and use BIOS pincfgs.
    It is detected by codec SSID.
    The iMac12,1 model is known to work the same way, although maybe
    not with the same codec SSID.

    Signed-off-by: Jérémy Lal
    Signed-off-by: Takashi Iwai

    Jérémy Lal
     
  • Conflicts:
    arch/arm/mach-mxs/include/mach/common.h

    Pull in previous samsung conflict merges and do a trivial
    merge of an mxs double-add conflict.

    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     

09 Jan, 2012

6 commits

  • Now that a regulator device for controlling the codec chip reset state
    over a platform agnostic regulator API is available on the only board
    using this driver so far, extend the driver with a bias control function
    which will request virtual power to the codec chip from that virtual
    regulator, and will supersede the present implementation existing at the
    sound card level.

    Thanks to the regulator sharing mechanism, both the old (the sound card)
    and the new (the codec) implementations should coexist smoothly until
    the sound card file is updated. For this to work as expected, update the
    sound card .set_bias_level callback to not touch codec->dapm.bias_level.

    While extending the cx20442 structure, drop unused control_type member.

    Created against linxu-3.2-rc6, tested on top of patch 1/4 "ARM: OMAP1:
    ams-delta: set up a regulator over the modem reset GPIO pin".

    Signed-off-by: Janusz Krzysztofik
    Acked-by: Mark Brown
    Signed-off-by: Liam Girdwood

    Janusz Krzysztofik
     
  • With some buggy devices, the usb-audio driver may give "frame xxx active"
    kernel messages too often. Better to keep it as debug-only using
    snd_printdd(), and also add the rate-limit for avoiding floods.

    Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=738681

    Cc:
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • They are not needed here.

    Signed-off-by: Karsten Wiese
    Cc: stable@kernel.org
    Signed-off-by: Takashi Iwai

    Karsten Wiese
     
  • Signed-off-by: Mark Brown

    Mark Brown
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (53 commits)
    Kconfig: acpi: Fix typo in comment.
    misc latin1 to utf8 conversions
    devres: Fix a typo in devm_kfree comment
    btrfs: free-space-cache.c: remove extra semicolon.
    fat: Spelling s/obsolate/obsolete/g
    SCSI, pmcraid: Fix spelling error in a pmcraid_err() call
    tools/power turbostat: update fields in manpage
    mac80211: drop spelling fix
    types.h: fix comment spelling for 'architectures'
    typo fixes: aera -> area, exntension -> extension
    devices.txt: Fix typo of 'VMware'.
    sis900: Fix enum typo 'sis900_rx_bufer_status'
    decompress_bunzip2: remove invalid vi modeline
    treewide: Fix comment and string typo 'bufer'
    hyper-v: Update MAINTAINERS
    treewide: Fix typos in various parts of the kernel, and fix some comments.
    clockevents: drop unknown Kconfig symbol GENERIC_CLOCKEVENTS_MIGR
    gpio: Kconfig: drop unknown symbol 'CS5535_GPIO'
    leds: Kconfig: Fix typo 'D2NET_V2'
    sound: Kconfig: drop unknown symbol ARCH_CLPS7500
    ...

    Fix up trivial conflicts in arch/powerpc/platforms/40x/Kconfig (some new
    kconfig additions, close to removed commented-out old ones)

    Linus Torvalds
     
  • * 'for-linus2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (165 commits)
    reiserfs: Properly display mount options in /proc/mounts
    vfs: prevent remount read-only if pending removes
    vfs: count unlinked inodes
    vfs: protect remounting superblock read-only
    vfs: keep list of mounts for each superblock
    vfs: switch ->show_options() to struct dentry *
    vfs: switch ->show_path() to struct dentry *
    vfs: switch ->show_devname() to struct dentry *
    vfs: switch ->show_stats to struct dentry *
    switch security_path_chmod() to struct path *
    vfs: prefer ->dentry->d_sb to ->mnt->mnt_sb
    vfs: trim includes a bit
    switch mnt_namespace ->root to struct mount
    vfs: take /proc/*/mounts and friends to fs/proc_namespace.c
    vfs: opencode mntget() mnt_set_mountpoint()
    vfs: spread struct mount - remaining argument of next_mnt()
    vfs: move fsnotify junk to struct mount
    vfs: move mnt_devname
    vfs: move mnt_list to struct mount
    vfs: switch pnode.h macros to struct mount *
    ...

    Linus Torvalds
     

08 Jan, 2012

3 commits

  • The serial number is used multiple times in hdspm.c. Since it belongs
    to the card, let's store it in struct hdspm and refer to it whenever
    necessary.

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

    Adrian Knoth
     
  • A malicious USB device may feed in carefully crafted min/max/res values,
    so that the inner loop in parse_uac2_sample_rate_range() could run for
    a long time or even never terminate, e.g., given max = INT_MAX.

    Also nr_rates could be a large integer, which causes an integer overflow
    in the subsequent call to kmalloc() in parse_audio_format_rates_v2().
    Thus, kmalloc() would allocate a smaller buffer than expected, leading
    to a memory corruption.

    To exploit the two vulnerabilities, an attacker needs physical access
    to the machine to plug in a malicious USB device.

    This patch makes two changes.

    1) The type of "rate" is changed to unsigned int, so that the loop could
    stop once "rate" is larger than INT_MAX.

    2) Limit nr_rates to 1024.

    Suggested-by: Takashi Iwai
    Signed-off-by: Xi Wang
    Signed-off-by: Takashi Iwai

    Xi Wang
     
  • Fix channels swapping of 4 channels playback by
    using vortex_adbdma_stopfifo instead of vortex_adbdma_pausefifo
    for SNDRV_PCM_TRIGGER_STOP event

    Signed-off-by: Raymond Yau
    Signed-off-by: Takashi Iwai

    Raymond Yau