From: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
To: Wesley Cheng <quic_wcheng@quicinc.com>
Cc: srinivas.kandagatla@linaro.org, mathias.nyman@intel.com,
	perex@perex.cz, broonie@kernel.org, lgirdwood@gmail.com,
	andersson@kernel.org, krzysztof.kozlowski+dt@linaro.org,
	gregkh@linuxfoundation.org, Thinh.Nguyen@synopsys.com,
	bgoswami@quicinc.com, tiwai@suse.com, robh+dt@kernel.org,
	agross@kernel.org, linux-kernel@vger.kernel.org,
	linux-arm-msm@vger.kernel.org, alsa-devel@alsa-project.org,
	devicetree@vger.kernel.org, linux-usb@vger.kernel.org,
	quic_jackp@quicinc.com, quic_plai@quicinc.com
Subject: Re: [RFC PATCH 04/14] sound: usb: card: Introduce USB SND vendor op callbacks
Date: Tue, 27 Dec 2022 23:33:10 +0200	[thread overview]
Message-ID: <f6e4e538-b4dd-a45a-0078-ea7ebb960672@linaro.org> (raw)
In-Reply-To: <730d8cbc-c391-6d77-2374-713f539d38b6@quicinc.com>
On 27/12/2022 23:07, Wesley Cheng wrote:
> Hi Dmitry,
> 
> On 12/24/2022 3:03 AM, Dmitry Baryshkov wrote:
>> Hi,
>>
>> On Sat, 24 Dec 2022 at 01:33, Wesley Cheng <quic_wcheng@quicinc.com> 
>> wrote:
>>>
>>> Allow for different vendors to be notified on USB SND connect/disconnect
>>> seqeunces.  This allows for vendor USB SND modules to properly 
>>> initialize
>>> and populate internal structures with references to the USB SND chip
>>> device.
>>
>> The commit message definitely needs some improvement. We do not notify
>> vendors on SND connect/disconnect events.
>>
>>
>>>
>>> Signed-off-by: Wesley Cheng <quic_wcheng@quicinc.com>
>>> ---
>>>   sound/usb/card.c | 22 ++++++++++++++++++++++
>>>   sound/usb/card.h |  7 +++++++
>>>   2 files changed, 29 insertions(+)
>>>
>>> diff --git a/sound/usb/card.c b/sound/usb/card.c
>>> index 26268ffb8274..212f55a7683c 100644
>>> --- a/sound/usb/card.c
>>> +++ b/sound/usb/card.c
>>> @@ -117,6 +117,21 @@ MODULE_PARM_DESC(skip_validation, "Skip unit 
>>> descriptor validation (default: no)
>>>   static DEFINE_MUTEX(register_mutex);
>>>   static struct snd_usb_audio *usb_chip[SNDRV_CARDS];
>>>   static struct usb_driver usb_audio_driver;
>>> +static struct snd_usb_vendor_ops *vendor_ops;
>>> +
>>> +int snd_usb_register_vendor_ops(struct snd_usb_vendor_ops *ops)
>>
>> platform ops?
>>
> 
> Will change it.
> 
>>> +{
>>> +       vendor_ops = ops;
>>> +       return 0;
>>> +}
>>> +EXPORT_SYMBOL_GPL(snd_usb_register_vendor_ops);
>>
>> What happens if several platforms try to register different ops? I saw
>> from the patch 09/14 that you register these ops unconditionally. If
>> other devices follow your approach there is an obvious conflict.
>>
> 
> Thank you for the review.
> 
> That is true.  I don't think there is a proper need to have multiple 
> vendor ops being registered, so maybe just returning an error for if ops 
> are already registered is sufficient.
This would be a required step. And also you have to check the running 
platform before registering your ops unconditionally. Ideally this 
should be done as a part of the device's driver, so that we can control 
registration of the platform ops using the usual interface.
> 
> Thanks
> Wesley Cheng
-- 
With best wishes
Dmitry
next prev parent reply	other threads:[~2022-12-27 21:33 UTC|newest]
Thread overview: 85+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-23 23:31 [RFC PATCH 00/14] Introduce QC USB SND audio offloading support Wesley Cheng
2022-12-23 23:31 ` [RFC PATCH 01/14] ASoC: Add SOC USB APIs for adding an USB backend Wesley Cheng
2022-12-24  6:48   ` Greg KH
2022-12-23 23:31 ` [RFC PATCH 02/14] ASoC: qcom: qdsp6: Introduce USB AFE port to q6dsp Wesley Cheng
2023-01-04 23:33   ` Pierre-Louis Bossart
2023-01-06  1:05     ` Wesley Cheng
2023-01-06 16:09       ` Pierre-Louis Bossart
2023-01-07  0:51         ` Wesley Cheng
2023-01-05 18:09   ` Krzysztof Kozlowski
2023-01-06  1:32     ` Wesley Cheng
2022-12-23 23:31 ` [RFC PATCH 03/14] ASoC: qcom: Add USB backend ASoC driver for Q6 Wesley Cheng
2022-12-24  9:02   ` Greg KH
2022-12-27 13:04     ` Mark Brown
2022-12-27 13:45       ` Greg KH
2022-12-27 14:02         ` Takashi Iwai
2022-12-27 14:11           ` Mark Brown
2022-12-27 15:11         ` Mark Brown
2022-12-27 21:06           ` Wesley Cheng
2022-12-27 21:07     ` Wesley Cheng
2023-01-04 23:41   ` Pierre-Louis Bossart
2023-01-06  1:05     ` Wesley Cheng
2023-01-06 16:16       ` Pierre-Louis Bossart
2022-12-23 23:31 ` [RFC PATCH 04/14] sound: usb: card: Introduce USB SND vendor op callbacks Wesley Cheng
2022-12-24 11:03   ` Dmitry Baryshkov
2022-12-27 21:07     ` Wesley Cheng
2022-12-27 21:33       ` Dmitry Baryshkov [this message]
2022-12-29 13:49   ` Oliver Neukum
2022-12-29 14:20     ` Takashi Iwai
2022-12-30  7:10       ` Wesley Cheng
2023-01-03 12:20         ` Oliver Neukum
2023-01-03 12:49           ` Takashi Iwai
2023-01-03 23:45             ` Wesley Cheng
2022-12-23 23:31 ` [RFC PATCH 05/14] sound: usb: Export USB SND APIs for modules Wesley Cheng
2022-12-24  6:48   ` Greg KH
2022-12-23 23:31 ` [RFC PATCH 06/14] usb: core: hcd: Introduce USB HCD APIs for interrupter management Wesley Cheng
2022-12-24  8:54   ` Greg KH
2022-12-27 21:13     ` Wesley Cheng
2022-12-24 15:29   ` Alan Stern
2022-12-27 21:07     ` Wesley Cheng
2022-12-28  8:59       ` Oliver Neukum
2022-12-28 15:16         ` Alan Stern
2022-12-28 20:31           ` Wesley Cheng
2022-12-29  1:41             ` Alan Stern
2022-12-23 23:31 ` [RFC PATCH 07/14] usb: host: xhci: Add XHCI secondary interrupter support Wesley Cheng
2022-12-24  8:55   ` Greg KH
2022-12-28 15:47   ` Mathias Nyman
2022-12-29 21:14     ` Wesley Cheng
2023-01-02 16:38       ` Mathias Nyman
2023-01-09 20:24         ` Wesley Cheng
2023-01-10 19:47           ` Mathias Nyman
2023-01-10 20:03             ` Wesley Cheng
2023-01-11  3:11               ` Wesley Cheng
2023-01-12  9:24                 ` Mathias Nyman
2023-01-13  0:34                   ` Wesley Cheng
2022-12-23 23:31 ` [RFC PATCH 08/14] usb: dwc3: Add DT parameter to specify maximum number of interrupters Wesley Cheng
2022-12-24 11:13   ` Dmitry Baryshkov
2022-12-26 12:28     ` Krzysztof Kozlowski
2022-12-27 21:06     ` Wesley Cheng
2022-12-23 23:31 ` [RFC PATCH 09/14] sound: usb: Introduce QC USB SND offloading support Wesley Cheng
2023-01-02 17:28   ` Takashi Iwai
2023-01-04 22:38     ` Wesley Cheng
2023-01-04 23:51   ` Pierre-Louis Bossart
2023-01-06  1:06     ` Wesley Cheng
2022-12-23 23:31 ` [RFC PATCH 10/14] sound: usb: card: Check for support for requested audio format Wesley Cheng
2022-12-24  8:59   ` Greg KH
2022-12-27 21:07     ` Wesley Cheng
2022-12-23 23:31 ` [RFC PATCH 11/14] sound: soc: soc-usb: Add PCM format check API for USB backend Wesley Cheng
2022-12-23 23:31 ` [RFC PATCH 12/14] sound: soc: qcom: qusb6: Ensure PCM format is supported by USB audio device Wesley Cheng
2022-12-24  8:19   ` Sergey Shtylyov
2022-12-24  8:50     ` Wesley Cheng
2023-01-03 17:44   ` Mark Brown
2022-12-23 23:31 ` [RFC PATCH 13/14] ASoC: dt-bindings: Add Q6USB backend bindings Wesley Cheng
2022-12-26 12:25   ` Krzysztof Kozlowski
2022-12-23 23:32 ` [RFC PATCH 14/14] ASoC: dt-bindings: Update example for enabling USB offload on SM8250 Wesley Cheng
2022-12-26 12:27   ` Krzysztof Kozlowski
2023-01-03 17:46     ` Mark Brown
2023-01-05 18:09       ` Krzysztof Kozlowski
2023-01-04  0:46   ` Rob Herring
2022-12-24  6:45 ` [RFC PATCH 00/14] Introduce QC USB SND audio offloading support Greg KH
2022-12-24  8:49   ` Wesley Cheng
2022-12-27 14:36   ` Mark Brown
2023-01-04 23:19 ` Pierre-Louis Bossart
2023-01-06  1:05   ` Wesley Cheng
2023-01-06 15:57     ` Pierre-Louis Bossart
2023-01-07  0:46       ` Wesley Cheng
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox
  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):
  git send-email \
    --in-reply-to=f6e4e538-b4dd-a45a-0078-ea7ebb960672@linaro.org \
    --to=dmitry.baryshkov@linaro.org \
    --cc=Thinh.Nguyen@synopsys.com \
    --cc=agross@kernel.org \
    --cc=alsa-devel@alsa-project.org \
    --cc=andersson@kernel.org \
    --cc=bgoswami@quicinc.com \
    --cc=broonie@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=lgirdwood@gmail.com \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=mathias.nyman@intel.com \
    --cc=perex@perex.cz \
    --cc=quic_jackp@quicinc.com \
    --cc=quic_plai@quicinc.com \
    --cc=quic_wcheng@quicinc.com \
    --cc=robh+dt@kernel.org \
    --cc=srinivas.kandagatla@linaro.org \
    --cc=tiwai@suse.com \
    /path/to/YOUR_REPLY
  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
  Be sure your reply has a Subject: header at the top and a blank line
  before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).