sound fixes for 5.10-rc1

Just a few additional small and trivial fixes.
 -----BEGIN PGP SIGNATURE-----
 
 iQJCBAABCAAsFiEEIXTw5fNLNI7mMiVaLtJE4w1nLE8FAl+SkUgOHHRpd2FpQHN1
 c2UuZGUACgkQLtJE4w1nLE9ixA/9GMw908i3U2kzd3GcJNRZXZ6C1q9kJ/vbKI2u
 4l7G7cQ+VI5Yqd+ac3Dq8oe1bwkNyUDFtHwVDM7XXxbD0tOOT5WcZWss8nMMuZpM
 IRiYot0YpwV7QM80lB/YXHRLrUKT+3TG0RUgO0MO8ji6V4IkSbbhWVHp6B2qVLec
 2H3fkxA5OLy4d0fiwZHzuZo4fGLo82fXvvmjy8ZStqluJt6etgArQU9fsJNqE085
 RqQwlcfMvLhbyv5n9HAwt9aFa4PZoYdNdn0VHk6UiqKsdr5Vbob138lsDxVBvJbn
 qcE5CjoCaes87PdtxO4vcA5ykuIeMXOXUTFN/vSemU1zHnjioEzpvKixT5E9oR3g
 0AY2d5rZkTgcQnP9xyNJb2K6+NkEsu5OSWmg9OX2oU+Mvn+zazox0jGNIspoD1He
 9sJVPFWVd2p0ObQ8sLCD8L22EUNYaJpNyOkDq6A/R9lzxjL4u1jyrvdt+jqsXiCW
 jBVG+yDpqHij6GqQDiIA+dCr7ZAJuWUDIRlOU0R4I/UH9hdfuXvSEjhra1lU+1Ft
 KTtMjfyhodSR2e4zSUItRIetKpDDwwdXiBhK0DjEHnZl0LfryFNWh7KPErFL7L9o
 lWVHDmcRAsCx2PFJEJHpHONaUi6zyzcQ3UTYoDrzc5FEzbO+c7CyAtGJPsgzq9r5
 PFZM4X8=
 =sYVq
 -----END PGP SIGNATURE-----

Merge tag 'sound-fix-5.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound

Pull sound fixes from Takashi Iwai:
 "Just a few additional small and trivial fixes"

* tag 'sound-fix-5.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
  ALSA: hda - Fix the return value if cb func is already registered
  ALSA: usb-audio: Line6 Pod Go interface requires static clock rate quirk
  ALSA: hda/ca0132: make some const arrays static, makes object smaller
  ALSA: sparc: dbri: fix repeated word 'the'
This commit is contained in:
Linus Torvalds 2020-10-23 13:59:05 -07:00
commit 40a03b750b
4 changed files with 27 additions and 12 deletions

View File

@ -275,16 +275,21 @@ int snd_hda_jack_detect_state_mst(struct hda_codec *codec,
}
EXPORT_SYMBOL_GPL(snd_hda_jack_detect_state_mst);
static bool func_is_already_in_callback_list(struct hda_jack_tbl *jack,
static struct hda_jack_callback *
find_callback_from_list(struct hda_jack_tbl *jack,
hda_jack_callback_fn func)
{
struct hda_jack_callback *cb;
if (!func)
return NULL;
for (cb = jack->callback; cb; cb = cb->next) {
if (cb->func == func)
return true;
return cb;
}
return false;
return NULL;
}
/**
@ -309,7 +314,10 @@ snd_hda_jack_detect_enable_callback_mst(struct hda_codec *codec, hda_nid_t nid,
jack = snd_hda_jack_tbl_new(codec, nid, dev_id);
if (!jack)
return ERR_PTR(-ENOMEM);
if (func && !func_is_already_in_callback_list(jack, func)) {
callback = find_callback_from_list(jack, func);
if (func && !callback) {
callback = kzalloc(sizeof(*callback), GFP_KERNEL);
if (!callback)
return ERR_PTR(-ENOMEM);

View File

@ -7910,8 +7910,12 @@ static void ae7_post_dsp_asi_stream_setup(struct hda_codec *codec)
static void ae7_post_dsp_pll_setup(struct hda_codec *codec)
{
const unsigned int addr[] = { 0x41, 0x45, 0x40, 0x43, 0x51 };
const unsigned int data[] = { 0xc8, 0xcc, 0xcb, 0xc7, 0x8d };
static const unsigned int addr[] = {
0x41, 0x45, 0x40, 0x43, 0x51
};
static const unsigned int data[] = {
0xc8, 0xcc, 0xcb, 0xc7, 0x8d
};
unsigned int i;
for (i = 0; i < ARRAY_SIZE(addr); i++) {
@ -7925,10 +7929,12 @@ static void ae7_post_dsp_pll_setup(struct hda_codec *codec)
static void ae7_post_dsp_asi_setup_ports(struct hda_codec *codec)
{
struct ca0132_spec *spec = codec->spec;
const unsigned int target[] = { 0x0b, 0x04, 0x06, 0x0a, 0x0c, 0x11,
0x12, 0x13, 0x14 };
const unsigned int data[] = { 0x12, 0x00, 0x48, 0x05, 0x5f, 0xff,
0xff, 0xff, 0x7f };
static const unsigned int target[] = {
0x0b, 0x04, 0x06, 0x0a, 0x0c, 0x11, 0x12, 0x13, 0x14
};
static const unsigned int data[] = {
0x12, 0x00, 0x48, 0x05, 0x5f, 0xff, 0xff, 0xff, 0x7f
};
unsigned int i;
mutex_lock(&spec->chipio_mutex);

View File

@ -620,7 +620,7 @@ A circular command buffer is used here. A new command is being added
while another can be executed. The scheme works by adding two WAIT commands
after each sent batch of commands. When the next batch is prepared it is
added after the WAIT commands then the WAITs are replaced with single JUMP
command to the new batch. The the DBRI is forced to reread the last WAIT
command to the new batch. Then the DBRI is forced to reread the last WAIT
command (replaced by the JUMP by then). If the DBRI is still executing
previous commands the request to reread the WAIT command is ignored.

View File

@ -406,6 +406,7 @@ static int line6_parse_audio_format_rates_quirk(struct snd_usb_audio *chip,
case USB_ID(0x0e41, 0x4242): /* Line6 Helix Rack */
case USB_ID(0x0e41, 0x4244): /* Line6 Helix LT */
case USB_ID(0x0e41, 0x4246): /* Line6 HX-Stomp */
case USB_ID(0x0e41, 0x4247): /* Line6 Pod Go */
case USB_ID(0x0e41, 0x4248): /* Line6 Helix >= fw 2.82 */
case USB_ID(0x0e41, 0x4249): /* Line6 Helix Rack >= fw 2.82 */
case USB_ID(0x0e41, 0x424a): /* Line6 Helix LT >= fw 2.82 */