22 Apr, 2012

1 commit

  • Pull MFD fixes from Samuel Ortiz:
    "We have 3 build fixes, a OMAP USB host PHY reset fix and the twl6040
    conversion to an i2c driver. The latter may not sound like a fix but
    the twl6040 MFD driver won't probe without it, triggering an OMAP4
    audio regression."

    * tag 'mfd-for-linus-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6:
    mfd: Fix modular builds of rc5t583 regulator support
    mfd: Fix asic3_gpio_to_irq
    ARM: OMAP3: USB: Fix the EHCI ULPI PHY reset issue
    mfd: Convert twl6040 to i2c driver, and separate it from twl core
    mfd : Fix dbx500 compilation error

    Linus Torvalds
     

21 Apr, 2012

1 commit

  • Pull sound fixes from Takashi Iwai:
    "Fixes for a few regressions of HD-audio, originated partly from 3.4
    and partly 3.3.

    The fixes for ThinkPad docking-station are for 3.3 kernels, thus they
    are based on 3.3 then merged back to 3.4, so that they can be merged
    to stable tree cleanly. The non-trivial merge conflicts are because
    of this action.

    In addition, a couple of trivial fixes for documentation and a long-
    standing issue in the listing of built-in sound driver at boot time."

    * tag 'sound-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
    ALSA: hda/conexant - Set up the missing docking-station pins
    ALSA: hda/conexant - Don't set HP pin-control bit unconditionally
    ALSA: workaround: change the timing of alsa_sound_last_init()
    ALSA: hda/sigmatel - Fix inverted mute LED
    ALSA: hda/realtek - Fix regression on Quanta/Gericom KN1
    ALSA: fix core/vmaster.c kernel-doc warning

    Linus Torvalds
     

19 Apr, 2012

6 commits

  • Merge fixes for Thinkpad docking-station regressions for 3.3 kernels
    back to 3.4. These were committed in that branch to make the stable
    merging easier.

    Conflicts:
    sound/pci/hda/patch_conexant.c

    Takashi Iwai
     
  • ThinkPad 410,420,510,520 and X201 with cx50585 & co chips have the
    docking-station ports, but BIOS doesn't initialize for these pins.
    Thus, like the former X200, we need to set up the pins manually in the
    driver.

    The odd part is that the same PCI SSID is used for X200 and T400, thus
    we need to prepare individual fixup tables for cx5051 and others.

    Bugzilla entries:
    https://bugzilla.redhat.com/show_bug.cgi?id=808559
    https://bugzilla.redhat.com/show_bug.cgi?id=806217
    https://bugzilla.redhat.com/show_bug.cgi?id=810697

    Reported-by: Josh Boyer
    Reported-by: Jens Taprogge
    Tested-by: Jens Taprogge
    Cc:
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • Some output pins on Conexant chips have no HP control bit, but the
    auto-parser initializes these pins unconditionally with PIN_HP.

    Check the pin-capability and avoid the HP bit if not supported.

    Cc:
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • Current alsa_sound_last_init() was called as __initcall().
    So, on current ALSA, only devices that had been properly
    registered at this point were shown.
    So, it will show "No soundcards found" if driver requests
    probe deferment. it's often misleading.
    This patch delays the timing of alsa_sound_last_init()
    as workaround.

    Signed-off-by: Kuninori Morimoto
    Reviwed-by: Mark Brown
    Signed-off-by: Takashi Iwai

    Kuninori Morimoto
     
  • While refactoring the mute-LED handling for HP laptops, I messed up
    the polarity check in a wrong way. The red (or the mute-LED if any)
    should appear in the muted state, corresponding to GPIO on.

    Reported-by: Mikko Vinni
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • Through the transition to the auto-parser, the support for
    Quanta/Gericom KN1 got broken. There are two problems behind it:

    - This machine doesn't like the default COEF setup for ALC260 we take
    now as default

    - BIOS doesn't set the pins correctly at all; especially the machine
    uses only the pin 0x0f for both headphone and speaker

    This patch adds the fixup as a workaround for these issues.

    Reported-and-tested-by: Uros Vampl
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     

18 Apr, 2012

1 commit


16 Apr, 2012

2 commits

  • Complete the separation of the twl6040 from the twl core since
    it is a separate chip, not part of the twl6030 PMIC.

    Make the needed Kconfig changes for the depending drivers at the
    same time to avoid breaking the kernel build (vibra, ASoC components).

    Signed-off-by: Peter Ujfalusi
    Reviewed-by: Mark Brown
    Acked-by: Tony Lindgren
    Acked-by: Dmitry Torokhov
    Signed-off-by: Samuel Ortiz

    Peter Ujfalusi
     
  • Pull another round of sound fixes from Takashi Iwai:
    "A few regression fixes for Realtek HD-audio codecs, mainly specific to
    some laptop models."

    * tag 'sound-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
    ALSA: hda/realtek - Fix mem leak (and rid us of trailing whitespace).
    ALSA: hda/realtek - Add quirk for Mac Pro 5,1 machines
    ALSA: hda/realtek - Add a fixup entry for Acer Aspire 8940G
    ALSA: hda/realtek - Fix GPIO1 setup for Acer Aspire 4930 & co
    ALSA: hda/realtek - Add a few ALC882 model strings back

    Linus Torvalds
     

13 Apr, 2012

3 commits

  • In sound/pci/hda/patch_realtek.c::alc_auto_fill_dac_nids(), in the
    'for (;;)' loop, if the 'badness' value returned from
    fill_and_eval_dacs() is negative, then we'll return from the function
    without freeing the memory we allocated for 'best_cfg', thus leaking.
    Fix the leak by kfree()'ing the memory when badness is negative.

    While I was there I also noticed some trailing whitespace in the
    function that I removed (along with all other trailing whitespace in
    the file) - it didn't seem worth-while to do that as two patches, so I
    hope it's OK that I just did it all as one patch.

    Signed-off-by: Jesper Juhl
    Signed-off-by: Takashi Iwai

    Jesper Juhl
     
  • A user reported that setting model=imac24 used to allow sound to work on their
    Mac Pro 5,1 machine. Commit 5671087ffa "Move ALC885 macpro and imac24 models
    to auto-parser" removed this model option. All Mac machines are now explicitly
    handled with a quirk and the auto-parser. This adds a quirk for the device
    found on the Mac Pro 5,1 machines.

    This (partially) fixes https://bugzilla.redhat.com/show_bug.cgi?id=808559

    [sorted the new entry in the ID number order by tiwai]

    Reported-by: Gabriel Somlo
    Signed-off-by: Josh Boyer
    Signed-off-by: Takashi Iwai

    Josh Boyer
     
  • It's compatible with 8930G.
    Using the same fixup gives the proper 5.1 sound back.

    Reported-and-tested-by: Dany Martineau
    Cc: [v3.3+]
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     

12 Apr, 2012

3 commits

  • Add GPIO1 setup explicitly for Acer Aspire 493x & co.
    This could be set by alc_auto_init_amp(), but it's safer to set it
    more explicitly in the fixup table.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • Pull sound fixes from Takashi Iwai:
    - A series of fixes for Conexant 20549 HD-audio codec chip
    - A workaround for HDMI hotplug debug prints that annoyed people
    - A fix for the new support of platform DAPM contexts
    - Many driver-specific minor fixes

    * tag 'sound-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
    ALSA: hda - hide HDMI/ELD printks unless snd.debug=2
    ALSA: sound/isa/sscape.c: add missing resource-release code
    sound: sound/oss/msnd_pinnacle.c: add vfrees
    ALSA: hda - clean up CX20549 test mixer setup
    ALSA: hda - CX20549 doesn't need pin_amp_workaround.
    ALSA: hda - Remove CD control from model=benq for CX20549
    ALSA: hda - fix record volume controls of CX20459 ("Venice")
    ALSA: hda - Rename capture sources of CX20549 to match common conventions
    ALSA: hda - Fix proc output for ADC amp values of CX20549
    ASoC: tegra: fix i2s compilation when !CONFIG_DEBUG_FS
    ASoC: set idle_bias_off=1 for all platform DAPM contexts
    ASoC: imx-audmux: Check for NULL pointer
    ASoC: imx-audmux: Fix ssi port numbers in sysfs
    ASoC: ak4642: fixup: mute needs +1 step
    MAINTAINERS: Don't list everyone working on Wolfson drivers
    MAINTAINERS: Add missing ASoC OMAP co-maintainer
    ASoC: pxa: pxa2xx-i2s: add io.h for IOMEM macro
    ASoC: tegra: ensure clocks are enabled when touching registers
    ASoC: sgtl5000: Enable VAG when DAC/ADC up
    ALSA: asihpi - fix return value of hpios_locked_mem_alloc()

    Linus Torvalds
     
  • Pull media fixes from Mauro Carvalho Chehab:

    - dvb core: there is a regression found when used with xine. For
    whatever unknown reason, xine (and xine-lib clients) wants that the
    frontend to tell what frequency he is using even before the PLL lock
    (or at least, it expects a non-zero frequency).

    On DVB, the frequency is only actually known after a frequency
    zig-zag seek, done by the DVB core. Anyway, the fix was trivial.
    That solves Fedora BZ#808871.

    - ivtv: fix a regression when selecting the language channel

    - uvc: fix a race-related crash

    - it913x: fixes firmware loading

    - two trivial patches (a dependency issue at a radio driver at sound
    Kconfig, and a warning fix on dvb).

    * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
    [media] uvcvideo: Fix race-related crash in uvc_video_clock_update()
    [media] Drivers/media/radio: Fix build error
    [media] dvb_frontend: fix compiler warning
    [media] it913x: fix firmware loading errors
    [media] ivtv: Fix AUDIO_(BILINGUAL_)CHANNEL_SELECT regression
    [media] dvb_frontend: regression fix: userspace ABI broken for xine

    Linus Torvalds
     

11 Apr, 2012

1 commit


10 Apr, 2012

3 commits


09 Apr, 2012

1 commit

  • On Sunday, April 01, 2012 21:09:34 Tracey Dent wrote:
    > radio-maxiradio depends on SND_FM801_TEA575X_BOOL to build or will
    > result in an build error such as:
    >
    > Kernel: arch/x86/boot/bzImage is ready (#1)
    > ERROR: "snd_tea575x_init" [drivers/media/radio/radio-maxiradio.ko] undefined!
    > ERROR: "snd_tea575x_exit" [drivers/media/radio/radio-maxiradio.ko] undefined!
    > WARNING: modpost: Found 6 section mismatch(es).
    > To see full details build your kernel with:
    > 'make CONFIG_DEBUG_SECTION_MISMATCH=y'
    > make[1]: *** [__modpost] Error 1
    > make: *** [modules] Error 2
    >
    > Select CONFIG_SND_TEA575X to fixes problem and enable
    > the driver to be built as desired.
    >
    > v2:
    > instead of selecting CONFIG_SND_FM801_TEA575X_BOOL, select
    > CONFIG_SND_TEA575X, which in turns selects CONFIG_SND_FM801_TEA575X_BOOL
    > and any other dependencies for it to build.

    No, this is the correct patch:

    RADIO_MAXIRADIO should be treated just like RADIO_SF16FMR2, I just didn't
    realize at the time that it had to be added as a SND_TEA575X dependency.

    Signed-off-by: Hans Verkuil
    Tested-by: Shea Levy
    Acked-by: Mauro Carvalho Chehab
    Signed-off-by: Mauro Carvalho Chehab

    Hans Verkuil
     

07 Apr, 2012

7 commits


06 Apr, 2012

4 commits

  • Commit d4a2eca "ASoC: Tegra I2S: Remove dependency on pdev->id" changed
    the prototype of tegra_i2s_debug_add, but didn't update the dummy inline
    used when !CONFIG_DEBUG_FS. Fix that.

    Signed-off-by: Stephen Warren
    Signed-off-by: Mark Brown
    Cc: # 3.3

    Stephen Warren
     
  • Merge batch of fixes from Andrew Morton:
    "The simple_open() cleanup was held back while I wanted for laggards to
    merge things.

    I still need to send a few checkpoint/restore patches. I've been
    wobbly about merging them because I'm wobbly about the overall
    prospects for success of the project. But after speaking with Pavel
    at the LSF conference, it sounds like they're further toward
    completion than I feared - apparently davem is at the "has stopped
    complaining" stage regarding the net changes. So I need to go back
    and re-review those patchs and their (lengthy) discussion."

    * emailed from Andrew Morton : (16 patches)
    memcg swap: use mem_cgroup_uncharge_swap fix
    backlight: add driver for DA9052/53 PMIC v1
    C6X: use set_current_blocked() and block_sigmask()
    MAINTAINERS: add entry for sparse checker
    MAINTAINERS: fix REMOTEPROC F: typo
    alpha: use set_current_blocked() and block_sigmask()
    simple_open: automatically convert to simple_open()
    scripts/coccinelle/api/simple_open.cocci: semantic patch for simple_open()
    libfs: add simple_open()
    hugetlbfs: remove unregister_filesystem() when initializing module
    drivers/rtc/rtc-88pm860x.c: fix rtc irq enable callback
    fs/xattr.c:setxattr(): improve handling of allocation failures
    fs/xattr.c:listxattr(): fall back to vmalloc() if kmalloc() failed
    fs/xattr.c: suppress page allocation failure warnings from sys_listxattr()
    sysrq: use SEND_SIG_FORCED instead of force_sig()
    proc: fix mount -t proc -o AAA

    Linus Torvalds
     
  • Many users of debugfs copy the implementation of default_open() when
    they want to support a custom read/write function op. This leads to a
    proliferation of the default_open() implementation across the entire
    tree.

    Now that the common implementation has been consolidated into libfs we
    can replace all the users of this function with simple_open().

    This replacement was done with the following semantic patch:

    @ open @
    identifier open_f != simple_open;
    identifier i, f;
    @@
    -int open_f(struct inode *i, struct file *f)
    -{
    (
    -if (i->i_private)
    -f->private_data = i->i_private;
    |
    -f->private_data = i->i_private;
    )
    -return 0;
    -}

    @ has_open depends on open @
    identifier fops;
    identifier open.open_f;
    @@
    struct file_operations fops = {
    ...
    -.open = open_f,
    +.open = simple_open,
    ...
    };

    [akpm@linux-foundation.org: checkpatch fixes]
    Signed-off-by: Stephen Boyd
    Cc: Greg Kroah-Hartman
    Cc: Al Viro
    Cc: Julia Lawall
    Acked-by: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Stephen Boyd
     
  • The ASoC core currently defaults to using STANDBY rather than OFF for
    idle ASoC platform devices, which causes a permanent pm_runtime_get() on
    them. This keeps the device active unnecessarily. This can be especially
    problematic when the ASoC platform device and DAI device are the same
    device.

    The distinction between OFF and STANDBY is likely not relevant for ASoC
    platform drivers, since they aren't analog devices. So, solve this issue
    by hard-coding idle_bias_off = 1 for all ASoC platform devices. If this
    turns out to be a problem, this value could be sourced from the
    snd_soc_platform_driver, similarly to soc_probe_codec().

    Note: Prior to this change, this caused a large (10) runtime_active count
    for the Tegra I2S controller even when not in use, and a leak in that
    value as streams were started and stopped. This change probably hides a
    bug.

    Signed-off-by: Stephen Warren
    Signed-off-by: Mark Brown

    Stephen Warren
     

05 Apr, 2012

3 commits

  • Check for NULL pointer before accessing it.

    Signed-off-by: Fabio Estevam
    Signed-off-by: Mark Brown

    Fabio Estevam
     
  • Doing a 'cat /sys/kernel/debug/audmux/ssi7' causes the following oops to be printed by the kernel:

    Uhandled fault: external abort on non-linefetch (0x008) at 0xf53b003c
    Internal error: : 8 [#1] PREEMPT
    Modules linked in:
    CPU: 0 Not tainted (3.3.0-00033-gecc726e-dirty #307)
    PC is at audmux_read_file+0x68/0x2f4
    LR is at clk_enable+0x3c/0x48
    pc : [] lr : [] psr: a0000013
    sp : c3ad3f38 ip : c30a4000 fp : 00000003
    r10: 00001000 r9 : be83fb00 r8 : c3ad3f80
    r7 : c3ad3f80 r6 : 00000007 r5 : 00031010 r4 : c30a5000
    r3 : f53b0000 r2 : 0000003c r1 : 380fa100 r0 : c068dda0
    Flags: NzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
    Control: 0005317f Table: 83034000 DAC: 00000015
    Process cat (pid: 1042, stack limit = 0xc3ad2270)
    Stack: (0xc3ad3f38 to 0xc3ad4000)
    3f20: c3139180 00000000
    3f40: c3bc6500 00001000 be83fb00 c3ad3f80 00001000 c3ad2000 00000000 c0095f3c
    3f60: 00000003 c3bc6508 c3bc6500 be83fb00 00000000 00000000 00001000 c0096010
    3f80: 00000000 00000000 b6fe2050 00000000 00001000 be83fb00 00000003 00000003
    3fa0: c000eb88 c000e9e0 00001000 be83fb00 00000003 be83fb00 00001000 00000000
    3fc0: 00001000 be83fb00 00000003 00000003 00000001 00000001 00000000 00000003
    3fe0: 000bec8c be83fae0 0000f808 b6ea8d5c 60000010 00000003 7dff7ede 749bedf1
    [] (audmux_read_file+0x68/0x2f4) from [] (vfs_read+0xb0/0x144)
    [] (vfs_read+0xb0/0x144) from [] (sys_read+0x40/0x70)
    [] (sys_read+0x40/0x70) from [] (ret_fast_syscall+0x0/0x2c)
    Code: e1a02186 e2822004 e3500000 e7935186 (e7937002)
    ---[ end trace 4d046e31309023de ]---

    Fix the ssi port numbers in sysfs to fix this problem.

    Reported-by: Joan Carles
    Signed-off-by: Fabio Estevam
    Signed-off-by: Mark Brown

    Fabio Estevam
     
  • ak4642 out_tlv is +12.0dB to -115.0 dB, and it supports mute.
    But current settings didn't care +1 step for mute.
    This patch adds it

    Signed-off-by: Kuninori Morimoto
    Signed-off-by: Mark Brown
    Cc: stable@vger.kernel.org

    Kuninori Morimoto
     

03 Apr, 2012

3 commits


02 Apr, 2012

1 commit