From: Daniel Mack Date: Wed, 27 Aug 2014 17:09:05 +0000 (+0200) Subject: usb: gadget: f_uac2: introduce agdev_to_uac2_opts X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=254b3bf68b65ac8f82da1c7e0c1a2bb17012aa7d;p=GitHub%2FLineageOS%2FG12%2Fandroid_kernel_amlogic_linux-4.9.git usb: gadget: f_uac2: introduce agdev_to_uac2_opts Add a simple container_of() wrapper to get a struct f_uac2_opts from a struct struct audio_dev. Use it in two places where it is currently open-coded. Signed-off-by: Daniel Mack Signed-off-by: Felipe Balbi --- diff --git a/drivers/usb/gadget/function/f_uac2.c b/drivers/usb/gadget/function/f_uac2.c index efe8add29670..9c8831d74f5b 100644 --- a/drivers/usb/gadget/function/f_uac2.c +++ b/drivers/usb/gadget/function/f_uac2.c @@ -139,6 +139,12 @@ struct snd_uac2_chip *pdev_to_uac2(struct platform_device *p) return container_of(p, struct snd_uac2_chip, pdev); } +static inline +struct f_uac2_opts *agdev_to_uac2_opts(struct audio_dev *agdev) +{ + return container_of(agdev->func.fi, struct f_uac2_opts, func_inst); +} + static inline uint num_channels(uint chanmask) { @@ -1168,7 +1174,7 @@ in_rq_cur(struct usb_function *fn, const struct usb_ctrlrequest *cr) int value = -EOPNOTSUPP; int p_srate, c_srate; - opts = container_of(agdev->func.fi, struct f_uac2_opts, func_inst); + opts = agdev_to_uac2_opts(agdev); p_srate = opts->p_srate; c_srate = opts->c_srate; @@ -1210,7 +1216,7 @@ in_rq_range(struct usb_function *fn, const struct usb_ctrlrequest *cr) int value = -EOPNOTSUPP; int p_srate, c_srate; - opts = container_of(agdev->func.fi, struct f_uac2_opts, func_inst); + opts = agdev_to_uac2_opts(agdev); p_srate = opts->p_srate; c_srate = opts->c_srate;