ALSA: scarlett2: Check for phantom persistence config item

Allow for the phantom persistence config item to not exist. This is
needed for the Scarlett Gen 4 series.

Signed-off-by: Geoffrey D. Bennett <g@b4.vu>
Link: https://lore.kernel.org/r/3ccaf8069280827bd6c44f103fcb770bd50b7e2e.1703444932.git.g@b4.vu
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Geoffrey D. Bennett 2023-12-25 05:51:56 +10:30 committed by Takashi Iwai
parent 3978fefdf4
commit 2edc76ddde

View File

@ -2621,11 +2621,15 @@ static int scarlett2_update_input_other(struct usb_mixer_interface *mixer)
if (err < 0)
return err;
err = scarlett2_usb_get_config(
mixer, SCARLETT2_CONFIG_PHANTOM_PERSISTENCE,
1, &private->phantom_persistence);
if (err < 0)
return err;
if (scarlett2_has_config_item(
private,
SCARLETT2_CONFIG_PHANTOM_PERSISTENCE)) {
err = scarlett2_usb_get_config(
mixer, SCARLETT2_CONFIG_PHANTOM_PERSISTENCE,
1, &private->phantom_persistence);
if (err < 0)
return err;
}
}
return 0;
@ -3779,7 +3783,9 @@ static int scarlett2_add_line_in_ctls(struct usb_mixer_interface *mixer)
return err;
}
}
if (info->phantom_count) {
if (info->phantom_count &&
scarlett2_has_config_item(private,
SCARLETT2_CONFIG_PHANTOM_PERSISTENCE)) {
err = scarlett2_add_new_ctl(
mixer, &scarlett2_phantom_persistence_ctl, 0, 1,
"Phantom Power Persistence Capture Switch", NULL);