Skip to content

Commit 8d08433

Browse files
committed
Merge tag 'sound-6.17-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound
Pull sound fixes from Takashi Iwai: "A collection of small fixes: - Potential OOB access fixes in USB-audio driver - ASoC kconfig menu fix for improving the generic drivers - HD-audio quirks and a fix revert - Codec and platform-specific small fixes for ASoC" * tag 'sound-6.17-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: ALSA: hda/tas2781: Normalize the volume kcontrol name ALSA: usb-audio: Validate UAC3 cluster segment descriptors ALSA: usb-audio: Validate UAC3 power domain descriptors, too Revert "ALSA: hda: Add ASRock X670E Taichi to denylist" ALSA: azt3328: Put __maybe_unused for inline functions for gameport ASoC: tas2781: Normalize the volume kcontrol name ASoC: stm: stm32_i2s: Fix calc_clk_div() error handling in determine_rate() ASoC: codecs: Call strscpy() with correct size argument ALSA: hda/realtek: Fix headset mic on HONOR BRB-X ALSA: hda/realtek: Add Framework Laptop 13 (AMD Ryzen AI 300) to quirks ASoC: tas2781: Fix spelling mistake "dismatch" -> "mismatch" ASoC: rt1320: fix random cycle mute issue ASoC: rt721: fix FU33 Boost Volume control not working ASoC: generic: tidyup standardized ASoC menu for generic ASoC: codec: sma1307: replace spelling mistake with new error message ASoC: codecs: tx-macro: correct tx_macro_component_drv name ASoC: fsl_sai: replace regmap_write with regmap_update_bits
2 parents 7bb7780 + c345102 commit 8d08433

File tree

21 files changed

+86
-59
lines changed

21 files changed

+86
-59
lines changed

sound/hda/codecs/realtek/alc269.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7140,6 +7140,7 @@ static const struct hda_quirk alc269_fixup_tbl[] = {
71407140
SND_PCI_QUIRK(0x1d72, 0x1901, "RedmiBook 14", ALC256_FIXUP_ASUS_HEADSET_MIC),
71417141
SND_PCI_QUIRK(0x1d72, 0x1945, "Redmi G", ALC256_FIXUP_ASUS_HEADSET_MIC),
71427142
SND_PCI_QUIRK(0x1d72, 0x1947, "RedmiBook Air", ALC255_FIXUP_XIAOMI_HEADSET_MIC),
7143+
SND_PCI_QUIRK(0x1ee7, 0x2078, "HONOR BRB-X M1010", ALC2XX_FIXUP_HEADSET_MIC),
71437144
SND_PCI_QUIRK(0x1f66, 0x0105, "Ayaneo Portable Game Player", ALC287_FIXUP_CS35L41_I2C_2),
71447145
SND_PCI_QUIRK(0x2014, 0x800a, "Positivo ARN50", ALC269_FIXUP_LIMIT_INT_MIC_BOOST),
71457146
SND_PCI_QUIRK(0x2782, 0x0214, "VAIO VJFE-CL", ALC269_FIXUP_LIMIT_INT_MIC_BOOST),
@@ -7158,6 +7159,7 @@ static const struct hda_quirk alc269_fixup_tbl[] = {
71587159
SND_PCI_QUIRK(0xf111, 0x0001, "Framework Laptop", ALC295_FIXUP_FRAMEWORK_LAPTOP_MIC_NO_PRESENCE),
71597160
SND_PCI_QUIRK(0xf111, 0x0006, "Framework Laptop", ALC295_FIXUP_FRAMEWORK_LAPTOP_MIC_NO_PRESENCE),
71607161
SND_PCI_QUIRK(0xf111, 0x0009, "Framework Laptop", ALC295_FIXUP_FRAMEWORK_LAPTOP_MIC_NO_PRESENCE),
7162+
SND_PCI_QUIRK(0xf111, 0x000b, "Framework Laptop", ALC295_FIXUP_FRAMEWORK_LAPTOP_MIC_NO_PRESENCE),
71617163
SND_PCI_QUIRK(0xf111, 0x000c, "Framework Laptop", ALC295_FIXUP_FRAMEWORK_LAPTOP_MIC_NO_PRESENCE),
71627164

71637165
#if 0

sound/hda/codecs/side-codecs/tas2781_hda_i2c.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -265,7 +265,7 @@ static const struct snd_kcontrol_new tas2770_snd_controls[] = {
265265
};
266266

267267
static const struct snd_kcontrol_new tas2781_snd_controls[] = {
268-
ACARD_SINGLE_RANGE_EXT_TLV("Speaker Analog Gain", TAS2781_AMP_LEVEL,
268+
ACARD_SINGLE_RANGE_EXT_TLV("Speaker Analog Volume", TAS2781_AMP_LEVEL,
269269
1, 0, 20, 0, tas2781_amp_getvol,
270270
tas2781_amp_putvol, amp_vol_tlv),
271271
ACARD_SINGLE_BOOL_EXT("Speaker Force Firmware Load", 0,

sound/hda/controllers/intel.c

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2077,7 +2077,6 @@ static const struct pci_device_id driver_denylist[] = {
20772077
{ PCI_DEVICE_SUB(0x1022, 0x1487, 0x1043, 0x874f) }, /* ASUS ROG Zenith II / Strix */
20782078
{ PCI_DEVICE_SUB(0x1022, 0x1487, 0x1462, 0xcb59) }, /* MSI TRX40 Creator */
20792079
{ PCI_DEVICE_SUB(0x1022, 0x1487, 0x1462, 0xcb60) }, /* MSI TRX40 */
2080-
{ PCI_DEVICE_SUB(0x1022, 0x15e3, 0x1022, 0xd601) }, /* ASRock X670E Taichi */
20812080
{}
20822081
};
20832082

sound/pci/azt3328.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -412,25 +412,25 @@ snd_azf3328_ctrl_outl(const struct snd_azf3328 *chip, unsigned reg, u32 value)
412412
outl(value, chip->ctrl_io + reg);
413413
}
414414

415-
static inline void
415+
static inline void __maybe_unused
416416
snd_azf3328_game_outb(const struct snd_azf3328 *chip, unsigned reg, u8 value)
417417
{
418418
outb(value, chip->game_io + reg);
419419
}
420420

421-
static inline void
421+
static inline void __maybe_unused
422422
snd_azf3328_game_outw(const struct snd_azf3328 *chip, unsigned reg, u16 value)
423423
{
424424
outw(value, chip->game_io + reg);
425425
}
426426

427-
static inline u8
427+
static inline u8 __maybe_unused
428428
snd_azf3328_game_inb(const struct snd_azf3328 *chip, unsigned reg)
429429
{
430430
return inb(chip->game_io + reg);
431431
}
432432

433-
static inline u16
433+
static inline u16 __maybe_unused
434434
snd_azf3328_game_inw(const struct snd_azf3328 *chip, unsigned reg)
435435
{
436436
return inw(chip->game_io + reg);

sound/soc/Kconfig

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,6 @@ source "sound/soc/bcm/Kconfig"
111111
source "sound/soc/cirrus/Kconfig"
112112
source "sound/soc/dwc/Kconfig"
113113
source "sound/soc/fsl/Kconfig"
114-
source "sound/soc/generic/Kconfig"
115114
source "sound/soc/google/Kconfig"
116115
source "sound/soc/hisilicon/Kconfig"
117116
source "sound/soc/jz4740/Kconfig"
@@ -149,5 +148,8 @@ source "sound/soc/codecs/Kconfig"
149148

150149
source "sound/soc/sdw_utils/Kconfig"
151150

151+
# generic frame-work
152+
source "sound/soc/generic/Kconfig"
153+
152154
endif # SND_SOC
153155

sound/soc/codecs/aw87390.c

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -177,7 +177,7 @@ static int aw87390_profile_info(struct snd_kcontrol *kcontrol,
177177
{
178178
struct snd_soc_component *codec = snd_soc_kcontrol_component(kcontrol);
179179
struct aw87390 *aw87390 = snd_soc_component_get_drvdata(codec);
180-
char *prof_name, *name;
180+
char *prof_name;
181181
int count, ret;
182182

183183
uinfo->type = SNDRV_CTL_ELEM_TYPE_ENUMERATED;
@@ -194,17 +194,15 @@ static int aw87390_profile_info(struct snd_kcontrol *kcontrol,
194194
if (uinfo->value.enumerated.item >= count)
195195
uinfo->value.enumerated.item = count - 1;
196196

197-
name = uinfo->value.enumerated.name;
198197
count = uinfo->value.enumerated.item;
199198

200199
ret = aw87390_dev_get_prof_name(aw87390->aw_pa, count, &prof_name);
201200
if (ret) {
202-
strscpy(uinfo->value.enumerated.name, "null",
203-
strlen("null") + 1);
201+
strscpy(uinfo->value.enumerated.name, "null");
204202
return 0;
205203
}
206204

207-
strscpy(name, prof_name, sizeof(uinfo->value.enumerated.name));
205+
strscpy(uinfo->value.enumerated.name, prof_name);
208206

209207
return 0;
210208
}

sound/soc/codecs/aw88081.c

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -914,12 +914,11 @@ static int aw88081_profile_info(struct snd_kcontrol *kcontrol,
914914

915915
ret = aw88081_dev_get_prof_name(aw88081->aw_pa, count, &prof_name);
916916
if (ret) {
917-
strscpy(uinfo->value.enumerated.name, "null",
918-
sizeof(uinfo->value.enumerated.name));
917+
strscpy(uinfo->value.enumerated.name, "null");
919918
return 0;
920919
}
921920

922-
strscpy(uinfo->value.enumerated.name, prof_name, sizeof(uinfo->value.enumerated.name));
921+
strscpy(uinfo->value.enumerated.name, prof_name);
923922

924923
return 0;
925924
}

sound/soc/codecs/aw88166.c

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1478,7 +1478,7 @@ static int aw88166_profile_info(struct snd_kcontrol *kcontrol,
14781478
{
14791479
struct snd_soc_component *codec = snd_soc_kcontrol_component(kcontrol);
14801480
struct aw88166 *aw88166 = snd_soc_component_get_drvdata(codec);
1481-
char *prof_name, *name;
1481+
char *prof_name;
14821482
int count, ret;
14831483

14841484
uinfo->type = SNDRV_CTL_ELEM_TYPE_ENUMERATED;
@@ -1495,17 +1495,15 @@ static int aw88166_profile_info(struct snd_kcontrol *kcontrol,
14951495
if (uinfo->value.enumerated.item >= count)
14961496
uinfo->value.enumerated.item = count - 1;
14971497

1498-
name = uinfo->value.enumerated.name;
14991498
count = uinfo->value.enumerated.item;
15001499

15011500
ret = aw88166_dev_get_prof_name(aw88166->aw_pa, count, &prof_name);
15021501
if (ret) {
1503-
strscpy(uinfo->value.enumerated.name, "null",
1504-
strlen("null") + 1);
1502+
strscpy(uinfo->value.enumerated.name, "null");
15051503
return 0;
15061504
}
15071505

1508-
strscpy(name, prof_name, sizeof(uinfo->value.enumerated.name));
1506+
strscpy(uinfo->value.enumerated.name, prof_name);
15091507

15101508
return 0;
15111509
}

sound/soc/codecs/aw88261.c

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -819,7 +819,7 @@ static int aw88261_profile_info(struct snd_kcontrol *kcontrol,
819819
{
820820
struct snd_soc_component *codec = snd_soc_kcontrol_component(kcontrol);
821821
struct aw88261 *aw88261 = snd_soc_component_get_drvdata(codec);
822-
char *prof_name, *name;
822+
char *prof_name;
823823
int count, ret;
824824

825825
uinfo->type = SNDRV_CTL_ELEM_TYPE_ENUMERATED;
@@ -836,17 +836,15 @@ static int aw88261_profile_info(struct snd_kcontrol *kcontrol,
836836
if (uinfo->value.enumerated.item >= count)
837837
uinfo->value.enumerated.item = count - 1;
838838

839-
name = uinfo->value.enumerated.name;
840839
count = uinfo->value.enumerated.item;
841840

842841
ret = aw88261_dev_get_prof_name(aw88261->aw_pa, count, &prof_name);
843842
if (ret) {
844-
strscpy(uinfo->value.enumerated.name, "null",
845-
strlen("null") + 1);
843+
strscpy(uinfo->value.enumerated.name, "null");
846844
return 0;
847845
}
848846

849-
strscpy(name, prof_name, sizeof(uinfo->value.enumerated.name));
847+
strscpy(uinfo->value.enumerated.name, prof_name);
850848

851849
return 0;
852850
}

sound/soc/codecs/aw88395/aw88395.c

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ static int aw88395_profile_info(struct snd_kcontrol *kcontrol,
175175
{
176176
struct snd_soc_component *codec = snd_soc_kcontrol_component(kcontrol);
177177
struct aw88395 *aw88395 = snd_soc_component_get_drvdata(codec);
178-
char *prof_name, *name;
178+
char *prof_name;
179179
int count, ret;
180180

181181
uinfo->type = SNDRV_CTL_ELEM_TYPE_ENUMERATED;
@@ -192,17 +192,15 @@ static int aw88395_profile_info(struct snd_kcontrol *kcontrol,
192192
if (uinfo->value.enumerated.item >= count)
193193
uinfo->value.enumerated.item = count - 1;
194194

195-
name = uinfo->value.enumerated.name;
196195
count = uinfo->value.enumerated.item;
197196

198197
ret = aw88395_dev_get_prof_name(aw88395->aw_pa, count, &prof_name);
199198
if (ret) {
200-
strscpy(uinfo->value.enumerated.name, "null",
201-
strlen("null") + 1);
199+
strscpy(uinfo->value.enumerated.name, "null");
202200
return 0;
203201
}
204202

205-
strscpy(name, prof_name, sizeof(uinfo->value.enumerated.name));
203+
strscpy(uinfo->value.enumerated.name, prof_name);
206204

207205
return 0;
208206
}

0 commit comments

Comments
 (0)