Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
66 commits
Select commit Hold shift + click to select a range
be4c9ab
ALSA: hda/realtek: add quirk for HP pavilion aero laptop 13z-be200
cmpute Nov 21, 2025
d26e9f6
ALSA: usb-audio: fix uac2 clock source at terminal parser
rxrbln Nov 25, 2025
d041e5e
ALSA: hda/realtek: Add quirk for HP ProBook 450 G8
Nov 25, 2025
d01a3aa
Merge tag 'asoc-fix-v6.18-rc7' of https://git.kernel.org/pub/scm/linu…
tiwai Nov 27, 2025
324f3e0
ALSA: dice: fix buffer overflow in detect_stream_formats()
avasummer Nov 28, 2025
72987d2
Merge branch 'for-linus' into for-next
tiwai Dec 1, 2025
ef5e0a0
ALSA: rawmidi: Fix inconsistent indenting warning reported by smatch
hkrishna-git Dec 1, 2025
9747b22
Merge tag 'asoc-v6.19' of https://git.kernel.org/pub/scm/linux/kernel…
tiwai Dec 2, 2025
a30fa81
ALSA: hda/realtek: fix mute/micmute LEDs don't work for more HP laptops
mschiu77 Dec 2, 2025
cf5425e
ALSA: usb-audio: Simplify with usb_endpoint_max_periodic_payload()
tiwai Dec 2, 2025
22a03ca
ASoC: codecs: wcd937x: fix OF node leaks on probe failure
jhovold Dec 1, 2025
32ae6eb
ASoC: codecs: wcd938x: fix OF node leaks on probe failure
jhovold Dec 1, 2025
3ef4d9e
ASoC: codecs: wcd939x: fix OF node leaks on probe failure
jhovold Dec 1, 2025
2b69bee
ASoC: cs-amp-lib: Revert use of __free(kfree) back to normal C cleanup
rfvirgil Dec 1, 2025
eaf526c
ALSA: hda/realtek: Add PCI SSIDs to HP ProBook quirks
Dec 2, 2025
0ebbd45
ASoC: bcm: bcm63xx-pcm-whistler: Check return value of of_dma_configu…
ISCAS-Vulab Dec 2, 2025
270d32c
ASoC: dt-bindings: cirrus,cs42xx8: Reference common DAI properties
TE-N-ShengjiuWang Dec 3, 2025
3ee257a
ASoC: amd: acp: Audio is not resuming after s0ix
Dec 3, 2025
ae585fa
ASoC: ak4458: Disable regulator when error happens
TE-N-ShengjiuWang Dec 3, 2025
1f8f726
ASoC: ak5558: Disable regulator when error happens
TE-N-ShengjiuWang Dec 3, 2025
2c7e5e1
ASoC: codecs: nau8325: Silence uninitialized variables warnings
Dec 3, 2025
57d508b
ASoC: rockchip: Fix Wvoid-pointer-to-enum-cast warning (again)
Dec 3, 2025
39191ce
ASoc: qcom: q6afe: fix bad guard conversion
jhovold Dec 3, 2025
9b30ceb
ASoC: ak4458 & ak5558: disable regulator if error
broonie Dec 4, 2025
434f815
ASoC: codecs: wcd93xx: fix OF node leaks on probe
broonie Dec 4, 2025
8fb8173
ASoC: cros_ec_codec: Remove unnecessary selection of CRYPTO
Dec 4, 2025
c34b04c
ALSA: hda: cs35l41: Fix NULL pointer dereference in cs35l41_hda_read_…
Dec 2, 2025
210d77c
ALSA: firewire-motu: fix buffer overflow in hwdep read for DSP events
avasummer Dec 3, 2025
d740d52
ALSA: usb-audio: Initialize status1 to fix uninitialized symbol errors
hkrishna-git Dec 4, 2025
f8b1ff6
ALSA: hda/realtek: Add support for HP Turbine Laptops
Dec 5, 2025
826c0b1
ALSA: hda/realtek: Add support for ASUS UM3406GA
Dec 5, 2025
85a6544
ALSA: hda: dt-bindings: add CIX IPBLOQ HDA controller support
Dec 5, 2025
a4f2fa5
ALSA: hda/core: add addr_offset field for bus address translation
Dec 5, 2025
d91e9bd
ALSA: hda: add CIX IPBLOQ HDA controller support
Dec 5, 2025
74ac755
ALSA: Do not build obsolete API
okias Dec 3, 2025
18223ee
of: base: Add of_property_read_u8_index
Sep 12, 2025
6504fe8
soundwire: qcom: remove unused rd_fifo_depth
Sep 12, 2025
8114a05
dt-bindings: soundwire: qcom: deprecate qcom,din/out-ports
Sep 12, 2025
9e53a66
soundwire: qcom: deprecate qcom,din/out-ports
Sep 12, 2025
6ed85ea
soundwire: qcom: prepare for v3.x
Sep 12, 2025
66eca4b
dt-bindings: soundwire: qcom: Document v3.1.0 version of IP block
Sep 12, 2025
b2bfe0f
soundwire: qcom: adding support for v3.1.0
Sep 12, 2025
4be4ac3
soundwire: cadence_master: make frame index trace more readable
bardliao Oct 14, 2025
43b2a39
soundwire: only compute BPT stream in sdw_compute_dp0_port_params
bardliao Oct 14, 2025
5a838e0
soundwire: cadence_master: set data_per_frame as frame capability
bardliao Oct 14, 2025
57b3a7b
soundwire: cadence: export sdw_cdns_bpt_find_bandwidth
bardliao Oct 14, 2025
167efc6
ASoC: SOF: Intel: export hda_sdw_bpt_get_buf_size_aligment
bardliao Oct 14, 2025
9468bc0
soundwire: cadence_master: add fake_size parameter to sdw_cdns_prepar…
bardliao Oct 14, 2025
8931f5b
soundwire: intel_ace2x: add fake frame to BRA read command
bardliao Oct 30, 2025
fdfa196
soundwire: introduce BPT section
bardliao Oct 21, 2025
fe8a9cf
soundwire: pass sdw_bpt_section to cdns BPT helpers
bardliao Oct 21, 2025
188d194
soundwire: intel_ace2x: handle multi BPT sections
bardliao Oct 21, 2025
9a97857
ALSA: uapi: Fix typo in asound.h comment
andyrosa Dec 3, 2025
b0ff70e
ASoC: cs35l41: Always return 0 when a subsystem ID is found
1Naim Dec 6, 2025
298e753
ALSA: firewire-motu: add bounds check in put_user loop for DSP events
avasummer Dec 9, 2025
a061deb
ASoC: cs35l56: Fix incorrect select SND_SOC_CS35L56_CAL_SYSFS_COMMON
rfvirgil Dec 9, 2025
f34836a
ASoC: amd: acp: update tdm channels for specific DAI
Dec 3, 2025
c8d8605
Merge remote-tracking branch 'asoc/for-6.18' into asoc-linus
broonie Dec 10, 2025
161a0c6
ALSA: hda: intel-dsp-config: Prefer legacy driver as fallback
tiwai Dec 10, 2025
b13efb5
Merge tag 'asoc-fix-v6.19-merge-window' of https://git.kernel.org/pub…
tiwai Dec 11, 2025
e33a6ab
ALSA: hda: cix-ipbloq: Use modern PM ops
nathanchance Dec 11, 2025
fd32476
ALSA: hda/tas2781: Add new quirk for HP new project
jimxbj-dot Dec 11, 2025
40d1826
Merge remote-tracking branch 'takashi/for-next' into sound/upstream-2…
bardliao Dec 12, 2025
fa49545
Merge remote-tracking branch 'soundwire/next' into sound/upstream-202…
bardliao Dec 12, 2025
8415233
Merge remote-tracking branch 'regmap/for-next' into sound/upstream-20…
bardliao Dec 12, 2025
081bcee
Merge branch 'sound/upstream-20251212' into merge/sound-upstream-2025…
bardliao Dec 12, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@ title: Cirrus Logic CS42448/CS42888 audio CODEC
maintainers:
- patches@opensource.cirrus.com

allOf:
- $ref: dai-common.yaml#

properties:
compatible:
enum:
Expand Down Expand Up @@ -63,7 +66,7 @@ then:
- VLC-supply
- VLS-supply

additionalProperties: false
unevaluatedProperties: false

examples:
- |
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/sound/cix,sky1-ipbloq-hda.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: CIX IPBLOQ HDA controller

description:
CIX IPBLOQ High Definition Audio (HDA) Controller

maintainers:
- Joakim Zhang <joakim.zhang@cixtech.com>

allOf:
- $ref: sound-card-common.yaml#

properties:
compatible:
const: cix,sky1-ipbloq-hda

reg:
maxItems: 1

interrupts:
maxItems: 1

clocks:
maxItems: 2

clock-names:
items:
- const: ipg
- const: per

resets:
maxItems: 1

required:
- compatible
- reg
- interrupts
- clocks
- clock-names
- resets

unevaluatedProperties: false

examples:
- |
#include<dt-bindings/interrupt-controller/arm-gic.h>

hda@70c0000 {
compatible = "cix,sky1-ipbloq-hda";
reg = <0x70c0000 0x10000>;
interrupts = <GIC_SPI 234 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&audss_clk 7>,
<&audss_clk 8>;
clock-names = "ipg", "per";
resets = <&audss_rst 14>;
model = "CIX SKY1 EVB HDA";
};
1 change: 0 additions & 1 deletion arch/arm/configs/am200epdkit_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,6 @@ CONFIG_SOUND=m
CONFIG_SND=m
CONFIG_SND_MIXER_OSS=m
CONFIG_SND_PCM_OSS=m
# CONFIG_SND_SUPPORT_OLD_API is not set
# CONFIG_SND_VERBOSE_PROCFS is not set
CONFIG_SND_PXA2XX_AC97=m
CONFIG_USB_GADGET=y
Expand Down
1 change: 0 additions & 1 deletion arch/arm/configs/lpc32xx_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,6 @@ CONFIG_LOGO=y
# CONFIG_LOGO_LINUX_VGA16 is not set
CONFIG_SOUND=y
CONFIG_SND=y
# CONFIG_SND_SUPPORT_OLD_API is not set
# CONFIG_SND_VERBOSE_PROCFS is not set
CONFIG_SND_DEBUG=y
CONFIG_SND_DEBUG_VERBOSE=y
Expand Down
1 change: 0 additions & 1 deletion arch/arm/configs/omap1_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,6 @@ CONFIG_SOUND=y
CONFIG_SND=y
CONFIG_SND_MIXER_OSS=y
CONFIG_SND_PCM_OSS=y
# CONFIG_SND_SUPPORT_OLD_API is not set
# CONFIG_SND_VERBOSE_PROCFS is not set
CONFIG_SND_DUMMY=y
CONFIG_SND_USB_AUDIO=y
Expand Down
1 change: 0 additions & 1 deletion arch/arm/configs/tegra_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -219,7 +219,6 @@ CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
CONFIG_LOGO=y
CONFIG_SOUND=y
CONFIG_SND=y
# CONFIG_SND_SUPPORT_OLD_API is not set
# CONFIG_SND_DRIVERS is not set
CONFIG_SND_HDA_TEGRA=y
CONFIG_SND_HDA_INPUT_BEEP=y
Expand Down
1 change: 0 additions & 1 deletion arch/mips/configs/gcw0_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,6 @@ CONFIG_LOGO=y
# CONFIG_LOGO_LINUX_VGA16 is not set
CONFIG_SOUND=y
CONFIG_SND=y
# CONFIG_SND_SUPPORT_OLD_API is not set
# CONFIG_SND_PROC_FS is not set
# CONFIG_SND_DRIVERS is not set
# CONFIG_SND_SPI is not set
Expand Down
1 change: 0 additions & 1 deletion arch/mips/configs/loongson1_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,6 @@ CONFIG_WATCHDOG_SYSFS=y
CONFIG_LOONGSON1_WDT=y
CONFIG_SOUND=y
CONFIG_SND=y
# CONFIG_SND_SUPPORT_OLD_API is not set
# CONFIG_SND_DRIVERS is not set
# CONFIG_SND_MIPS is not set
# CONFIG_SND_USB is not set
Expand Down
1 change: 0 additions & 1 deletion arch/mips/configs/qi_lb60_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,6 @@ CONFIG_LOGO=y
# CONFIG_LOGO_LINUX_CLUT224 is not set
CONFIG_SOUND=y
CONFIG_SND=y
# CONFIG_SND_SUPPORT_OLD_API is not set
# CONFIG_SND_VERBOSE_PROCFS is not set
# CONFIG_SND_DRIVERS is not set
# CONFIG_SND_SPI is not set
Expand Down
1 change: 0 additions & 1 deletion arch/mips/configs/rbtx49xx_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,6 @@ CONFIG_TXX9_WDT=m
# CONFIG_VGA_ARB is not set
CONFIG_SOUND=m
CONFIG_SND=m
# CONFIG_SND_SUPPORT_OLD_API is not set
# CONFIG_SND_VERBOSE_PROCFS is not set
# CONFIG_SND_DRIVERS is not set
# CONFIG_SND_PCI is not set
Expand Down
1 change: 0 additions & 1 deletion arch/mips/configs/rs90_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,6 @@ CONFIG_LOGO=y
CONFIG_SOUND=y
CONFIG_SND=y
# CONFIG_SND_PCM_TIMER is not set
# CONFIG_SND_SUPPORT_OLD_API is not set
# CONFIG_SND_PROC_FS is not set
# CONFIG_SND_DRIVERS is not set
# CONFIG_SND_MIPS is not set
Expand Down
1 change: 0 additions & 1 deletion arch/powerpc/configs/85xx-hw.config
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,6 @@ CONFIG_SND_INTEL8X0=y
CONFIG_SND_POWERPC_SOC=y
# CONFIG_SND_PPC is not set
CONFIG_SND_SOC=y
# CONFIG_SND_SUPPORT_OLD_API is not set
# CONFIG_SND_USB is not set
CONFIG_SND=y
CONFIG_SOUND=y
Expand Down
1 change: 0 additions & 1 deletion arch/powerpc/configs/86xx-hw.config
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,6 @@ CONFIG_SERIO_LIBPS2=y
CONFIG_SND_INTEL8X0=y
CONFIG_SND_MIXER_OSS=y
CONFIG_SND_PCM_OSS=y
# CONFIG_SND_SUPPORT_OLD_API is not set
CONFIG_SND=y
CONFIG_SOUND=y
CONFIG_ULI526X=y
Expand Down
1 change: 0 additions & 1 deletion arch/powerpc/configs/mpc5200_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,6 @@ CONFIG_FB_SM501=m
CONFIG_LOGO=y
CONFIG_SOUND=y
CONFIG_SND=y
# CONFIG_SND_SUPPORT_OLD_API is not set
# CONFIG_SND_DRIVERS is not set
# CONFIG_SND_PCI is not set
# CONFIG_SND_PPC is not set
Expand Down
1 change: 0 additions & 1 deletion arch/powerpc/configs/ppc6xx_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -726,7 +726,6 @@ CONFIG_SND_OSSEMUL=y
CONFIG_SND_MIXER_OSS=m
CONFIG_SND_PCM_OSS=m
CONFIG_SND_DYNAMIC_MINORS=y
# CONFIG_SND_SUPPORT_OLD_API is not set
CONFIG_SND_VERBOSE_PRINTK=y
CONFIG_SND_DEBUG=y
CONFIG_SND_DEBUG_VERBOSE=y
Expand Down
1 change: 0 additions & 1 deletion arch/sh/configs/edosk7760_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,6 @@ CONFIG_FB_TILEBLITTING=y
CONFIG_FB_SH_MOBILE_LCDC=m
CONFIG_SOUND=y
CONFIG_SND=y
# CONFIG_SND_SUPPORT_OLD_API is not set
# CONFIG_SND_VERBOSE_PROCFS is not set
CONFIG_SND_VERBOSE_PRINTK=y
CONFIG_SND_SOC=y
Expand Down
1 change: 0 additions & 1 deletion arch/sh/configs/se7724_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,6 @@ CONFIG_LOGO=y
# CONFIG_LOGO_SUPERH_VGA16 is not set
CONFIG_SOUND=y
CONFIG_SND=m
# CONFIG_SND_SUPPORT_OLD_API is not set
# CONFIG_SND_DRIVERS is not set
# CONFIG_SND_SPI is not set
# CONFIG_SND_SUPERH is not set
Expand Down
1 change: 0 additions & 1 deletion arch/sh/configs/sh7785lcr_32bit_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,6 @@ CONFIG_SND_PCM_OSS=y
CONFIG_SND_SEQUENCER_OSS=y
CONFIG_SND_HRTIMER=y
CONFIG_SND_DYNAMIC_MINORS=y
# CONFIG_SND_SUPPORT_OLD_API is not set
# CONFIG_SND_VERBOSE_PROCFS is not set
CONFIG_SND_VERBOSE_PRINTK=y
CONFIG_SND_DEBUG=y
Expand Down
3 changes: 3 additions & 0 deletions include/sound/hdaudio.h
Original file line number Diff line number Diff line change
Expand Up @@ -380,6 +380,9 @@ struct hdac_bus {

/* factor used to derive STRIPE control value */
unsigned int sdo_limit;

/* address offset between host and hadc */
dma_addr_t addr_offset;
};

int snd_hdac_bus_init(struct hdac_bus *bus, struct device *dev,
Expand Down
2 changes: 1 addition & 1 deletion include/uapi/sound/asound.h
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ struct snd_cea_861_aud_if {
unsigned char db2_sf_ss; /* sample frequency and size */
unsigned char db3; /* not used, all zeros */
unsigned char db4_ca; /* channel allocation code */
unsigned char db5_dminh_lsv; /* downmix inhibit & level-shit values */
unsigned char db5_dminh_lsv; /* downmix inhibit & level-shift values */
};

/****************************************************************************
Expand Down
2 changes: 1 addition & 1 deletion sound/core/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ config SND_MAX_CARDS

config SND_SUPPORT_OLD_API
bool "Support old ALSA API"
default y
default n
help
Say Y here to support the obsolete ALSA PCM API (ver.0.9.0 rc3
or older).
Expand Down
5 changes: 1 addition & 4 deletions sound/core/rawmidi.c
Original file line number Diff line number Diff line change
Expand Up @@ -2106,13 +2106,11 @@ EXPORT_SYMBOL(snd_rawmidi_set_ops);

static int __init alsa_rawmidi_init(void)
{

snd_ctl_register_ioctl(snd_rawmidi_control_ioctl);
snd_ctl_register_ioctl_compat(snd_rawmidi_control_ioctl);
#ifdef CONFIG_SND_OSSEMUL
{ int i;
/* check device map table */
for (i = 0; i < SNDRV_CARDS; i++) {
for (int i = 0; i < SNDRV_CARDS; i++) {
if (midi_map[i] < 0 || midi_map[i] >= SNDRV_RAWMIDI_DEVICES) {
pr_err("ALSA: rawmidi: invalid midi_map[%d] = %d\n",
i, midi_map[i]);
Expand All @@ -2124,7 +2122,6 @@ static int __init alsa_rawmidi_init(void)
amidi_map[i] = 1;
}
}
}
#endif /* CONFIG_SND_OSSEMUL */
return 0;
}
Expand Down
4 changes: 2 additions & 2 deletions sound/firewire/dice/dice-extension.c
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ static int detect_stream_formats(struct snd_dice *dice, u64 section_addr)
break;

base_offset += EXT_APP_STREAM_ENTRIES;
stream_count = be32_to_cpu(reg[0]);
stream_count = min_t(unsigned int, be32_to_cpu(reg[0]), MAX_STREAMS);
err = read_stream_entries(dice, section_addr, base_offset,
stream_count, mode,
dice->tx_pcm_chs,
Expand All @@ -125,7 +125,7 @@ static int detect_stream_formats(struct snd_dice *dice, u64 section_addr)
break;

base_offset += stream_count * EXT_APP_STREAM_ENTRY_SIZE;
stream_count = be32_to_cpu(reg[1]);
stream_count = min_t(unsigned int, be32_to_cpu(reg[1]), MAX_STREAMS);
err = read_stream_entries(dice, section_addr, base_offset,
stream_count,
mode, dice->rx_pcm_chs,
Expand Down
7 changes: 4 additions & 3 deletions sound/firewire/motu/motu-hwdep.c
Original file line number Diff line number Diff line change
Expand Up @@ -75,18 +75,19 @@ static long hwdep_read(struct snd_hwdep *hwdep, char __user *buf, long count,
while (consumed < count &&
snd_motu_register_dsp_message_parser_copy_event(motu, &ev)) {
ptr = (u32 __user *)(buf + consumed);
if (put_user(ev, ptr))
if (consumed + sizeof(ev) > count || put_user(ev, ptr))
return -EFAULT;
consumed += sizeof(ev);
}

event.motu_register_dsp_change.type = SNDRV_FIREWIRE_EVENT_MOTU_REGISTER_DSP_CHANGE;
event.motu_register_dsp_change.count =
(consumed - sizeof(event.motu_register_dsp_change)) / 4;
if (copy_to_user(buf, &event, sizeof(event.motu_register_dsp_change)))
if (copy_to_user(buf, &event,
min_t(long, count, sizeof(event.motu_register_dsp_change))))
return -EFAULT;

count = consumed;
count = min_t(long, count, consumed);
} else {
spin_unlock_irq(&motu->lock);

Expand Down
18 changes: 18 additions & 0 deletions sound/hda/codecs/realtek/alc269.c
Original file line number Diff line number Diff line change
Expand Up @@ -6597,6 +6597,9 @@ static const struct hda_quirk alc269_fixup_tbl[] = {
SND_PCI_QUIRK(0x103c, 0x8a4f, "HP Victus 15-fa0xxx (MB 8A4F)", ALC245_FIXUP_HP_MUTE_LED_COEFBIT),
SND_PCI_QUIRK(0x103c, 0x8a6e, "HP EDNA 360", ALC287_FIXUP_CS35L41_I2C_4),
SND_PCI_QUIRK(0x103c, 0x8a74, "HP ProBook 440 G8 Notebook PC", ALC236_FIXUP_HP_GPIO_LED),
SND_PCI_QUIRK(0x103c, 0x8a75, "HP ProBook 450 G8 Notebook PC", ALC236_FIXUP_HP_GPIO_LED),
SND_PCI_QUIRK(0x103c, 0x8a76, "HP ProBook 440 G8 Notebook PC", ALC236_FIXUP_HP_GPIO_LED),
SND_PCI_QUIRK(0x103c, 0x8a77, "HP ProBook 450 G8 Notebook PC", ALC236_FIXUP_HP_GPIO_LED),
SND_PCI_QUIRK(0x103c, 0x8a78, "HP Dev One", ALC285_FIXUP_HP_LIMIT_INT_MIC_BOOST),
SND_PCI_QUIRK(0x103c, 0x8aa0, "HP ProBook 440 G9 (MB 8A9E)", ALC236_FIXUP_HP_GPIO_LED),
SND_PCI_QUIRK(0x103c, 0x8aa3, "HP ProBook 450 G9 (MB 8AA1)", ALC236_FIXUP_HP_GPIO_LED),
Expand Down Expand Up @@ -6644,6 +6647,7 @@ static const struct hda_quirk alc269_fixup_tbl[] = {
SND_PCI_QUIRK(0x103c, 0x8bc8, "HP Victus 15-fa1xxx", ALC245_FIXUP_HP_MUTE_LED_COEFBIT),
SND_PCI_QUIRK(0x103c, 0x8bcd, "HP Omen 16-xd0xxx", ALC245_FIXUP_HP_MUTE_LED_V1_COEFBIT),
SND_PCI_QUIRK(0x103c, 0x8bd4, "HP Victus 16-s0xxx (MB 8BD4)", ALC245_FIXUP_HP_MUTE_LED_COEFBIT),
SND_PCI_QUIRK(0x103c, 0x8bd6, "HP Pavilion Aero Laptop 13z-be200", ALC287_FIXUP_HP_GPIO_LED),
SND_PCI_QUIRK(0x103c, 0x8bdd, "HP Envy 17", ALC287_FIXUP_CS35L41_I2C_2),
SND_PCI_QUIRK(0x103c, 0x8bde, "HP Envy 17", ALC287_FIXUP_CS35L41_I2C_2),
SND_PCI_QUIRK(0x103c, 0x8bdf, "HP Envy 15", ALC287_FIXUP_CS35L41_I2C_2),
Expand Down Expand Up @@ -6766,13 +6770,26 @@ static const struct hda_quirk alc269_fixup_tbl[] = {
SND_PCI_QUIRK(0x103c, 0x8e60, "HP Trekker ", ALC287_FIXUP_CS35L41_I2C_2),
SND_PCI_QUIRK(0x103c, 0x8e61, "HP Trekker ", ALC287_FIXUP_CS35L41_I2C_2),
SND_PCI_QUIRK(0x103c, 0x8e62, "HP Trekker ", ALC287_FIXUP_CS35L41_I2C_2),
SND_PCI_QUIRK(0x103c, 0x8e8a, "HP NexusX", ALC245_FIXUP_HP_TAS2781_I2C_MUTE_LED),
SND_PCI_QUIRK(0x103c, 0x8e9d, "HP 17 Turbine OmniBook X UMA", ALC287_FIXUP_CS35L41_I2C_2),
SND_PCI_QUIRK(0x103c, 0x8e9e, "HP 17 Turbine OmniBook X UMA", ALC287_FIXUP_CS35L41_I2C_2),
SND_PCI_QUIRK(0x103c, 0x8eb6, "HP Abe A6U", ALC236_FIXUP_HP_MUTE_LED_MICMUTE_GPIO),
SND_PCI_QUIRK(0x103c, 0x8eb7, "HP Abe A6U", ALC236_FIXUP_HP_MUTE_LED_MICMUTE_GPIO),
SND_PCI_QUIRK(0x103c, 0x8eb8, "HP Abe A6U", ALC236_FIXUP_HP_MUTE_LED_MICMUTE_GPIO),
SND_PCI_QUIRK(0x103c, 0x8ec1, "HP 200 G2i", ALC236_FIXUP_HP_MUTE_LED_MICMUTE_GPIO),
SND_PCI_QUIRK(0x103c, 0x8ec4, "HP Bantie I6U", ALC236_FIXUP_HP_MUTE_LED_MICMUTE_GPIO),
SND_PCI_QUIRK(0x103c, 0x8ec5, "HP Bantie I6U", ALC236_FIXUP_HP_MUTE_LED_MICMUTE_GPIO),
SND_PCI_QUIRK(0x103c, 0x8ece, "HP Abe I6U", ALC236_FIXUP_HP_MUTE_LED_MICMUTE_GPIO),
SND_PCI_QUIRK(0x103c, 0x8ecf, "HP Abe I6U", ALC236_FIXUP_HP_MUTE_LED_MICMUTE_GPIO),
SND_PCI_QUIRK(0x103c, 0x8ed2, "HP Abe I6U", ALC236_FIXUP_HP_MUTE_LED_MICMUTE_GPIO),
SND_PCI_QUIRK(0x103c, 0x8ed5, "HP EliteBook 8 Flip G2i 13", ALC245_FIXUP_HP_TAS2781_SPI_MUTE_LED),
SND_PCI_QUIRK(0x103c, 0x8ed6, "HP EliteBook 8 G2i 13", ALC245_FIXUP_HP_TAS2781_SPI_MUTE_LED),
SND_PCI_QUIRK(0x103c, 0x8ed7, "HP EliteBook 8 G2i 14", ALC245_FIXUP_HP_TAS2781_SPI_MUTE_LED),
SND_PCI_QUIRK(0x103c, 0x8ed8, "HP EliteBook 8 G2i 16", ALC245_FIXUP_HP_TAS2781_SPI_MUTE_LED),
SND_PCI_QUIRK(0x103c, 0x8ed9, "HP ZBook Firefly 14W", ALC245_FIXUP_HP_TAS2781_SPI_MUTE_LED),
SND_PCI_QUIRK(0x103c, 0x8eda, "HP ZBook Firefly 16W", ALC245_FIXUP_HP_TAS2781_SPI_MUTE_LED),
SND_PCI_QUIRK(0x103c, 0x8ee4, "HP Bantie A6U", ALC236_FIXUP_HP_MUTE_LED_MICMUTE_GPIO),
SND_PCI_QUIRK(0x103c, 0x8ee5, "HP Bantie A6U", ALC236_FIXUP_HP_MUTE_LED_MICMUTE_GPIO),
SND_PCI_QUIRK(0x103c, 0x8f0c, "HP ZBook X G2i 16W", ALC236_FIXUP_HP_GPIO_LED),
SND_PCI_QUIRK(0x103c, 0x8f0e, "HP ZBook X G2i 16W", ALC236_FIXUP_HP_GPIO_LED),
SND_PCI_QUIRK(0x103c, 0x8f40, "HP ZBook 8 G2a 14", ALC245_FIXUP_HP_TAS2781_I2C_MUTE_LED),
Expand Down Expand Up @@ -6828,6 +6845,7 @@ static const struct hda_quirk alc269_fixup_tbl[] = {
SND_PCI_QUIRK(0x1043, 0x1517, "Asus Zenbook UX31A", ALC269VB_FIXUP_ASUS_ZENBOOK_UX31A),
SND_PCI_QUIRK(0x1043, 0x1533, "ASUS GV302XA/XJ/XQ/XU/XV/XI", ALC287_FIXUP_CS35L41_I2C_2),
SND_PCI_QUIRK(0x1043, 0x1573, "ASUS GZ301VV/VQ/VU/VJ/VA/VC/VE/VVC/VQC/VUC/VJC/VEC/VCC", ALC285_FIXUP_ASUS_HEADSET_MIC),
SND_PCI_QUIRK(0x1043, 0x1584, "ASUS UM3406GA ", ALC287_FIXUP_CS35L41_I2C_2),
SND_PCI_QUIRK(0x1043, 0x1652, "ASUS ROG Zephyrus Do 15 SE", ALC289_FIXUP_ASUS_ZEPHYRUS_DUAL_SPK),
SND_PCI_QUIRK(0x1043, 0x1662, "ASUS GV301QH", ALC294_FIXUP_ASUS_DUAL_SPK),
SND_PCI_QUIRK(0x1043, 0x1663, "ASUS GU603ZI/ZJ/ZQ/ZU/ZV", ALC285_FIXUP_ASUS_HEADSET_MIC),
Expand Down
2 changes: 2 additions & 0 deletions sound/hda/codecs/side-codecs/cs35l41_hda.c
Original file line number Diff line number Diff line change
Expand Up @@ -1901,6 +1901,8 @@ static int cs35l41_hda_read_acpi(struct cs35l41_hda *cs35l41, const char *hid, i

cs35l41->dacpi = adev;
physdev = get_device(acpi_get_first_physical_node(adev));
if (!physdev)
return -ENODEV;

sub = acpi_get_subsystem_id(ACPI_HANDLE(physdev));
if (IS_ERR(sub))
Expand Down
14 changes: 14 additions & 0 deletions sound/hda/controllers/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,20 @@ config SND_HDA_TEGRA
To compile this driver as a module, choose M here: the module
will be called snd-hda-tegra.

config SND_HDA_CIX_IPBLOQ
tristate "CIX IPBLOQ HD Audio"
depends on ARCH_CIX || COMPILE_TEST
select SND_HDA
select SND_HDA_ALIGNED_MMIO
help
Say Y here to support the HDA controller present in CIX SoCs

This options enables support for the HD Audio controller
present in some CIX SoCs.

To compile this driver as a module, choose M here: the module
will be called snd-hda-cix-ipbloq.

config SND_HDA_ACPI
tristate "HD Audio ACPI"
depends on ACPI
Expand Down
2 changes: 2 additions & 0 deletions sound/hda/controllers/Makefile
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# SPDX-License-Identifier: GPL-2.0
snd-hda-intel-y := intel.o
snd-hda-tegra-y := tegra.o
snd-hda-cix-ipbloq-y := cix-ipbloq.o
snd-hda-acpi-y := acpi.o

subdir-ccflags-y += -I$(src)/../common
Expand All @@ -10,4 +11,5 @@ CFLAGS_intel.o := -I$(src)

obj-$(CONFIG_SND_HDA_INTEL) += snd-hda-intel.o
obj-$(CONFIG_SND_HDA_TEGRA) += snd-hda-tegra.o
obj-$(CONFIG_SND_HDA_CIX_IPBLOQ) += snd-hda-cix-ipbloq.o
obj-$(CONFIG_SND_HDA_ACPI) += snd-hda-acpi.o
Loading
Loading