From: Takashi Iwai Date: Tue, 21 Jan 2025 17:00:29 +0000 (+0100) Subject: ALSA: usb: fcp: Fix meter_levels type to __le32 X-Git-Tag: v6.14-rc1~24^2~11 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=e7217011ddd8e86a0d18c6cbfb4f14da3d18eee0;p=linux-2.6-block.git ALSA: usb: fcp: Fix meter_levels type to __le32 The cached level meter values are returned from the USB core as __le32, hence declare properly. Fixes: 46757a3e7d50 ("ALSA: FCP: Add Focusrite Control Protocol driver") Reported-by: kernel test robot Closes: https://lore.kernel.org/oe-kbuild-all/202501212331.SaePSmsA-lkp@intel.com/ Link: https://patch.msgid.link/20250121170032.7236-2-tiwai@suse.de Signed-off-by: Takashi Iwai --- diff --git a/sound/usb/fcp.c b/sound/usb/fcp.c index ecdd18335ab7..92e3caab0b82 100644 --- a/sound/usb/fcp.c +++ b/sound/usb/fcp.c @@ -100,7 +100,7 @@ struct fcp_data { u8 num_meter_slots; s16 *meter_level_map; - u32 *meter_levels; + __le32 *meter_levels; struct snd_kcontrol *meter_ctl; unsigned int *meter_labels_tlv; @@ -383,7 +383,7 @@ static int fcp_meter_ctl_get(struct snd_kcontrol *kctl, struct usb_mixer_interface *mixer = elem->head.mixer; struct fcp_data *private = mixer->private_data; int num_meter_slots, resp_size; - u32 *resp = private->meter_levels; + __le32 *resp = private->meter_levels; int i, err = 0; struct { @@ -655,7 +655,7 @@ static int fcp_ioctl_set_meter_map(struct usb_mixer_interface *mixer, /* If the control doesn't exist, create it */ if (!private->meter_ctl) { s16 *new_map __free(kfree) = NULL; - u32 *meter_levels __free(kfree) = NULL; + __le32 *meter_levels __free(kfree) = NULL; /* Allocate buffer for the map */ new_map = kmalloc_array(map.map_size, sizeof(s16), GFP_KERNEL); @@ -663,7 +663,7 @@ static int fcp_ioctl_set_meter_map(struct usb_mixer_interface *mixer, return -ENOMEM; /* Allocate buffer for reading meter levels */ - meter_levels = kmalloc_array(map.meter_slots, sizeof(u32), + meter_levels = kmalloc_array(map.meter_slots, sizeof(__le32), GFP_KERNEL); if (!meter_levels) return -ENOMEM;