1. 09 8月, 2016 1 次提交
  2. 04 8月, 2016 1 次提交
  3. 03 8月, 2016 1 次提交
  4. 01 8月, 2016 2 次提交
  5. 17 7月, 2016 1 次提交
  6. 13 7月, 2016 1 次提交
  7. 12 7月, 2016 2 次提交
  8. 08 7月, 2016 1 次提交
  9. 05 7月, 2016 1 次提交
  10. 30 6月, 2016 1 次提交
  11. 29 6月, 2016 2 次提交
  12. 28 6月, 2016 1 次提交
  13. 26 6月, 2016 1 次提交
    • B
      ALSA: hda - fix read before array start · 81e43960
      Bob Copeland 提交于
      UBSAN reports the following warning from accessing path->path[-1]
      in set_path_power():
      
      [   16.078040] ================================================================================
      [   16.078124] UBSAN: Undefined behaviour in sound/pci/hda/hda_generic.c:3981:17
      [   16.078198] index -1 is out of range for type 'hda_nid_t [10]'
      [   16.078270] CPU: 2 PID: 1738 Comm: modprobe Not tainted 4.7.0-rc1-wt+ #47
      [   16.078274] Hardware name: LENOVO 3443CTO/3443CTO, BIOS G6ET23WW (1.02 ) 08/14/2012
      [   16.078278]  ffff8800cb246000 ffff8800cb3638b8 ffffffff815c4fe3 0000000000000032
      [   16.078286]  ffff8800cb3638e0 ffffffffffffffff ffff8800cb3638d0 ffffffff8162443d
      [   16.078294]  ffffffffa0894200 ffff8800cb363920 ffffffff81624af7 0000000000000292
      [   16.078302] Call Trace:
      [   16.078311]  [<ffffffff815c4fe3>] dump_stack+0x86/0xd3
      [   16.078317]  [<ffffffff8162443d>] ubsan_epilogue+0xd/0x40
      [   16.078324]  [<ffffffff81624af7>] __ubsan_handle_out_of_bounds+0x67/0x70
      [   16.078335]  [<ffffffffa087665f>] set_path_power+0x1bf/0x230 [snd_hda_codec_generic]
      [   16.078344]  [<ffffffffa087880d>] add_pin_power_ctls+0x8d/0xc0 [snd_hda_codec_generic]
      [   16.078352]  [<ffffffffa087f190>] ? pin_power_down_callback+0x20/0x20 [snd_hda_codec_generic]
      [   16.078360]  [<ffffffffa0878947>] add_all_pin_power_ctls+0x107/0x150 [snd_hda_codec_generic]
      [   16.078370]  [<ffffffffa08842b3>] snd_hda_gen_parse_auto_config+0x2d73/0x49e0 [snd_hda_codec_generic]
      [   16.078376]  [<ffffffff81173360>] ? trace_hardirqs_on_caller+0x1b0/0x2c0
      [   16.078390]  [<ffffffffa089df27>] alc_parse_auto_config+0x147/0x310 [snd_hda_codec_realtek]
      [   16.078402]  [<ffffffffa08a332a>] patch_alc269+0x23a/0x560 [snd_hda_codec_realtek]
      [   16.078417]  [<ffffffffa0838644>] hda_codec_driver_probe+0xa4/0x1a0 [snd_hda_codec]
      [   16.078424]  [<ffffffff817bbac1>] driver_probe_device+0x101/0x380
      [   16.078430]  [<ffffffff817bbdf9>] __driver_attach+0xb9/0x100
      [   16.078438]  [<ffffffff817bbd40>] ? driver_probe_device+0x380/0x380
      [   16.078444]  [<ffffffff817b8d20>] bus_for_each_dev+0x70/0xc0
      [   16.078449]  [<ffffffff817bb087>] driver_attach+0x27/0x50
      [   16.078454]  [<ffffffff817ba956>] bus_add_driver+0x166/0x2c0
      [   16.078460]  [<ffffffffa0369000>] ? 0xffffffffa0369000
      [   16.078465]  [<ffffffff817bd13d>] driver_register+0x7d/0x130
      [   16.078477]  [<ffffffffa083816f>] __hda_codec_driver_register+0x6f/0x90 [snd_hda_codec]
      [   16.078488]  [<ffffffffa036901e>] realtek_driver_init+0x1e/0x1000 [snd_hda_codec_realtek]
      [   16.078493]  [<ffffffff8100215e>] do_one_initcall+0x4e/0x1d0
      [   16.078499]  [<ffffffff8119f54d>] ? rcu_read_lock_sched_held+0x6d/0x80
      [   16.078504]  [<ffffffff813701b1>] ? kmem_cache_alloc_trace+0x391/0x560
      [   16.078510]  [<ffffffff812bb314>] ? do_init_module+0x28/0x273
      [   16.078515]  [<ffffffff812bb387>] do_init_module+0x9b/0x273
      [   16.078522]  [<ffffffff811e3782>] load_module+0x20b2/0x3410
      [   16.078527]  [<ffffffff811df140>] ? m_show+0x210/0x210
      [   16.078533]  [<ffffffff813b2b26>] ? kernel_read+0x66/0xe0
      [   16.078541]  [<ffffffff811e4cfa>] SYSC_finit_module+0xba/0xc0
      [   16.078547]  [<ffffffff811e4d1e>] SyS_finit_module+0xe/0x10
      [   16.078552]  [<ffffffff81a860fc>] entry_SYSCALL_64_fastpath+0x1f/0xbd
      [   16.078556] ================================================================================
      
      Fix by checking path->depth before use.
      Signed-off-by: NBob Copeland <me@bobcopeland.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      81e43960
  14. 24 6月, 2016 2 次提交
  15. 22 6月, 2016 1 次提交
    • B
      ALSA: hda/tegra: iomem fixups for sparse warnings · c9058d43
      Ben Dooks 提交于
      The readl/writel are not being passed __iomem annotated
      variables, so fix the following sparse warnings by adding
      __iomem in:
      
      sound/pci/hda/hda_tegra.c:120:9: warning: incorrect type in argument 2 (different address spaces)
      sound/pci/hda/hda_tegra.c:120:9:    expected void volatile [noderef] <asn:2>*addr
      sound/pci/hda/hda_tegra.c:120:9:    got unsigned int [usertype] *addr
      sound/pci/hda/hda_tegra.c:125:16: warning: incorrect type in argument 1 (different address spaces)
      sound/pci/hda/hda_tegra.c:125:16:    expected void const volatile [noderef] <asn:2>*addr
      sound/pci/hda/hda_tegra.c:125:16:    got unsigned int [usertype] *addr
      sound/pci/hda/hda_tegra.c:134:13: warning: incorrect type in argument 1 (different address spaces)
      sound/pci/hda/hda_tegra.c:134:13:    expected void const volatile [noderef] <asn:2>*addr
      sound/pci/hda/hda_tegra.c:134:13:    got void *dword_addr
      sound/pci/hda/hda_tegra.c:137:9: warning: incorrect type in argument 2 (different address spaces)
      sound/pci/hda/hda_tegra.c:137:9:    expected void volatile [noderef] <asn:2>*addr
      sound/pci/hda/hda_tegra.c:137:9:    got void *dword_addr
      sound/pci/hda/hda_tegra.c:146:13: warning: incorrect type in argument 1 (different address spaces)
      sound/pci/hda/hda_tegra.c:146:13:    expected void const volatile [noderef] <asn:2>*addr
      sound/pci/hda/hda_tegra.c:146:13:    got void *dword_addr
      sound/pci/hda/hda_tegra.c:156:13: warning: incorrect type in argument 1 (different address spaces)
      sound/pci/hda/hda_tegra.c:156:13:    expected void const volatile [noderef] <asn:2>*addr
      sound/pci/hda/hda_tegra.c:156:13:    got void *dword_addr
      sound/pci/hda/hda_tegra.c:159:9: warning: incorrect type in argument 2 (different address spaces)
      sound/pci/hda/hda_tegra.c:159:9:    expected void volatile [noderef] <asn:2>*addr
      sound/pci/hda/hda_tegra.c:159:9:    got void *dword_addr
      sound/pci/hda/hda_tegra.c:168:13: warning: incorrect type in argument 1 (different address spaces)
      sound/pci/hda/hda_tegra.c:168:13:    expected void const volatile [noderef] <asn:2>*addr
      sound/pci/hda/hda_tegra.c:168:13:    got void *dword_addr
      sound/pci/hda/hda_tegra.c:173:23: warning: incorrect type in initializer (incompatible argument 2 (different address spaces))
      sound/pci/hda/hda_tegra.c:173:23:    expected void ( *reg_writel )( ... )
      sound/pci/hda/hda_tegra.c:173:23:    got void ( static [toplevel] *<noident> )( ... )
      sound/pci/hda/hda_tegra.c:174:22: warning: incorrect type in initializer (incompatible argument 1 (different address spaces))
      sound/pci/hda/hda_tegra.c:174:22:    expected unsigned int ( *reg_readl )( ... )
      sound/pci/hda/hda_tegra.c:174:22:    got unsigned int ( static [toplevel] *<noident> )( ... )
      sound/pci/hda/hda_tegra.c:175:23: warning: incorrect type in initializer (incompatible argument 2 (different address spaces))
      sound/pci/hda/hda_tegra.c:175:23:    expected void ( *reg_writew )( ... )
      sound/pci/hda/hda_tegra.c:175:23:    got void ( static [toplevel] *<noident> )( ... )
      sound/pci/hda/hda_tegra.c:176:22: warning: incorrect type in initializer (incompatible argument 1 (different address spaces))
      sound/pci/hda/hda_tegra.c:176:22:    expected unsigned short ( *reg_readw )( ... )
      sound/pci/hda/hda_tegra.c:176:22:    got unsigned short ( static [toplevel] *<noident> )( ... )
      sound/pci/hda/hda_tegra.c:177:23: warning: incorrect type in initializer (incompatible argument 2 (different address spaces))
      sound/pci/hda/hda_tegra.c:177:23:    expected void ( *reg_writeb )( ... )
      sound/pci/hda/hda_tegra.c:177:23:    got void ( static [toplevel] *<noident> )( ... )
      sound/pci/hda/hda_tegra.c:178:22: warning: incorrect type in initializer (incompatible argument 1 (different address spaces))
      sound/pci/hda/hda_tegra.c:178:22:    expected unsigned char ( *reg_readb )( ... )
      sound/pci/hda/hda_tegra.c:178:22:    got unsigned char ( static [toplevel] *<noident> )( ... )
      Signed-off-by: NBen Dooks <ben.dooks@codethink.co.uk>
      Acked-by: NThierry Reding <treding@nvidia.com>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      c9058d43
  16. 17 6月, 2016 1 次提交
  17. 16 6月, 2016 1 次提交
  18. 15 6月, 2016 1 次提交
  19. 09 6月, 2016 1 次提交
  20. 07 6月, 2016 1 次提交
  21. 03 6月, 2016 1 次提交
  22. 02 6月, 2016 1 次提交
    • T
      ALSA: hda - Turn off loopback mixing as default · fabc16fe
      Takashi Iwai 提交于
      So far, we enabled the loopback mixing control as default, as this
      behavior made somewhat compatible with the earlier HD-audio drivers
      for Realtek & co.  However, it's getting annoying as we've got more
      and more bug reports about the noise coming from the loopback route.
      Since the loopback mixing is used fairly rarely and often harmful
      (e.g. using PA), let's get rid of the default turn-on lines.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      fabc16fe
  23. 30 5月, 2016 2 次提交
  24. 25 5月, 2016 1 次提交
  25. 24 5月, 2016 1 次提交
  26. 20 5月, 2016 1 次提交
  27. 13 5月, 2016 1 次提交
  28. 11 5月, 2016 1 次提交
    • T
      ALSA: hda - Fix regression on ATI HDMI audio · 39669225
      Takashi Iwai 提交于
      The HDMI/DP audio output on ATI/AMD chips got broken due to the recent
      restructuring of chmap.  Fortunately, Daniel Exner could bisect, and
      pointed the culprit commit [739ffee9: ALSA: hda - Add hdmi chmap
      verb programming ops to chmap object].
      
      This commit moved some ops from hdmi_ops to chmap_ops, and reassigned
      the ops in the embedded chmap object in hdmi_spec instead.
      Unfortunately, the reassignment of these ops in patch_atihdmi() were
      moved into an if block that is performed only for old chips.  Thus, on
      newer chips, the generic ops is still used, which doesn't work for
      such ATI/AMD chips.
      
      This patch addresses the regression, simply by moving the assignment
      of chmap ops to the right place.
      
      Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=114981
      Fixes: 739ffee9 ('ALSA: hda - Add hdmi chmap verb programming ops to chmap object')
      Reported-and-tested-by: NDaniel Exner <dex@dragonslave.de>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      39669225
  29. 10 5月, 2016 2 次提交
  30. 09 5月, 2016 2 次提交
  31. 08 5月, 2016 1 次提交
  32. 26 4月, 2016 2 次提交
    • T
      ALSA: hda - Update BCLK also at hotplug for i915 HSW/BDW · bb03ed21
      Takashi Iwai 提交于
      The recent bug report suggests that BCLK setup for i915 HSW/BDW needs
      to be updated at each HDMI hotplug, not only at initialization and
      resume.  That is, we need to update HSW_EM4 and HSW_EM5 registers at
      ELD notification, too.  Otherwise the HDMI audio may be out of sync
      and played in a wrong pitch.
      
      However, the HDA codec driver has no access to the controller
      registers, and currently the code managing these registers is in
      hda_intel.c, i.e. local to the controller driver.  For allowing the
      explicit BCLK update from the codec driver, as in this patch, the
      former haswell_set_bclk() in hda_intel.c is moved to hdac_i915.c and
      exposed as snd_hdac_i915_set_bclk().  This is called from both the HDA
      controller driver and intel_pin_eld_notify() in HDMI codec driver.
      
      Along with this change, snd_hdac_get_display_clk() gets dropped as
      it's no longer used.
      
      Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91410
      Cc: <stable@vger.kernel.org> # v4.5+
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      bb03ed21
    • C
      ALSA: hda - Add dock support for ThinkPad X260 · 037e1197
      Conrad Kostecki 提交于
      Fixes audio output on a ThinkPad X260, when using Lenovo CES 2013
      docking station series (basic, pro, ultra).
      Signed-off-by: NConrad Kostecki <ck+linuxkernel@bl4ckb0x.de>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      037e1197