Skip to content
  1. Jan 14, 2021
  2. Jan 13, 2021
  3. Jan 12, 2021
    • Hans de Goede's avatar
      ASoC: es8316: Fix possible NULL pointer deref in es8316_disable_jack_detect() · f2973a1d
      Hans de Goede authored
      
      
      sound/soc/soc-core.c: soc_remove_component() unconditionally calls
      snd_soc_component_set_jack(component, NULL, NULL); on any components
      being removed.
      
      This means that on machines where the machine-driver does not provide
      a jack through snd_soc_component_set_jack() es8316_disable_jack_detect()
      will still get called and at this time es8316->jack will be NULL and
      the es8316->jack->status check in es8316_disable_jack_detect() will
      lead to a NULL pointer deref.
      
      Fix this by checking for es8316->jack bein NULL at the start of
      es8316_disable_jack_detect() and turn the function into a no-op in
      that case.
      
      Cc: russianneuromancer <russianneuromancer@ya.ru>
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      Link: https://lore.kernel.org/r/20210112101725.44200-1-hdegoede@redhat.com
      Signed-off-by: default avatarMark Brown <broonie@kernel.org>
      f2973a1d
    • vulab's avatar
      ASoC: adau17x1: Remove redundant null check before clk_disable_unprepare · 554a1b00
      vulab authored
      
      
      Because clk_disable_unprepare() already checked NULL clock parameter,
      so the additional check is unnecessary, just remove it.
      
      Signed-off-by: default avatarXu Wang <vulab@iscas.ac.cn>
      Link: https://lore.kernel.org/r/20210108084456.6603-1-vulab@iscas.ac.cn
      Signed-off-by: default avatarMark Brown <broonie@kernel.org>
      554a1b00
    • Hans de Goede's avatar
      ASoC: Intel: cht_bsw_nau8824: Move snd_soc_dai_set_tdm_slot call to cht_codec_fixup · 780b1a02
      Hans de Goede authored
      
      
      Move the snd_soc_dai_set_tdm_slot() call from cht_codec_init() to
      cht_codec_fixup(). There are 2 reasons for doing this:
      
      1. This aligns the cht_bsw_nau8824 with all the other BYT/CHT machine
      drivers which also do this from their codec_fixup function.
      
      2. When using the SOF driver, things like the TDM info is set from the
      topology file. Moving the call to the codec_fixup function, which gets
      skipped when using the SOF driver avoids the call interfering with the
      settings when using the SOF driver.
      
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      Acked-by: default avatarPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
      Link: https://lore.kernel.org/r/20210107115324.11602-1-hdegoede@redhat.com
      Signed-off-by: default avatarMark Brown <broonie@kernel.org>
      780b1a02
    • Hans de Goede's avatar
      ASoC: Intel: bytcr_rt5640: Add quirk for the Mele PCG03 Mini PC · df330321
      Hans de Goede authored
      
      
      Add a quirk for the Mele PCG03 Mini PC, being a Mini PC this device
      has no speakers and no internal microphone.
      
      To make matters worse the speaker output pins are shorted (to gnd or
      to each other?) and SPKVDD is provided. So trying to output sound on the
      speakers leads to shorting SPKVDD, this leads to a power dip after
      which the codec is an unknown state. Sometimes it drops of the i2c
      bus, sometimes it does still respond to i2c transfers, but is otherwise
      not functional. TL;DR: trying to use the speaker outputs on this model
      is BAD.
      
      Besides not having speakers / an internal mic, this is a Bay Trail CR
      device without a CHAN package in ACPI, so we default to SSP0-AIF2 as
      codec connection. But the device is actually using SSP0-AIF1, so we
      need to quirk that too.
      
      Cc: Rasmus Porsager <rasmus@beat.dk>
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      Acked-by: default avatarPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
      Link: https://lore.kernel.org/r/20210109210119.159032-4-hdegoede@redhat.com
      Signed-off-by: default avatarMark Brown <broonie@kernel.org>
      df330321
    • Hans de Goede's avatar
      ASoC: Intel: bytcr_rt5640: Add new BYT_RT5640_NO_INTERNAL_MIC_MAP input-mapping · 46466ab6
      Hans de Goede authored
      
      
      Some devices, like mini PCs/media/top-set boxes do not have an internal
      microphone at all, an example of the is the Mele PCG03 Mini PC.
      
      Add a new BYT_RT5640_NO_INTERNAL_MIC_MAP input-mapping for this,
      which does not add any internal-mic routes and modifies the components
      and the (optional) long_name strings to reflect this.
      
      Cc: Rasmus Porsager <rasmus@beat.dk>
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      Acked-by: default avatarPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
      Link: https://lore.kernel.org/r/20210109210119.159032-3-hdegoede@redhat.com
      Signed-off-by: default avatarMark Brown <broonie@kernel.org>
      46466ab6
    • Hans de Goede's avatar
      ASoC: Intel: bytcr_rt5640: Add new BYT_RT5640_NO_SPEAKERS quirk-flag · 1851ccf9
      Hans de Goede authored
      
      
      Some devices, like mini PCs/media/top-set boxes do not have any speakers
      at all, an example of the is the Mele PCG03 Mini PC.
      
      Add a new BYT_RT5640_NO_SPEAKERS quirk-flag which when sets does not add
      speaker routes and modifies the components and the (optional) long_name
      strings to reflect that there are no speakers.
      
      Cc: Rasmus Porsager <rasmus@beat.dk>
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      Acked-by: default avatarPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
      Link: https://lore.kernel.org/r/20210109210119.159032-2-hdegoede@redhat.com
      Signed-off-by: default avatarMark Brown <broonie@kernel.org>
      1851ccf9
    • Mark Brown's avatar
      Merge series "ASoC: rt5645: Enable internal mic and headset on ECS EF20" from... · 1675cdd3
      Mark Brown authored
      Merge series "ASoC: rt5645: Enable internal mic and headset on ECS EF20" from Chris Chiu <chiu@endlessos.org>:
      
      These patches are trying to fix the jack detection and internal
      microphone problems on ECS EF20 series laptops which are empowered
      by Intel Atom x5-Z8350 CPU (CherryTrail) with Realtek rt5645 audio
      codec.
      
      ---
        v2 -> v3:
      	Restore the accidentally removed terminator of the
      	dmi_platform_data[].
      
        v1 -> v2:
              Invoke callback() of the DMI quirk if it exists, because
              the dmi_first_match() doesn't.
      ---
      
      Chris Chiu (4):
        ASoC: rt5645: Introduce mapping for ACPI-defined GPIO
        ASoC: rt5645: Add ACPI-defined GPIO for ECS EF20 series
        ASoC: rt5645: add inv_hp_det flag
        ASoC: rt5645: Enable internal microphone and JD on ECS EF20
      
       include/sound/rt5645.h    |  2 ++
       sound/soc/codecs/rt5645.c | 45 +++++++++++++++++++++++++++++++++++++++
       2 files changed, 47 insertions(+)
      
      --
      2.20.1
      1675cdd3
    • Mark Brown's avatar
      Merge series "Enable DMA mode on Intel Keem Bay platform" from Michael Sit Wei... · f3ddced1
      Mark Brown authored
      Merge series "Enable DMA mode on Intel Keem Bay platform" from Michael Sit Wei Hong <michael.wei.hong.sit@intel.com>:
      
      v2: Update patch to align with latest kernel release.
      v1: Initial patch version, to enable DMA mode on Intel Keembay platform.
      
      Michael Sit Wei Hong (2):
        dt-bindings: sound: intel, keembay-i2s: Add info for device to use DMA
        ASoC: Intel: KMB: Enable DMA transfer mode
      
       .../bindings/sound/intel,keembay-i2s.yaml     |  14 ++
       sound/soc/intel/Kconfig                       |   2 +
       sound/soc/intel/keembay/kmb_platform.c        | 157 ++++++++++++++++--
       sound/soc/intel/keembay/kmb_platform.h        |   9 +
       4 files changed, 167 insertions(+), 15 deletions(-)
      
      --
      2.17.1
      f3ddced1
  4. Jan 11, 2021
  5. Jan 09, 2021
  6. Jan 08, 2021
  7. Jan 06, 2021
  8. Jan 05, 2021