From patchwork Mon May 3 20:52:28 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hans de Goede X-Patchwork-Id: 430632 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.4 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER, INCLUDES_PATCH, MAILING_LIST_MULTI, SPF_HELO_NONE, SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2B4E9C43460 for ; Mon, 3 May 2021 20:56:12 +0000 (UTC) Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 6EF2A61283 for ; Mon, 3 May 2021 20:56:11 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 6EF2A61283 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=alsa-devel-bounces@alsa-project.org Received: from alsa1.perex.cz (alsa1.perex.cz [207.180.221.201]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by alsa0.perex.cz (Postfix) with ESMTPS id F3B1416BA; Mon, 3 May 2021 22:55:19 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa0.perex.cz F3B1416BA DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=alsa-project.org; s=default; t=1620075370; bh=EKl7AwZyJPSf2QbpJLTqeUbNflHPB6jkuqALetRnOEM=; h=From:To:Subject:Date:In-Reply-To:References:Cc:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From; b=ew8oBhilwrzWOgz59yd4cz686oAmF+nTOVUlIq68XPqo4TqqwSZpGHqkoTzFYh20I OwenrzjMKSg7GoE9ICEQrVcmtMGNtDJ4dHeRHTuCBX4y0+WMB0uVmXmVh08zMoCUoo qVrgj7PjGwVEy1AwQkcPceZ6cOROpS5OXXTPUTrY= Received: from alsa1.perex.cz (localhost.localdomain [127.0.0.1]) by alsa1.perex.cz (Postfix) with ESMTP id B901BF804B2; Mon, 3 May 2021 22:54:05 +0200 (CEST) Received: by alsa1.perex.cz (Postfix, from userid 50401) id 74675F80114; Mon, 3 May 2021 22:54:00 +0200 (CEST) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [216.205.24.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by alsa1.perex.cz (Postfix) with ESMTPS id 8B90DF80114 for ; Mon, 3 May 2021 22:52:40 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa1.perex.cz 8B90DF80114 Authentication-Results: alsa1.perex.cz; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="dLCCHoUv" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1620075159; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=+huvqnxgF1KlARPMQj5K/U3By1xTBi1G7sO3q6623O8=; b=dLCCHoUvK3Jd6qm6BSL7CTDQ61K+PVjlFycM/RkoTwmtnqo+Y7Ve7HHKJ09YzplcbWqROq AJpj6qH0bBbbukq+Xodm66qE90MSBYCr1gn26JeoXz4rkjXQJ1s1c+2MD2KKbOmjrLOCie uqFFcD5hJn1CkWgdqQD073P3CQYqVOo= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-399-xgTusvynNJqE48R6zRTZ6w-1; Mon, 03 May 2021 16:52:37 -0400 X-MC-Unique: xgTusvynNJqE48R6zRTZ6w-1 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id CDCFA805EE3; Mon, 3 May 2021 20:52:36 +0000 (UTC) Received: from x1.localdomain (ovpn-112-158.ams2.redhat.com [10.36.112.158]) by smtp.corp.redhat.com (Postfix) with ESMTP id 1242C5C1C2; Mon, 3 May 2021 20:52:35 +0000 (UTC) From: Hans de Goede To: Jaroslav Kysela , alsa-devel@alsa-project.org Subject: [PATCH alsa-lib 2/5] mixer: simple - Move handling of 3D Control - Depth controls to the exceptions list Date: Mon, 3 May 2021 22:52:28 +0200 Message-Id: <20210503205231.167346-3-hdegoede@redhat.com> In-Reply-To: <20210503205231.167346-1-hdegoede@redhat.com> References: <20210503205231.167346-1-hdegoede@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=hdegoede@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Cc: Hans de Goede X-BeenThere: alsa-devel@alsa-project.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: "Alsa-devel mailing list for ALSA developers - http://www.alsa-project.org" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: "Alsa-devel" Remove the custom handling of 3D Control - Depth control-names, replacing this with adding the 3 full names which are used for such controls to the exceptions list: "3D Control - Depth" "3D Control Sigmatel - Depth" "3D Control Sigmatel - Rear Depth" Signed-off-by: Hans de Goede --- src/mixer/simple_none.c | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/mixer/simple_none.c b/src/mixer/simple_none.c index 30d5aa8b..b29554cb 100644 --- a/src/mixer/simple_none.c +++ b/src/mixer/simple_none.c @@ -922,6 +922,10 @@ static const struct excep { /* Avoid these Capture Volume/Switch controls getting seen as GLOBAL VOL/SW */ {"Capture Volume", 7, CTL_CAPTURE_VOLUME}, {"Capture Switch", 7, CTL_CAPTURE_SWITCH}, + /* Playback Volume/Switch controls without a " Playback ..." suffix */ + {"3D Control - Depth", 18, CTL_PLAYBACK_VOLUME}, + {"3D Control Sigmatel - Depth", 27, CTL_PLAYBACK_VOLUME}, + {"3D Control Sigmatel - Rear Depth", 32, CTL_PLAYBACK_VOLUME}, {NULL,} }; #endif @@ -953,13 +957,6 @@ static int base_len(const char *name, selem_ctl_type_t *type) } } - if (strstr(name, "3D Control")) { - if (strstr(name, "Depth")) { - *type = CTL_PLAYBACK_VOLUME; - return strlen(name); - } - } - *type = CTL_SINGLE; return strlen(name); } From patchwork Mon May 3 20:52:31 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hans de Goede X-Patchwork-Id: 430634 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.4 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER, INCLUDES_PATCH, MAILING_LIST_MULTI, SPF_HELO_NONE, SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id A93B8C433B4 for ; Mon, 3 May 2021 20:54:33 +0000 (UTC) Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id D079F61157 for ; Mon, 3 May 2021 20:54:32 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D079F61157 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=alsa-devel-bounces@alsa-project.org Received: from alsa1.perex.cz (alsa1.perex.cz [207.180.221.201]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by alsa0.perex.cz (Postfix) with ESMTPS id 57D3E168E; Mon, 3 May 2021 22:53:41 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa0.perex.cz 57D3E168E DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=alsa-project.org; s=default; t=1620075271; bh=MvY64cslqxvvQ5aECsu+fRYfvnVmyjbh1wsOH2AR6q0=; h=From:To:Subject:Date:In-Reply-To:References:Cc:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From; b=c9LcUgrYc/9TjnWkHIxiPi9rRt5CgCIULqRl7zU8HIPkw31ZqgRocMS2AdDGz56cK hLatLuhwRs3hgT3qCiRc19Pgmj6T748F+kU40tnJXpdbf26svvaIUOdLZLpJqqVNPc MDDH6UFUC9tcpeDZuKyVs+C96gGt93A8vXimjKR0= Received: from alsa1.perex.cz (localhost.localdomain [127.0.0.1]) by alsa1.perex.cz (Postfix) with ESMTP id 0A212F80162; Mon, 3 May 2021 22:52:51 +0200 (CEST) Received: by alsa1.perex.cz (Postfix, from userid 50401) id D4274F80279; Mon, 3 May 2021 22:52:48 +0200 (CEST) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by alsa1.perex.cz (Postfix) with ESMTPS id 98617F8028D for ; Mon, 3 May 2021 22:52:44 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa1.perex.cz 98617F8028D Authentication-Results: alsa1.perex.cz; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="VPxwNz2D" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1620075162; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=G1J9wlfqifo9yOskr2L6kKwGnVgLunTYza73Z+xZb1o=; b=VPxwNz2DyrDdN/LJO6nsQ+AvW7/STj5f9cLyIRAn/EpemQOj5ICd/dG+RoJ9AvX7ug+qrl EyGVg2D3q08TWMWrWYSsNH02Ygcm0cXC8CfWm3F1v6L1PIxQ+U9/3kTYCp51+/B7de5vDm ssrtL2NmRieWb68ZXYMx2MF3VIDiHbI= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-556-3RIvdVBtOaWwQbdHjZFXXg-1; Mon, 03 May 2021 16:52:40 -0400 X-MC-Unique: 3RIvdVBtOaWwQbdHjZFXXg-1 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 1683A107ACC7; Mon, 3 May 2021 20:52:40 +0000 (UTC) Received: from x1.localdomain (ovpn-112-158.ams2.redhat.com [10.36.112.158]) by smtp.corp.redhat.com (Postfix) with ESMTP id 368825C1C2; Mon, 3 May 2021 20:52:39 +0000 (UTC) From: Hans de Goede To: Jaroslav Kysela , alsa-devel@alsa-project.org Subject: [PATCH alsa-lib 5/5] mixer: simple - Add exceptions for some Playback Switches with a " Channel Switch" suffix Date: Mon, 3 May 2021 22:52:31 +0200 Message-Id: <20210503205231.167346-6-hdegoede@redhat.com> In-Reply-To: <20210503205231.167346-1-hdegoede@redhat.com> References: <20210503205231.167346-1-hdegoede@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=hdegoede@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Cc: Hans de Goede X-BeenThere: alsa-devel@alsa-project.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: "Alsa-devel mailing list for ALSA developers - http://www.alsa-project.org" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: "Alsa-devel" The following ASoC codec drivers: sound/soc/codecs/rt5640.c sound/soc/codecs/rt5645.c Use the following troublesome playback-switch-control names: "Headphone Channel Switch" "HP Channel Switch" "Speaker Channel Switch" There are 2 problems with these names: 1. They are the mute controls for the matching: "Headphone Playback Volume" "HP Playback Volume" "Speaker Playback Volume" controls, to be properly paired, which is necessary for HW volume-control support, the simple mixer code needs to recognize that the base-name for these is e.g. "Headphone" not "Headphone Channel". 2. They are playback-switches, yet they get recognized as global-switches. Add these to the exceptions table so that they get the proper basename and type set. Note we can NOT fix this by adding " Channel Switch" as a suffix to the suffixes table, because the line-out output on these codecs has the following controls: "OUT Playback Switch" "OUT Channel Switch" "OUT Playback Volume" Where the 2 switches describe mutes in 2 different places in the graph. So if we were to add a " Channel Switch" suffix map to CTL_PLAYBACK_SWITCH then we would get 2 CTL_PLAYBACK_SWITCH controls for the "OUT" mixer element, which is not allowed. Signed-off-by: Hans de Goede --- src/mixer/simple_none.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/mixer/simple_none.c b/src/mixer/simple_none.c index de81966f..d5025f68 100644 --- a/src/mixer/simple_none.c +++ b/src/mixer/simple_none.c @@ -933,6 +933,9 @@ static const struct excep { {"3D Control - Depth", 18, CTL_PLAYBACK_VOLUME}, {"3D Control Sigmatel - Depth", 27, CTL_PLAYBACK_VOLUME}, {"3D Control Sigmatel - Rear Depth", 32, CTL_PLAYBACK_VOLUME}, + {"Headphone Channel Switch", 9, CTL_PLAYBACK_SWITCH}, + {"HP Channel Switch", 2, CTL_PLAYBACK_SWITCH}, + {"Speaker Channel Switch", 7, CTL_PLAYBACK_SWITCH}, /* Capture Volume/Switch controls without a " Capture ..." suffix */ {"ADC Boost Gain", 14, CTL_CAPTURE_VOLUME}, {"IN1 Boost", 9, CTL_CAPTURE_VOLUME},