29 Jan, 2020

1 commit

  • Pull sound updates from Takashi Iwai:
    "As the diffstat shows we've had again a lot of works done for this
    cycle: the majority of changes are the continued componentization and
    code refactoring in ASoC, the tree-wide PCM API updates and cleanups
    and SOF updates while a few ASoC driver updates are seen, too.

    Here we go, some highlights:

    Core:
    - Finally y2038 support landed to ALSA ABI; some ioctls have been
    extended and lots of tricks were applied
    - Applying the new managed PCM buffer API to all drivers; the API
    itself was already merged in 5.5
    - The already deprecated dimension support in ALSA control API is
    dropped completely now
    - Verification of ALSA control elements to catch API misuses

    ASoC:
    - Further code refactorings and moving things to the component level
    - Lots of updates and improvements on SOF / Intel drivers; now
    including common HDMI driver and SoundWire support
    - New driver support for Ingenic JZ4770, Mediatek MT6660, Qualcomm
    WCD934x and WSA881x, and Realtek RT700, RT711, RT715, RT1011,
    RT1015 and RT1308

    HD-audio:
    - Improved ring-buffer communications using waitqueue
    - Drop the superfluous buffer preallocation on x86

    Others:
    - Many code cleanups, mostly constifications over the whole tree
    - USB-audio: quirks for MOTU, Corsair Virtuoso, Line6 Helix
    - FireWire: code refactoring for oxfw and dice drivers"

    * tag 'sound-5.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (638 commits)
    ALSA: usb-audio: add quirks for Line6 Helix devices fw>=2.82
    ALSA: hda: Add Clevo W65_67SB the power_save blacklist
    ASoC: soc-core: remove null_snd_soc_ops
    ASoC: soc-pcm: add soc_rtd_trigger()
    ASoC: soc-pcm: add soc_rtd_hw_free()
    ASoC: soc-pcm: add soc_rtd_hw_params()
    ASoC: soc-pcm: add soc_rtd_prepare()
    ASoC: soc-pcm: add soc_rtd_shutdown()
    ASoC: soc-pcm: add soc_rtd_startup()
    ASoC: rt1015: add rt1015 amplifier driver
    ASoC: madera: Correct some kernel doc
    ASoC: topology: fix soc_tplg_fe_link_create() - link->dobj initialization order
    ASoC: Intel: skl_hda_dsp_common: Fix global-out-of-bounds bug
    ASoC: madera: Correct DMIC only input hook ups
    ALSA: cs46xx: fix spelling mistake "to" -> "too"
    ALSA: hda - Add docking station support for Lenovo Thinkpad T420s
    ASoC: Add MediaTek MT6660 Speaker Amp Driver
    ASoC: dt-bindings: rt5645: add suppliers
    ASoC: max98090: fix deadlock in max98090_dapm_put_enum_double()
    ASoC: dapm: add snd_soc_dapm_put_enum_double_locked
    ...

    Linus Torvalds
     

06 Jan, 2020

1 commit


03 Jan, 2020

2 commits


17 Dec, 2019

1 commit

  • Patrick May reported that his sound card with CMI8378 chip causes a
    crash / reboot when accessing the MIDI port that isn't actually
    present on the board. Moreover, despite of the documentation,
    passing mpu_port=0 doesn't disable the MIDI port on this board.

    It implies that the chip is a newer revision and the MPU401 port is
    integrated and mapped on the PCI register. For this chip model, the
    driver enables the MPU port unconditionally, so far.

    Although fixing the unexpected reboot would be the best solution, it's
    not so trivial to identify the cause. So, as a plan B, this patch
    extends the existing mpu_port option usage to allow disabling the port
    by specifying the value 0, just like we applied for fm_port option in
    commit 2f24d159d5ac ("[ALSA] cmipci - Allow to disable integrated FM
    port"). As default, the MPU port is still enabled, but user can pass
    mpu_port=0 to disable it.

    Reported-and-tested-by: Patrick May
    Link: https://lore.kernel.org/r/20191217081448.1144-1-tiwai@suse.de
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     

21 Nov, 2019

3 commits


06 Nov, 2019

3 commits


18 Sep, 2019

1 commit

  • Pull sound updates from Takashi Iwai:
    "As shown in diffstat and logs, it was again a busy development cycle
    at this time, too. The most significant changes are still on-going
    refactoring / modernization works for ASoC core and drivers, but there
    are lots of other changes as well. Here we go, some highlights below:

    ASoC:

    - Quite a lot of cleanup / refactoring of ASoC core and APIs; most of
    them are systematic, but also including cleanups and modernization

    - A bulk of updates for some ASoC platforms, Freescale, sunxi and
    Intel SST/SOF

    - Initial support for Sound Open Firmware on i.MX8

    - Removal of deprecated w90x900 and nuc900 drivers

    - New support for Cirrus Logic CS47L15 and CS47L92, Freescale i.MX
    7ULP and 8MQ, Meson G12A and NXP UDA1334

    USB-audio:

    - More validations of descriptor units for hardening against bugs
    reported by fuzzers

    - PCM device assignment workaround for a past call-order change

    - Scarlett Gen2 mixer interface, a few more more quirks

    HD-audio:

    - Support for audio component with AMD/ATI and Nvidia HDMI codecs

    - Clean up HD-audio core and remove indirect access ops for Intel SOF

    - DMIC detection at probe; it would make systems automatically
    falling back to SST/SOF driver on devices that need DMIC handling.
    Needs a new Kconfig to set, and beware that it's still new and a
    bit experimental

    FireWire:

    - Lots of code refactoring and cleanups"

    * tag 'sound-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (521 commits)
    ASoC: sdm845: remove unneeded semicolon
    ASoC: fsl_sai: Implement set_bclk_ratio
    ASoC: dmaengine: Replace strncpy() with strscpy_pad() for pcm->name
    ASoC: wcd9335: remove redundant use of ret variable
    ALSA: firewire-tascam: check intermediate state of clock status and retry
    ALSA: firewire-tascam: handle error code when getting current source of clock
    ASoC: hdmi-codec: Add an op to set callback function for plug event
    ASoC: rt5677: keep analog power register at SND_SOC_BIAS_OFF
    ASoC: rt5677: Remove magic number register writes
    ASoC: soc-core: self contained soc_unbind_aux_dev()
    ASoC: soc-core: add soc_unbind_aux_dev()
    ASoC: soc-core: self contained soc_bind_aux_dev()
    ASoC: soc-core: move soc_probe_link_dais() next to soc_remove_link_dais()
    ASoC: soc-core: self contained soc_probe_link_dais()
    ASoC: soc-core: add new soc_link_init()
    ASoC: soc-core: move soc_probe_dai() next to soc_remove_dai()
    ASoC: soc-core: self contained soc_remove_link_dais()
    ASoC: soc-core: self contained soc_remove_link_components()
    ASoC: soc-core: self contained soc_probe_link_components()
    ASoC: rt1308: make array pd static const, makes object smaller
    ...

    Linus Torvalds
     

10 Sep, 2019

1 commit

  • ASoC: Updates for v5.4

    Quite a big update this time around, particularly in the core
    where we've had a lot of cleanups from Morimoto-san - there's
    not much functional change but quite a bit of modernization
    going on. We've also seen a lot of driver work, a lot of it
    cleanups but also some particular drivers.

    - Lots and lots of cleanups from Morimoto-san and Yue Haibing.
    - Lots of cleanups and enhancements to the Freescale, sunxi dnd
    Intel rivers.
    - Initial Sound Open Firmware suppot for i.MX8.
    - Removal of w90x900 and nuc900 drivers as the platforms are
    being removed.
    - New support for Cirrus Logic CS47L15 and CS47L92, Freescale
    i.MX 7ULP and 8MQ, Meson G12A and NXP UDA1334

    Takashi Iwai
     

28 Aug, 2019

1 commit


09 Aug, 2019

1 commit

  • [ This is rather a revival of the patch Tomas sent in months ago, but
    applying only with the quirk model option -- tiwai ]

    Hard coded coefficients to make Huawuei Matebook X right speaker
    work. The Matebook X has a ALC298, please refer to bug 197801 on
    how these numbers were reverse engineered from the Windows driver

    The reversed engineered sequence represents a repeating pattern
    of verbs, and the only values that are changing periodically are
    written on indexes 0x23 and 0x25:

    0x500, 0x23
    0x400, VALUE1
    0x500, 0x25
    0x400, VALUE2

    * skipped reading sequences (0x500 - 0xc00 sequences are ignored)
    * static values from reverse engineering are used

    NOTE: since a significant risk is still considered, this is provided
    as an experimental fix that isn't applied as default for now. For
    enabling the fix, you'll have to choose huawei-mbx-stereo via model
    option of snd-hda-intel module.

    If we get feedback from users that this works stably, we may apply it
    per default.

    [ Some coding style fixes and replacement with AC_VERB_* by tiwai ]

    BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=197801
    Signed-off-by: Tomas Espeleta
    Signed-off-by: Takashi Iwai

    Tomas Espeleta
     

01 Aug, 2019

1 commit


17 Jul, 2019

1 commit


03 Apr, 2019

1 commit


28 Feb, 2019

1 commit

  • …ie/sound into for-next

    ASoC: More changes for v5.1

    Another batch of changes for ASoC, no big core changes - it's mainly
    small fixes and improvements for individual drivers.

    - A big refresh and cleanup of the Samsung drivers, fixing a number of
    issues which allow the driver to be used with a wider range of
    userspaces.
    - Fixes for the Intel drivers to make them more standard so less likely
    to get bitten by core issues.
    - New driver for Cirrus Logic CS35L26.

    Takashi Iwai
     

20 Feb, 2019

2 commits


08 Feb, 2019

1 commit


02 Feb, 2019

1 commit

  • We used to pass NULL to memory allocators for ISA devices due to
    historical reasons. But we prefer rather a proper device object to be
    assigned, so let's fix it by replacing snd_dma_isa_data() call with
    card->dev reference, and kill snd_dma_isa_data() definition.

    Reviewed-by: Christoph Hellwig
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     

16 Jan, 2019

1 commit


21 Nov, 2018

1 commit

  • Whilst making an unrelated change to some Documentation, Linus sayeth:

    | Afaik, even in Britain, "whilst" is unusual and considered more
    | formal, and "while" is the common word.
    |
    | [...]
    |
    | Can we just admit that we work with computers, and we don't need to
    | use þe eald Englisc spelling of words that most of the world never
    | uses?

    dictionary.com refers to the word as "Chiefly British", which is
    probably an undesirable attribute for technical documentation.

    Replace all occurrences under Documentation/ with "while".

    Cc: David Howells
    Cc: Liam Girdwood
    Cc: Chris Wilson
    Cc: Michael Halcrow
    Cc: Jonathan Corbet
    Reported-by: Linus Torvalds
    Signed-off-by: Will Deacon
    Signed-off-by: Jonathan Corbet

    Will Deacon
     

18 Oct, 2018

1 commit

  • Slightly brushing up and throw the old dust away from my ancient
    writing-an-alsa-driver document. The contents aren't changed so much
    but the obsoleted parts are dropped.

    Also, remove the date and the version number. It's useless.

    Reviewed-by: Takashi Sakamoto
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     

07 Oct, 2018

1 commit


13 Aug, 2018

1 commit

  • …e/sound into for-linus

    ASoC: Updates for v4.19

    A fairly big update, including quite a bit of core activity this time
    around (which is good to see) along with a fairly large set of new
    drivers.

    - A new snd_pcm_stop_xrun() helper which is now used in several
    drivers.
    - Support for providing name prefixes to generic component nodes.
    - Quite a few fixes for DPCM as it gains a bit wider use and more
    robust testing.
    - Generalization of the DIO2125 support to a simple amplifier driver.
    - Accessory detection support for the audio graph card.
    - DT support for PXA AC'97 devices.
    - Quirks for a number of new x86 systems.
    - Support for AM Logic Meson, Everest ES7154, Intel systems with
    RT5682, Qualcomm QDSP6 and WCD9335, Realtek RT5682 and TI TAS5707.

    Takashi Iwai
     

27 Jul, 2018

1 commit


27 Jun, 2018

5 commits


26 Jun, 2018

4 commits


07 Jun, 2018

1 commit

  • Pull sound updates from Takashi Iwai:
    "We've got many code additions at this cycle as a result of quite a few
    new drivers. Below are highlights:

    Core stuff:
    - Fix the long-standing issue with the device registration order; the
    control device is now registered at last
    - PCM locking code cleanups for RT kernels
    - Fixes for possible races in ALSA timer resolution accesses
    - TLV offset definitions in uapi

    ASoC:
    - Many fixes for the topology stuff, including fixes for v4 ABI
    compatibility
    - Lots of cleanups / quirks for Intel platforms based on Realtek
    CODECs
    - Continued componentization works, removing legacy CODEC stuff
    - Conversion of OMAP DMA to the new, more standard SDMA-PCM driver
    - Fixes and updates to Cirrus Logic SoC drivers
    - New Qualcomm DSP support
    - New drivers for Analog SSM2305, Atmel I2S controllers, Mediatek
    MT6351, MT6797 and MT7622, Qualcomm DSPs, Realtek RT1305, RT1306
    and RT5668 and TI TSCS454

    HD-audio:
    - Finally better support for some CA0132 boards, allowing Windows
    firmware
    - HP Spectre x360 support along with a bulk of COEF stuff
    - Blacklisting power save default some known boards reported on
    Fedora

    USB-audio:
    - Continued improvements on UAC3 support; now BADD is supported
    - Fixes / improvements for Dell WD15 dock
    - Allow DMA coherent pages for PCM buffers for ARCH, MIPS & co

    Others:
    - New Xen sound frontend driver support
    - Cache implementation and other improvements for FireWire DICE
    - Conversions to octal permissions in allover places"

    * tag 'sound-4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (386 commits)
    ASoC: dapm: delete dapm_kcontrol_data paths list before freeing it
    ALSA: usb-audio: remove redundant check on err
    ASoC: topology: Move skl-tplg-interface.h to uapi
    ASoC: topology: Move v4 manifest header data structures to uapi
    ASoC: topology: Improve backwards compatibility with v4 topology files
    ALSA: pci/hda: Remove unused, broken, header file
    ASoC: TSCS454: Add Support
    ASoC: Intel: kbl: Move codec sysclk config to codec_init function
    ASoC: simple-card: set cpu dai clk in hw_params
    ALSA: hda - Handle kzalloc() failure in snd_hda_attach_pcm_stream()
    ALSA: oxygen: use match_string() helper
    ASoC: dapm: use match_string() helper
    ASoC: max98095: use match_string() helper
    ASoC: max98088: use match_string() helper
    ASoC: Intel: bytcr_rt5651: Set card long_name based on quirks
    ASoC: mt6797-mt6351: add hostless phone call path
    ASoC: mt6797: add Hostless DAI
    ASoC: mt6797: add PCM interface
    ASoC: mediatek: export mtk-afe symbols as needed
    ASoC: codecs: PCM1789: include gpio/consumer.h
    ...

    Linus Torvalds
     

05 Jun, 2018

1 commit

  • ASoC: Updates for v4.18

    This is a very big update, mainly due to a huge set of new drivers some
    of which are individually very large. We also have a lot of fixes for
    the topology stuff, several of the users have stepped up and fixed some
    the serious issues there, and continued progress on the transition away
    from CODEC specific drivers to generic component drivers.

    - Many fixes for the topology code, including fixes for the half done
    v4 ABI compatibility from Guenter Roeck and other ABI fixes from
    Kirill Marinushkin.
    - Lots of cleanup for Intel platforms based on Realtek CODECs from Hans
    de Goode.
    - More followups on removing legacy CODEC things and transitioning to
    components from Morimoto-san.
    - Conversion of OMAP DMA to the new, more standard SDMA-PCM driver.
    - A series of fixes and updates to the rather elderly Cirrus Logic SoC
    drivers from Alexander Sverdlin.
    - Qualcomm DSP support from Srinivas Kandagatla.
    - New drivers for Analog SSM2305, Atmel I2S controllers, Mediatek
    MT6351, MT6797 and MT7622, Qualcomm DSPs, Realtek RT1305, RT1306 and
    RT5668 and TI TSCS454

    Takashi Iwai