ALSA: usb: Fix Processing Unit Descriptor parsers
[platform/adaptation/renesas_rcar/renesas_kernel.git] / include / uapi / linux / usb / audio.h
index ac90037..d2314be 100644 (file)
@@ -384,14 +384,16 @@ static inline __u8 uac_processing_unit_iProcessing(struct uac_processing_unit_de
                                                   int protocol)
 {
        __u8 control_size = uac_processing_unit_bControlSize(desc, protocol);
-       return desc->baSourceID[desc->bNrInPins + control_size];
+       return *(uac_processing_unit_bmControls(desc, protocol)
+                       + control_size);
 }
 
 static inline __u8 *uac_processing_unit_specific(struct uac_processing_unit_descriptor *desc,
                                                 int protocol)
 {
        __u8 control_size = uac_processing_unit_bControlSize(desc, protocol);
-       return &desc->baSourceID[desc->bNrInPins + control_size + 1];
+       return uac_processing_unit_bmControls(desc, protocol)
+                       + control_size + 1;
 }
 
 /* 4.5.2 Class-Specific AS Interface Descriptor */