Received: by 2002:a05:7412:3b8b:b0:fc:a2b0:25d7 with SMTP id nd11csp3002469rdb; Tue, 13 Feb 2024 04:10:51 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCX/m9002NJOn9n8PknlQg26Ai9NtCxaNR9yUKzS+sU/PSHqQEW79c731GaZdZdrInybECFaGJO9EWSsYKAZ/nS1Q5gIbPMff9BqLXdU3A== X-Google-Smtp-Source: AGHT+IGNZrPmNxb1L6wNaTTol8yzLFxoZhW1dfLp0haRQMDHIPRo8V4MJf4RlipQvZ91XyU+KEb+ X-Received: by 2002:a17:90b:2884:b0:296:454f:1e72 with SMTP id qc4-20020a17090b288400b00296454f1e72mr3329617pjb.4.1707826251575; Tue, 13 Feb 2024 04:10:51 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1707826251; cv=pass; d=google.com; s=arc-20160816; b=qWGjmMt7eQqg5VHNWr++BwtgJAe6OjIs2UCY026T7spKjaew58vwD/NAxlq65tUqet Qo8G9oVGKMchKwG5UEndCGqxgMHSM36g5iRqNPuSuY2j0G09ehqDo6CSWC4CzWTxGZDO aIPpu1+KJgXKot45EcsCH7WySl+l/b/RoLFlCXKOgnyQW5FZyoNWNZqM/tmbdtfDUHkZ fU0NXKiGWAgWiB5Mx5pGtflbkSBbBBBoRobiTwWsxf2Mlh2QAqkqn6YIz5zLG7r0s1/3 WVJ+OIZh46LMnYul0U37F2PJd3tM4zZVl6SV4xLDbpVnV0KqWBea1eYaWwf9Syn0b/nC bhoQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=mime-version:list-unsubscribe:list-subscribe:list-id:precedence :user-agent:references:in-reply-to:subject:cc:to:from:message-id :date:dkim-signature:dkim-signature:dkim-signature:dkim-signature; bh=v7TZDFydWHl6WRFqmAy6Kwi1dhKU2+NmuD788mtOIC8=; fh=0eVOlaGo/a34xNJtbZittq5eldphev5+vm11Sbr3K38=; b=we9UavMtHoVWEry7ipCH4UjbM26qFLL43c1XMJYH9kM828OayxdKJIHgBX+tmIoNku lU9PU+qzIPa1XVF0ro0nThUbu8S7z8sYpV+wgfeByDlVwslhrpzidHMG+ljB6TXPELZT tde232XHd0mXvruDwYe83crrt2wSG3cxN+vdnGyUB6Y7D2hhlyg3DcpS3116+Dkbq9Q5 x9C47zE3rr6XH/vHBeGCEX4po+99wFUfOuaenksTdRnAvruUaqiYrsd7ja7K5ddVT3z4 uQS5rhpdnl42mV34tdhpbXYzrU8FI3Lt9jXxKpm+GwpyKg2nL6GeAP2MI7IWwiSM6qcF 597w==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@suse.de header.s=susede2_rsa header.b=e7Tq9gZ8; dkim=neutral (no key) header.i=@suse.de header.s=susede2_ed25519 header.b=F5PgQKCV; dkim=pass header.i=@suse.de header.s=susede2_rsa header.b=Wy7iPzij; dkim=neutral (no key) header.i=@suse.de header.s=susede2_ed25519; arc=pass (i=1 spf=pass spfdomain=suse.de dkim=pass dkdomain=suse.de dkim=pass dkdomain=suse.de dmarc=pass fromdomain=suse.de); spf=pass (google.com: domain of linux-kernel+bounces-63484-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-63484-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=suse.de X-Forwarded-Encrypted: i=2; AJvYcCV5uJ4+U7Hbj9J5kt1poejlqhSsAGA8tZI86b3Y+WmZnUeE23BxYZQw2UtwTxlciM1hJ0x46fWCa3ZCa6HPS6Vf55xb2s1GARUqRVCuuQ== Return-Path: Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [139.178.88.99]) by mx.google.com with ESMTPS id ok16-20020a17090b1d5000b002953aa295e2si1901275pjb.174.2024.02.13.04.10.51 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 13 Feb 2024 04:10:51 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-63484-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) client-ip=139.178.88.99; Authentication-Results: mx.google.com; dkim=pass header.i=@suse.de header.s=susede2_rsa header.b=e7Tq9gZ8; dkim=neutral (no key) header.i=@suse.de header.s=susede2_ed25519 header.b=F5PgQKCV; dkim=pass header.i=@suse.de header.s=susede2_rsa header.b=Wy7iPzij; dkim=neutral (no key) header.i=@suse.de header.s=susede2_ed25519; arc=pass (i=1 spf=pass spfdomain=suse.de dkim=pass dkdomain=suse.de dkim=pass dkdomain=suse.de dmarc=pass fromdomain=suse.de); spf=pass (google.com: domain of linux-kernel+bounces-63484-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-63484-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=suse.de Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id 36C3028B4EC for ; Tue, 13 Feb 2024 12:10:51 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 45E583D3A4; Tue, 13 Feb 2024 12:10:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.b="e7Tq9gZ8"; dkim=permerror (0-bit key) header.d=suse.de header.i=@suse.de header.b="F5PgQKCV"; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.b="Wy7iPzij"; dkim=permerror (0-bit key) header.d=suse.de header.i=@suse.de header.b="0teH5P3w" Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.223.130]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C177638DD5; Tue, 13 Feb 2024 12:10:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=195.135.223.130 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707826234; cv=none; b=gj+3AR3sbeQQAdqTTv0hkBLFcbY5cENIEwxvVnYJj4tRqwjA6qOcBxKfpSmsor7ZkorIiEbZbtEU6sPipSFp5eR8CwtZSsRoZRAn3C8Q+1rluST3cJhsVelU5OPjyF2LA4pwV3+ADpp+jkx40fPwTg2OJuvSj73pNx7dvQ4GBdo= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707826234; c=relaxed/simple; bh=d2Ou20cP8XYlBETKi59cPtNyA6wJ/IizK+37DPPH+lk=; h=Date:Message-ID:From:To:Cc:Subject:In-Reply-To:References: MIME-Version:Content-Type; b=hin2IcRe5WlEA7HV91ZGXh22fj609/m73EJ4Zvo2HkgHmaxTDaNJQo6JGLEngFvq6emasr1nWWO8aAVFQanFy85PZnwjZcaGN26F9qKDcJkJuNkjg5tVVSuAJXkM/5RvjT+GF6BUpoDZNNgX5X1xc++XmF44l7x5tQbxjUBT/gc= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=suse.de; spf=pass smtp.mailfrom=suse.de; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.b=e7Tq9gZ8; dkim=permerror (0-bit key) header.d=suse.de header.i=@suse.de header.b=F5PgQKCV; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.b=Wy7iPzij; dkim=permerror (0-bit key) header.d=suse.de header.i=@suse.de header.b=0teH5P3w; arc=none smtp.client-ip=195.135.223.130 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=suse.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.de Received: from imap1.dmz-prg2.suse.org (imap1.dmz-prg2.suse.org [IPv6:2a07:de40:b281:104:10:150:64:97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id E00B422203; Tue, 13 Feb 2024 12:10:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1707826225; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=v7TZDFydWHl6WRFqmAy6Kwi1dhKU2+NmuD788mtOIC8=; b=e7Tq9gZ8Cf8/2YdJzlYGZ8Yor99+jZfkVS5C6CNpXg+wM2mcL100PR4WrG2QB2PHPsnzqW 5afm/XD+hoeDdi6klqonKXFktnbZwfYbFJTuHttQPPFAHthxMfUfSLY/++OytMAzy08omt tHHPR663G2ESiDGV/biQo0Gu3Wpvhak= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1707826225; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=v7TZDFydWHl6WRFqmAy6Kwi1dhKU2+NmuD788mtOIC8=; b=F5PgQKCVE2cb/8sJrMMpiNrqNEuSTU0RJhJ8mS2prMp8Yz+Ct9DVxYkI2YCwIYBiC9EtEc DZrtzN0OugwW/VBQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1707826224; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=v7TZDFydWHl6WRFqmAy6Kwi1dhKU2+NmuD788mtOIC8=; b=Wy7iPzijVIXWCQ+xijOFndQ+G/40mH+S991gnJxtq3WICm3Z8M52cQsegfWDzMoO2163z9 hc/PtoT1CI2yVSK8BmC08Ro7Yinj5z2N7nuvy0vyNNL6t94Q5SggjIjdTiELqXN+zFzUaH KYU5qONFxgpjbwcUcb8q4px79pm12gI= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1707826224; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=v7TZDFydWHl6WRFqmAy6Kwi1dhKU2+NmuD788mtOIC8=; b=0teH5P3wlkXKW0KZnlXkIUETpXy6MAi85XeXhA6hVOjCC6y/CcGXTM6roi6O3dMfrU7Q1+ YB5+TJz3EVFvD3Bw== Received: from imap1.dmz-prg2.suse.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by imap1.dmz-prg2.suse.org (Postfix) with ESMTPS id 99A451370C; Tue, 13 Feb 2024 12:10:24 +0000 (UTC) Received: from dovecot-director2.suse.de ([10.150.64.162]) by imap1.dmz-prg2.suse.org with ESMTPSA id 9Nv4JDBcy2WKBAAAD6G6ig (envelope-from ); Tue, 13 Feb 2024 12:10:24 +0000 Date: Tue, 13 Feb 2024 13:10:24 +0100 Message-ID: <87plx0y37z.wl-tiwai@suse.de> From: Takashi Iwai To: Wesley Cheng Cc: , , , , , , , , , , , , , , , , , , , , , Subject: Re: [PATCH v15 41/50] ASoC: Add SND kcontrol for fetching USB offload status In-Reply-To: <20240213005422.3121-42-quic_wcheng@quicinc.com> References: <20240213005422.3121-1-quic_wcheng@quicinc.com> <20240213005422.3121-42-quic_wcheng@quicinc.com> User-Agent: Wanderlust/2.15.9 (Almost Unreal) Emacs/27.2 Mule/6.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=US-ASCII Authentication-Results: smtp-out1.suse.de; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=Wy7iPzij; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=0teH5P3w X-Spamd-Result: default: False [0.19 / 50.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; SPAMHAUS_XBL(0.00)[2a07:de40:b281:104:10:150:64:97:from]; TO_DN_SOME(0.00)[]; R_RATELIMIT(0.00)[to_ip_from(RLe67txhfobum3fqdb5xx8e3au)]; RCVD_COUNT_THREE(0.00)[3]; DKIM_TRACE(0.00)[suse.de:+]; MX_GOOD(-0.01)[]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; BAYES_HAM(-0.00)[38.30%]; ARC_NA(0.00)[]; R_DKIM_ALLOW(-0.20)[suse.de:s=susede2_rsa,suse.de:s=susede2_ed25519]; FROM_HAS_DN(0.00)[]; DWL_DNSWL_MED(-2.00)[suse.de:dkim]; FREEMAIL_ENVRCPT(0.00)[gmail.com]; TO_MATCH_ENVRCPT_ALL(0.00)[]; TAGGED_RCPT(0.00)[dt]; MIME_GOOD(-0.10)[text/plain]; DKIM_SIGNED(0.00)[suse.de:s=susede2_rsa,suse.de:s=susede2_ed25519]; RCPT_COUNT_TWELVE(0.00)[23]; MID_CONTAINS_FROM(1.00)[]; DBL_BLOCKED_OPENRESOLVER(0.00)[suse.de:dkim]; FUZZY_BLOCKED(0.00)[rspamd.com]; FREEMAIL_CC(0.00)[linaro.org,intel.com,perex.cz,kernel.org,lwn.net,gmail.com,linuxfoundation.org,synopsys.com,quicinc.com,suse.com,vger.kernel.org,alsa-project.org]; RCVD_TLS_ALL(0.00)[]; SUSPICIOUS_RECIPS(1.50)[] X-Rspamd-Server: rspamd1.dmz-prg2.suse.org X-Spam-Score: 0.19 X-Rspamd-Queue-Id: E00B422203 X-Spam-Level: X-Spam-Flag: NO X-Spamd-Bar: / On Tue, 13 Feb 2024 01:54:13 +0100, Wesley Cheng wrote: > > Add a kcontrol to the platform sound card to fetch the current offload > status. This can allow for userspace to ensure/check which USB SND > resources are actually busy versus having to attempt opening the USB SND > devices, which will result in an error if offloading is active. > > An example of fetching the USB offloading status would look like: > tinymix -D 0 get 'USB Offload Playback Route Status' > -1, -1 (range -1->32) --> [Offload is idle] > > tinymix -D 0 get 'USB Offload Playback Route Status' > 1, 0 (range -1->32) --> [Offload active on card#1 pcm#0] Ah, I didn't notice until now that the second value is the PCM index. > +static int snd_soc_usb_offload_status_info(struct snd_kcontrol *kcontrol, > + struct snd_ctl_elem_info *uinfo) > +{ > + struct snd_soc_component *component = snd_kcontrol_chip(kcontrol); > + struct snd_soc_usb *ctx = snd_soc_find_usb_ctx(component->dev->of_node); > + > + uinfo->type = SNDRV_CTL_ELEM_TYPE_INTEGER; > + uinfo->count = 2*ctx->num_supported_streams; > + uinfo->value.integer.min = -1; > + uinfo->value.integer.max = SNDRV_CARDS; Then it's bogus to set SNDRV_CARDS as max. The PCM index number is independent from the card number. In theory, it can be even more than the card max (very unlikely, though). Wouldn't it be more intuitive to provide two different controls, one for card number and one for PCM index number? thanks, Takashi