ALSA: usb-audio: scarlett2: Don't copy struct scarlett2_config

scarlett2_usb_set_config() and scarlett2_usb_get_config() were copying
struct scarlett2_config. Use a pointer instead.

Signed-off-by: Geoffrey D. Bennett <g@b4.vu>
Link: https://lore.kernel.org/r/20210620164648.GA9231@m.b4.vu
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Geoffrey D. Bennett 2021-06-21 02:16:48 +09:30 committed by Takashi Iwai
parent 64c02a9d3f
commit 2967263192

View file

@ -706,8 +706,8 @@ static int scarlett2_usb_set_config(
struct usb_mixer_interface *mixer, struct usb_mixer_interface *mixer,
int config_item_num, int index, int value) int config_item_num, int index, int value)
{ {
const struct scarlett2_config config_item = const struct scarlett2_config *config_item =
scarlett2_config_items[config_item_num]; &scarlett2_config_items[config_item_num];
struct { struct {
__le32 offset; __le32 offset;
__le32 bytes; __le32 bytes;
@ -721,17 +721,17 @@ static int scarlett2_usb_set_config(
cancel_delayed_work_sync(&private->work); cancel_delayed_work_sync(&private->work);
/* Send the configuration parameter data */ /* Send the configuration parameter data */
req.offset = cpu_to_le32(config_item.offset + index * config_item.size); req.offset = cpu_to_le32(config_item->offset + index * config_item->size);
req.bytes = cpu_to_le32(config_item.size); req.bytes = cpu_to_le32(config_item->size);
req.value = cpu_to_le32(value); req.value = cpu_to_le32(value);
err = scarlett2_usb(mixer, SCARLETT2_USB_SET_DATA, err = scarlett2_usb(mixer, SCARLETT2_USB_SET_DATA,
&req, sizeof(u32) * 2 + config_item.size, &req, sizeof(u32) * 2 + config_item->size,
NULL, 0); NULL, 0);
if (err < 0) if (err < 0)
return err; return err;
/* Activate the change */ /* Activate the change */
req2 = cpu_to_le32(config_item.activate); req2 = cpu_to_le32(config_item->activate);
err = scarlett2_usb(mixer, SCARLETT2_USB_DATA_CMD, err = scarlett2_usb(mixer, SCARLETT2_USB_DATA_CMD,
&req2, sizeof(req2), NULL, 0); &req2, sizeof(req2), NULL, 0);
if (err < 0) if (err < 0)
@ -764,11 +764,11 @@ static int scarlett2_usb_get_config(
struct usb_mixer_interface *mixer, struct usb_mixer_interface *mixer,
int config_item_num, int count, void *buf) int config_item_num, int count, void *buf)
{ {
const struct scarlett2_config config_item = const struct scarlett2_config *config_item =
scarlett2_config_items[config_item_num]; &scarlett2_config_items[config_item_num];
int size = config_item.size * count; int size = config_item->size * count;
return scarlett2_usb_get(mixer, config_item.offset, buf, size); return scarlett2_usb_get(mixer, config_item->offset, buf, size);
} }
/* Send a USB message to get volume status; result placed in *buf */ /* Send a USB message to get volume status; result placed in *buf */