Received: by 2002:a05:7412:5112:b0:fa:6e18:a558 with SMTP id fm18csp29358rdb; Mon, 22 Jan 2024 10:51:48 -0800 (PST) X-Google-Smtp-Source: AGHT+IHJmcTGr26vPnJMLC2JT0NWVHWnVefKB3fkSkFR8GHGmnOv9ScZkUp1EYhXIID7HwypNMlj X-Received: by 2002:a05:620a:c4b:b0:783:36b8:c03c with SMTP id u11-20020a05620a0c4b00b0078336b8c03cmr5063406qki.94.1705949508256; Mon, 22 Jan 2024 10:51:48 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1705949508; cv=pass; d=google.com; s=arc-20160816; b=MX3xrCEdnucELwlvjITPuD4GumNDA94/XlhzLtkus9cOSlq5QVDUB1rln9KQEYlYQ5 axN/imMopXAaxShsfNU5mG3bHgyB4S57QylYs3F14m5wlOcs2mZ0iSddXv9ShFj2WsBz OHFmdWK0rOWL+qxKaqPB8rlwDDB7eQ+u3d8QukoYyeQRzkDURvOg56LwZeNYmLLSWtDB zDYG20583K32Z07PB/LL7Wi+KEbxiJ32BK3QNBWg956YkxF005F31kfIzjO2x1ZDFzeF fQk/gWp/r2f0PQO+0z7xa56jspVktzRHdBCHThKuFXlufkHtErHuKfy/KlWsHHGz2Aub PeEg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:in-reply-to:message-id :date:subject:cc:to:from:dkim-signature; bh=x7p8pysXmwbBlKHZWd4Gq8pozeHh2pe6x0YBSstu18Y=; fh=KBIhiGdu1Ygtr3M+FTFcsBcOHAnQgw4Q3/a7frwkCBE=; b=F/7WRXWwRmgVsQv/4Si6/WAUtutwX2yoyq8AqF57aIpqI1DM1QFLMP/PbDMbrN0eDE s8tejfXBFNyoN0XXaZkTevmTQ/9fVtgNFNABbVUBylaO/jUqbMNZ2np/bQTXuHmei85D yO1L8+Sxn5kXjcbCQAAEnp3qoFCTie6XT7Uyh4phFFVFoWjLmyJ8ZC84n1TqGAOAiDNq ULm1zLaVfyCYuKXmL3rI52lutoM/vVLX+fn9uZZxLJuaqZADZGvSeayU84pmzQ9pkKe3 RZ0Zp25IzqE5i3L/d84N26Y3YkFOPBj2BeS8VU+8AUGQEUGgWRL0GZPNppuZW5P2VeKG SzQg== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=O+dcfJF6; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-33960-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-33960-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [2604:1380:45d1:ec00::1]) by mx.google.com with ESMTPS id oq18-20020a05620a611200b007830f739e1csi5841285qkn.400.2024.01.22.10.51.48 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 22 Jan 2024 10:51:48 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-33960-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) client-ip=2604:1380:45d1:ec00::1; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=O+dcfJF6; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-33960-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-33960-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org 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 ny.mirrors.kernel.org (Postfix) with ESMTPS id 016DE1C236CC for ; Mon, 22 Jan 2024 18:51:48 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 2359647F5D; Mon, 22 Jan 2024 18:18:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="O+dcfJF6" Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3F0FF3E48B; Mon, 22 Jan 2024 18:18:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1705947508; cv=none; b=KV/b8cfUno9vyksl+ICAdx+rcEKfC+mZbdSS+EuKBcwmSVsCRjT13HNdVbhzvjdVq2bFiKDL8oOqK1Mlea3Rw4cYY5eN7piXISgxqggz1WHnUov36c4sGRjnAt3NFFjINC1HbhUI7gvQ9gNXGNT9GPOW6w5E26WctG1e2PvDyNo= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1705947508; c=relaxed/simple; bh=iEHE7zcoasy6D541jeKFupXFX5j6AhyLZMvQAbjE414=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=EDYO7ma/+hS5i2w0y8noZ2UvLt0BFNrVsehrr/7z2XK1B7WjyJQ/i97YfGYTudDWPZHoKvyFMq+xFelSBTC3iEtXRhY9giMNGl5/qNO7veKSHvrElWslmcUuTX6lPXd/QHfWobzI4lPqlkZBoTKld4SsXzBZHuCoXow9dTasgvs= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=O+dcfJF6; arc=none smtp.client-ip=10.30.226.201 Received: by smtp.kernel.org (Postfix) with ESMTPSA id D1602C433C7; Mon, 22 Jan 2024 18:18:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1705947507; bh=iEHE7zcoasy6D541jeKFupXFX5j6AhyLZMvQAbjE414=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=O+dcfJF6E044EyavOfv1l9nHnpKuMYutU0LqH7U8RTGknusM+yybwHryBMXCCV6E/ 6xdXL1sM1jWLDi8dwSM2TkJ/23cgWDee+65weSpeDef+3Lw3QGywZuckX7l5pMnBuM e4i8+BZsjataShXzmTwIslxZ30KLNZ2HdE0P5T7EvFYjNK90ueMjsI6Z2QChXLcLG6 YpcRJY8b4iadTa0s43m5mQGMfPzIHXiyRJyd313Mzf6V+Kki3hl3wojw5E7ovJhXMI dBYHM6O7chalTSbVnwzzt/1QCH1Cbb4UUyf2pTu7MtM1X9nvIOot94yej8+sk/BUvp q7CAXSS9+tI6A== Received: from johan by xi.lan with local (Exim 4.97.1) (envelope-from ) id 1rRysa-0000000013V-1wQ8; Mon, 22 Jan 2024 19:18:40 +0100 From: Johan Hovold To: Mark Brown Cc: Srinivas Kandagatla , Banajit Goswami , Liam Girdwood , Jaroslav Kysela , Takashi Iwai , alsa-devel@alsa-project.org, linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org Subject: [PATCH v5 2/4] ASoC: qcom: sc8280xp: limit speaker volumes Date: Mon, 22 Jan 2024 19:18:17 +0100 Message-ID: <20240122181819.4038-3-johan+linaro@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240122181819.4038-1-johan+linaro@kernel.org> References: <20240122181819.4038-1-johan+linaro@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The UCM configuration for the Lenovo ThinkPad X13s has up until now been setting the speaker PA volume to the minimum -3 dB when enabling the speakers, but this does not prevent the user from increasing the volume further. Limit the digital gain and PA volumes to a combined -3 dB in the machine driver to reduce the risk of speaker damage until we have active speaker protection in place (or higher safe levels have been established). Note that the PA volume limit cannot be set lower than 0 dB or PulseAudio gets confused when the first 16 levels all map to -3 dB. Also note that this will probably need to be generalised using machine-specific limits, but a common limit should do for now. Cc: stable@vger.kernel.org # 6.5 Signed-off-by: Johan Hovold --- sound/soc/qcom/sc8280xp.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/sound/soc/qcom/sc8280xp.c b/sound/soc/qcom/sc8280xp.c index ed4bb551bfbb..b7fd503a1666 100644 --- a/sound/soc/qcom/sc8280xp.c +++ b/sound/soc/qcom/sc8280xp.c @@ -32,12 +32,14 @@ static int sc8280xp_snd_init(struct snd_soc_pcm_runtime *rtd) case WSA_CODEC_DMA_RX_0: case WSA_CODEC_DMA_RX_1: /* - * set limit of 0dB on Digital Volume for Speakers, - * this can prevent damage of speakers to some extent without - * active speaker protection + * Set limit of -3 dB on Digital Volume and 0 dB on PA Volume + * to reduce the risk of speaker damage until we have active + * speaker protection in place. */ - snd_soc_limit_volume(card, "WSA_RX0 Digital Volume", 84); - snd_soc_limit_volume(card, "WSA_RX1 Digital Volume", 84); + snd_soc_limit_volume(card, "WSA_RX0 Digital Volume", 81); + snd_soc_limit_volume(card, "WSA_RX1 Digital Volume", 81); + snd_soc_limit_volume(card, "SpkrLeft PA Volume", 17); + snd_soc_limit_volume(card, "SpkrRight PA Volume", 17); break; default: break; -- 2.43.0