From nobody Mon Feb 9 13:17:53 2026 Received: from mail-wr1-f41.google.com (mail-wr1-f41.google.com [209.85.221.41]) (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 A28FB2F5492 for ; Tue, 21 Oct 2025 13:51:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.41 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761054665; cv=none; b=sThmUFoQf9l4U+572sGhw699nkb4Xn7lOuP2OWW71DUD0s3CPQZaY++N5sF/vokSrGzlHWP3c38lIz2SbWhCjhbeiRbYMQdJrnLoqZkP1e7dnlAnRiSNme3PMkvfff6aa6K7wLuwyQEG/rXR8FIx7oiZmnXicv4Yg4yqvX38VDY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761054665; c=relaxed/simple; bh=4qWmFWV6usDb2WlbnIA9nnwCzxgqGMt4OeZOHW/cja0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=TSYGmiRGYg2kE+p5iTLLBby63EWs+YD0PNtYXolyMH1kOfP1/mvXMCH5w0bCAFesakrN0CM6cF+2RZjfJVycrshjxf8rZzAGlFIo3jsryLLmM82CdHZ97h/Hib6/xXVxb0N0pw3UCUXaSiaAvqQNJePaZhQXNqfe9nFn5/E/EoA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=mHxZknXh; arc=none smtp.client-ip=209.85.221.41 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="mHxZknXh" Received: by mail-wr1-f41.google.com with SMTP id ffacd0b85a97d-42706c3b7cfso1931929f8f.2 for ; Tue, 21 Oct 2025 06:51:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1761054662; x=1761659462; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=qIKAmk/sr3iPYuDq3IopdvjJm8cBIcm5+Vkp1UdclNE=; b=mHxZknXhD+VXL+qgE1NmR+FeUJHsGytOqC7oblPGXddMq95YJD6BG8YlH8QBYnWc++ sUXxo2gJPLjKKJkJFFPbTUTjHAS6ZtVP+3SarVNnTtV6OFuN9dViTyYGvs/lWbNE1yXw CgmQ+m8JMpovU2CCggxcNuN3Ojo1pCafxnpZs6fTdA0JZB/8O4lIMIKi6j5V3PUlhPEV PhE+gsJfTrlU1gNX/ZV+tI/D0PVLKidk0IXBoo7ApRuFliGin7aeAmjpRCXGMnYw23fI w6QtTJJ8YrnGf5D03VossnzJ0+aqh0DXuhY/3QJZmmRPQUK2oADFQKXEG9MPblD1k/Bu hQSw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1761054662; x=1761659462; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=qIKAmk/sr3iPYuDq3IopdvjJm8cBIcm5+Vkp1UdclNE=; b=enY5aa7vqSZFXIdc5zCt5h3Hcmg4zDiTe0Dha2ZjW9Vf+o/hL8Qo7pAeaopAZXpdnT spHob00f6Ar4mo2PBzxdK44N5QjxqvuyO+TqM0Bf4UaC3NJiR4+OqVkqEhJSbuNTxhnN vcbyTaWWUiYRGjwcjtRhFBKd7Qk+cmRJAY0uPiOZOZ+wABx8RkT00khK0PpWcPsOCQhX o8x7mT6ydLK3bZs3G2P9meP5GZMxFTZHorEEEsllRP4DC2JQiYssPIKjw9WTdVDuDwt2 2aGLn/F2PvhmtzYZVHULEoDvi+2vXSJ1MvUoPTwSKP/bsnNUnxzbItZ6Nja+cR7zG2jv gXsg== X-Forwarded-Encrypted: i=1; AJvYcCUPYdZOdOCpdLbD9+abq1r9NCe8/DVxqpzzcUfq1TzN4S0dNlLrogdueJ5PaOPTdGGYgKwI1A0VxBdcPxs=@vger.kernel.org X-Gm-Message-State: AOJu0YzQ0JpQSryOkX1sfRHA4WiRkxNVmDDrraZNVOnyQ94z7jiZprhl txIi0MCpzJmrGzTmoq40LOnj8gD14fVIGzBLzBYJRb/XPpBN2Qkjp0Lx6Lxb+nvTUNE= X-Gm-Gg: ASbGncs/nIVTXBIJ2At3pbbQJd6B1R7syperujqxFapk5Cid0pvv9QkR7e1XfThsJ9M JJtVyqKQ94ztpXj7vVQ4XnlW5bGepK9uYquYzwL5LEzaLUuwWNChsO56xVkAQmfZnVMjqMz7P0h swXMGKMizIg6OahZnivugjuTqYnnJaKRJuZJ8hwlcjbATyHjeiCT0dJNAk4izBD+j13TK5vwM7Q 2lL7Mj/qWlD3ehqIjt4xXaMSeM+5oytfR56MBNWSTk7tmSIABVq7P2bN46N4yEVjw8hJokyN/Cf o7MvdQmexs/Wiy66eo1Goy43Du+QF/3lU1pEn5lZf81rWDw8T8pXFIVvI6mJNNQu1S1xW2TA7UC IUC6sEkZ+OA6cbrVYz3dH+VNBWm0ZwNAiqeQ8ysh7oHn7l8ocUfe7KM9MYgBWxPUDE4LQ+uTaLw == X-Google-Smtp-Source: AGHT+IHNP+f8E91/1pOZh8cHUEUpGtLiB8NKRXERNLSH594KfBNTZxiqvP7VkzGge4eOg5d1BGU9/w== X-Received: by 2002:a5d:5d0a:0:b0:3e7:6104:35a8 with SMTP id ffacd0b85a97d-42704d98e81mr11781943f8f.35.1761054661868; Tue, 21 Oct 2025 06:51:01 -0700 (PDT) Received: from hackbox.lan ([86.121.7.169]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-427f00b97f8sm20124378f8f.36.2025.10.21.06.51.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 21 Oct 2025 06:51:01 -0700 (PDT) From: Abel Vesa Date: Tue, 21 Oct 2025 16:50:44 +0300 Subject: [PATCH RFC 1/3] ASoC: dt-bindings: qcom,sm8250: Add Dell XPS13 9345 sound card Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251021-dell-xps13-9345-enable-audio-v1-1-6f3f6bbd977b@linaro.org> References: <20251021-dell-xps13-9345-enable-audio-v1-0-6f3f6bbd977b@linaro.org> In-Reply-To: <20251021-dell-xps13-9345-enable-audio-v1-0-6f3f6bbd977b@linaro.org> To: Srinivas Kandagatla , Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Jaroslav Kysela , Takashi Iwai , Bjorn Andersson , Konrad Dybcio Cc: linux-sound@vger.kernel.org, linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Abel Vesa X-Mailer: b4 0.15-dev-dedf8 X-Developer-Signature: v=1; a=openpgp-sha256; l=1017; i=abel.vesa@linaro.org; h=from:subject:message-id; bh=4qWmFWV6usDb2WlbnIA9nnwCzxgqGMt4OeZOHW/cja0=; b=owEBbQKS/ZANAwAKARtfRMkAlRVWAcsmYgBo94++xan16D0H5OsxYqfa71JS3sbzr6bLQ2e+v api1hS//j+JAjMEAAEKAB0WIQRO8+4RTnqPKsqn0bgbX0TJAJUVVgUCaPePvgAKCRAbX0TJAJUV VgQ9D/0aM9A9YNTlPu4PveLAsEJG2wE5g3OTHxFvLCruh4g0O8emfw976SwMNA5xbFWxJl+2271 Rpmese605PkKOkEkUhlmjU5QR4Flp/jV51vE3O4sZAqqzO05uUtZgDTfNADiVWGhsYwfLAmBgYx J1tIf5bimXnX/OnyvA+7V9oP/fRBlb/JtK0aBv2Ons2C9fSXY9lTL65KKPrJsCfKnl4NrKO0S7T vAZs+0LsQzC7UxqDU6E2y4Lczmmt9Jc89PlAK0By7kK0QEPcQ2rWkKypn5Y5zIMoS9yCwz4Ei1o gTUSj6rBmnl4gL+ieubpCz/k5IWPrH5lhOgLuVe5+uVtqtz5Ls2UjHlzUNmkJl6bSSSNUTK5YBa c1PbdfvUAezF92c80t1BTN948AOlHRsmtCmLBzh6Y7ZevmyO3y6YjB8z1+OUzBaDDtVep8RAaZt T17FQNkASovjBqbzR29N1aO0ofV2APkbiDbrKpNEmmEGl1bSbMcf+21Ru8UhIDUbn9llqQFCwDq QCKRypfhTKbX+MJnCw0XdGtlrpTIYnNigf4hwnTwu34pUIHisio/o+g/GAi3LnvaDvDttJRW3K/ Fa26D6cjcuv+xWW6BTa+Da5ly1R7s8P9P8rcXBH0+e4yo7Fzoa6XTCBKDqDlOZ2K4N0C9TZ5Xy/ m1xfF7sg+a24oBg== X-Developer-Key: i=abel.vesa@linaro.org; a=openpgp; fpr=6AFF162D57F4223A8770EF5AF7BF214136F41FAE The Dell XPS13 9345 maps the speakers and tweeters starting from the right side instead of left, which means we need to handle it differently then the rest of the X Elite platforms. So document its new compatible. Signed-off-by: Abel Vesa --- Documentation/devicetree/bindings/sound/qcom,sm8250.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/sound/qcom,sm8250.yaml b/Doc= umentation/devicetree/bindings/sound/qcom,sm8250.yaml index 868acc077046596120ea7f427e802282ed03c853..20566224d2e42574ab96f93c119= 24bbeae22f0bc 100644 --- a/Documentation/devicetree/bindings/sound/qcom,sm8250.yaml +++ b/Documentation/devicetree/bindings/sound/qcom,sm8250.yaml @@ -29,6 +29,7 @@ properties: - qcom,sm8750-sndcard - const: qcom,sm8450-sndcard - enum: + - dell,xps13-9345-sndcard - fairphone,fp4-sndcard - fairphone,fp5-sndcard - qcom,apq8096-sndcard --=20 2.48.1 From nobody Mon Feb 9 13:17:53 2026 Received: from mail-wr1-f45.google.com (mail-wr1-f45.google.com [209.85.221.45]) (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 790C5339711 for ; Tue, 21 Oct 2025 13:51:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761054667; cv=none; b=roeXbwmOTk2ILikfaJ5bCq1yR2BxvCUSbx+CL/CL35ShKUW+qJEwxsUfvM3fACp0n4919nnzwYOII4KarNV0B9GB5wrTPaXetZJ2P/mSjcUpxlhKYqYiswW6Tf8kCJXOGDpgOVPNYnk8ZDu2qEyfxSNdsLiX3TUcsCFYcuPkFx0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761054667; c=relaxed/simple; bh=K2jOnkW1IsfbbGeogypIYlrDxXiV/U7Y6TILjFAX1/c=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=bT31g5LM9pDT8IeMpnlHWarI6uDBxpT0u560wOIBV9DqatbLuPEX55CtdZyXey4QRHPxK8YOzuYhLruGryQohklEjFkEoBGpvQc+i9SXRnpZAHCp8BRqYZYAR7lajxk03stiA0sb+eB6vinolb8na486a1U9edWQq3bWMpcYfu0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=lbr8IPQW; arc=none smtp.client-ip=209.85.221.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="lbr8IPQW" Received: by mail-wr1-f45.google.com with SMTP id ffacd0b85a97d-426ff694c1fso907149f8f.2 for ; Tue, 21 Oct 2025 06:51:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1761054664; x=1761659464; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=bWW5rpiL3fXVP4SacOcVtEnuu9Zwh6Lw21oGD01RkRw=; b=lbr8IPQWRYG9GBBw8BCwSfaJyYR6moo9IodUx5J7cJf/Z+s+r4FaXz9DeHe9natYHP Bw6/o9Ll4Le6chTKdp5eZWIapnL0rTnmrRjPyooppXoSprODKpGJj9CsoQkg3borTFXI QVddDrGEk+/A5AwxClXx/4AH5rmPesgHSag09HczNRg9W6isaItWGR6SJ5kcBYreAaUu 86RGbRbHlGhvWVfAc5jZSi2JqBKeftr87Swwkm8puY+zLP+fDVwwqcCspUKut4R8iaQq qLI6KFlQPzfx/3vDV13ido3kwKPNdue6EIvJxBAMTtnS7C2hUeJdMXcueRpzSbgIjx5q E+ZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1761054664; x=1761659464; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=bWW5rpiL3fXVP4SacOcVtEnuu9Zwh6Lw21oGD01RkRw=; b=iNfpXP+mirPlDc2cQjZzSVJfyYxuS+lWnaaNNPHk4AJGGN2vufG/tg9A2tKPKLcJ5E ssZ6WyEJp1t779MmprO+oEwZzvlfasIFFioK18blVGl9PJCdXpEqqBkAJvzMXIo+U3ov hTkle3T5YyXHaoMYH+Dc2sVD1nk1F46v6YG7eVTCtvsyJ6KPIHvi32ruYow93p588rPY HZNl+a9BygORHlLa3haDhDeZHbcdkeLbW+ZZnRlL8fBgrD/nRhDKqYwseMsHWRCYh89Y SE4jcXLKcs7WNJSo49pLwGRdnX+FQ9vVpA9YlHOb5CIZqSpiTbk102X/Jf1QFoFGaho+ 6Vxw== X-Forwarded-Encrypted: i=1; AJvYcCWMFYhfHowkHZM6wZQaEbMofYAisUFggvBDK5OKRPQVtlgBAp6vbkVKwnqHyX5LBFz/c/9+MgzIm2YXBD8=@vger.kernel.org X-Gm-Message-State: AOJu0YzNtbZ6wmdQemLqG7GkbfujKBvsqfVkR72MS3eXvpXGJYxlgga+ Z393udrhJWsT4Xg2C+C0enlzMI2Icvown/IOq4aNLXRkRF8pgoI+y4zJt0yMgvfO3xw= X-Gm-Gg: ASbGncv/d8oIMKPDFxNy390gQJoSkEXggRei/EXP1SuMNGLTqpZFD9adXwes5/Pzr1e IZMwWFSVVbZkW+Kg5kA9vobg67L6hh/edCPgsbPJw3lq4l3JZcW+R+RqHBn3cfKTfX1U4EvfiRI SN9jD+QRUEAszygnnQyhGl/mLxiJ1KBEGfTo4zMpEfttzd2O84XJWJOCFI4tjwE6Bogup4Tz1Nx 9OEsopllnZTuCQ1MWEpK58z+ojRraUx7vhL/SiInk2e1ZhnAjIe0srfE4MlEvPzWDgIdASdqJTa vmTWjNqBOUyUA7pBoFJix5whL7mt0HEdWW5Vam0bhPt+b7PkaKFzix4MxSJjljS8BJtekqOwvLk LkJgGq6hz5jrgpTHbnd324eAG0P/VQOv5Mg4uKoBYfqnSvHJgjqz3B7SSRWt5SgBpG0KFw5IkrA == X-Google-Smtp-Source: AGHT+IEVarB8hPd9oTaPMzVW88VSh7bgsSwShOtuu9cb1VFtLqYXTOEOEnjKaYmdkaTGgMDCDNPnsw== X-Received: by 2002:a05:6000:3101:b0:3ff:17ac:a34b with SMTP id ffacd0b85a97d-42704db8d8fmr12866650f8f.42.1761054663604; Tue, 21 Oct 2025 06:51:03 -0700 (PDT) Received: from hackbox.lan ([86.121.7.169]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-427f00b97f8sm20124378f8f.36.2025.10.21.06.51.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 21 Oct 2025 06:51:02 -0700 (PDT) From: Abel Vesa Date: Tue, 21 Oct 2025 16:50:45 +0300 Subject: [PATCH RFC 2/3] ASoC: qcom: x1e80100: Add Dell XPS13 9345 support Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251021-dell-xps13-9345-enable-audio-v1-2-6f3f6bbd977b@linaro.org> References: <20251021-dell-xps13-9345-enable-audio-v1-0-6f3f6bbd977b@linaro.org> In-Reply-To: <20251021-dell-xps13-9345-enable-audio-v1-0-6f3f6bbd977b@linaro.org> To: Srinivas Kandagatla , Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Jaroslav Kysela , Takashi Iwai , Bjorn Andersson , Konrad Dybcio Cc: linux-sound@vger.kernel.org, linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Abel Vesa X-Mailer: b4 0.15-dev-dedf8 X-Developer-Signature: v=1; a=openpgp-sha256; l=3561; i=abel.vesa@linaro.org; h=from:subject:message-id; bh=K2jOnkW1IsfbbGeogypIYlrDxXiV/U7Y6TILjFAX1/c=; b=owEBbQKS/ZANAwAKARtfRMkAlRVWAcsmYgBo94+/wao7msGfzrKycnoNRBsxGkf+jr3yIVSag doPwABdLfmJAjMEAAEKAB0WIQRO8+4RTnqPKsqn0bgbX0TJAJUVVgUCaPePvwAKCRAbX0TJAJUV Vik0D/9yRlW7mzDOHEZOM4jU8YAieeym5Qv4zPGKoJZs2lKTlP77jfPT+8ouLYC/f6lUvG43tpq fgWnbwhFpZI5mAmZM1NZ/q8Eph63OH8zrCh+ei3r+IhefciJ1FxlujC9RUOjMzQByrA83141md1 0qSgE6YQwgqNT1Rq0xSV+QgEo6IdPIFC2B1NaJVnUVEBpXhrzlvng9WH0sRIpgGSiwTFP6pUgCi VvPhfza6NsrEKTpPUiK4qJckRcRQjVYFJbRM2KSfMuSJFxmrKJint/PgIKT0j34Dl0gq2MNefX1 hVHdRD31Ctmv/0pBz9g6Ll8pRr6GW7lq0LSehX1lD2dl2AE6nbUa+v2ErDLz1wUbYs+mV7Kdk1S 9fEN7GXLKX+pwzZxxJGITtuoR+Nqx6poFcnkZob2UHb2lk/fKUf79HlEYLkWL7xIDdkuXoFgLIO R2iOxtqH32/tkaUWU74VF7DWI22wp1oU7yZ/H/HO7HFJa45LKpKiyNlC83wwfZPNfthz84YFPSp /X7AI4jJMtG4dcolrPS9x2wXzUS18/V/ubyT3wqDFGMXigpwotemHsfNQ7A8JffbXRStfjTX32T APjxSfVyXPeF9nlrMUk2vYF8ERvnxgzn4KnoTjAi9cR47Ux26yrSjon476SQw/SoevCoQmXspIK YSFzwxWlX8ZiTew== X-Developer-Key: i=abel.vesa@linaro.org; a=openpgp; fpr=6AFF162D57F4223A8770EF5AF7BF214136F41FAE On Dell XPS13 9345, the PCM channels are mapped starting with right hand side instead of left. So in order to support this, we need to hardcode the mapping and tie it up to a dedicated board compatible. So define a match data that brings the mapping as well, for the XPS 13, while the rest of the boards will fallback to use the mapping based on number of channels. Signed-off-by: Abel Vesa --- sound/soc/qcom/x1e80100.c | 49 ++++++++++++++++++++++++++++++++++++++++++-= ---- 1 file changed, 44 insertions(+), 5 deletions(-) diff --git a/sound/soc/qcom/x1e80100.c b/sound/soc/qcom/x1e80100.c index 444f2162889f7d9d4b6b06bddc980d8a15dd988b..e21cf534b2ac3875b694f381f26= 0164acb2e3ae4 100644 --- a/sound/soc/qcom/x1e80100.c +++ b/sound/soc/qcom/x1e80100.c @@ -15,10 +15,17 @@ #include "qdsp6/q6dsp-common.h" #include "sdw.h" =20 +struct x1e80100_snd_cfg { + const char *driver_name; + const unsigned int *channels_map; + int channels_num; +}; + struct x1e80100_snd_data { bool stream_prepared[AFE_PORT_MAX]; struct snd_soc_card *card; struct sdw_stream_runtime *sruntime[AFE_PORT_MAX]; + const struct x1e80100_snd_cfg *cfg; struct snd_soc_jack jack; struct snd_soc_jack dp_jack[8]; bool jack_setup; @@ -95,8 +102,16 @@ static int x1e80100_snd_hw_params(struct snd_pcm_substr= eam *substream, return qcom_snd_sdw_hw_params(substream, params, &data->sruntime[cpu_dai-= >id]); } =20 -static int x1e80100_snd_hw_map_channels(unsigned int *ch_map, int num) +static int x1e80100_snd_hw_map_channels(struct x1e80100_snd_data *data, + unsigned int *ch_map, int num) { + if (data->cfg->channels_map) { + for (int i =3D 0; i < data->cfg->channels_num; i++) + ch_map[i] =3D data->cfg->channels_map[i]; + + return 0; + } + switch (num) { case 1: ch_map[0] =3D PCM_CHANNEL_FC; @@ -136,7 +151,7 @@ static int x1e80100_snd_prepare(struct snd_pcm_substrea= m *substream) switch (cpu_dai->id) { case WSA_CODEC_DMA_RX_0: case WSA_CODEC_DMA_RX_1: - ret =3D x1e80100_snd_hw_map_channels(rx_slot, channels); + ret =3D x1e80100_snd_hw_map_channels(data, rx_slot, channels); if (ret) return ret; =20 @@ -210,15 +225,39 @@ static int x1e80100_platform_probe(struct platform_de= vice *pdev) if (ret) return ret; =20 - card->driver_name =3D of_device_get_match_data(dev); + data->cfg =3D of_device_get_match_data(dev); + + card->driver_name =3D data->cfg->driver_name; x1e80100_add_be_ops(card); =20 return devm_snd_soc_register_card(dev, card); } =20 +static const struct x1e80100_snd_cfg x1e80100_cfg =3D { + .driver_name =3D "x1e80100", +}; + +static const struct x1e80100_snd_cfg glymur_cfg =3D { + .driver_name =3D "glymur", +}; + +static const unsigned int right_left_4_channels_map[] =3D { + PCM_CHANNEL_FR, + PCM_CHANNEL_RB, + PCM_CHANNEL_FL, + PCM_CHANNEL_LB, +}; + +static const struct x1e80100_snd_cfg dell_xps13_9345_cfg =3D { + .driver_name =3D "x1e80100", + .channels_map =3D right_left_4_channels_map, + .channels_num =3D ARRAY_SIZE(right_left_4_channels_map), +}; + static const struct of_device_id snd_x1e80100_dt_match[] =3D { - { .compatible =3D "qcom,x1e80100-sndcard", .data =3D "x1e80100" }, - { .compatible =3D "qcom,glymur-sndcard", .data =3D "glymur" }, + { .compatible =3D "qcom,x1e80100-sndcard", .data =3D &x1e80100_cfg, }, + { .compatible =3D "dell,xps13-9345-sndcard", .data =3D &dell_xps13_9345_c= fg, }, + { .compatible =3D "qcom,glymur-sndcard", .data =3D &glymur_cfg, }, {} }; MODULE_DEVICE_TABLE(of, snd_x1e80100_dt_match); --=20 2.48.1 From nobody Mon Feb 9 13:17:53 2026 Received: from mail-wm1-f46.google.com (mail-wm1-f46.google.com [209.85.128.46]) (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 60813338931 for ; Tue, 21 Oct 2025 13:51:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761054669; cv=none; b=B3xqI6qn2vaNpXqy582Sis+5tjwKImXQSvdPs/JKV2q7pMtzjO0Zt26KgfK8h6avKNWpY+gC9tqSEb/Zw7xPEkSGttEmDZd9TXr7Rxr5IRtidiKRRwBfd+AG0ZfDVGqh1lsgu6tT2eWdRL2AbxNj/Ml1deouNULcdZG7Uou0PnM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761054669; c=relaxed/simple; bh=ItD1w3fYZyJkpkUo2pyCHq0hC3jYRO0g3nZPTjnaz9g=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=RWzQWypjTLBh8pc/hCvtAYH6lqeClWfvZSMsX5K9IUk6W5pYKLKEqSxnAa9AISEgWHUcMUlVV4q0L3ZrNUb57mTfmXM2qut8eQhJOsoEOs3eNrdGmhWus1XJ2y2Sl5tIKwtDKtJN3ZFBW/J7qFuMs2cVQ9u3kHoKGgLzjnjzsl4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=XPuoL1HI; arc=none smtp.client-ip=209.85.128.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="XPuoL1HI" Received: by mail-wm1-f46.google.com with SMTP id 5b1f17b1804b1-471191ac79dso47377325e9.3 for ; Tue, 21 Oct 2025 06:51:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1761054666; x=1761659466; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=k371KaQpzSfrSY7A+8d/OOUWlGtO1WXGc8SBkB6TQ9o=; b=XPuoL1HIpNmbawE9jlnWHQx0xwdAzGziyNgLXnLXYeHFI8SHUxUNADZ3DlRMQw7DHh M5b0hYRsClMgNEk0RNY/YmcZG32y2SfmSudIPhEmudWil2K2JSxvFYqrebwt/TYIM5HY KpsMGHw0/ruj49jVqhuD2WX7KRupcQSCFc9ebRlIPgv9jIrPktF5QmAhMmINceWch0cv sFQUBzJQ9e6s2N4RL7+VVdqDxvkmuYwZG30z9O3BPXWy30IpUK8Fqf/u/lYnchd1of7a 52qn05ye5JYfgbbC9svgyaq1ZT280J+XZmed5ytDlCTNz5aQY8AcYD+v4cQz8dw5oRHq EByg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1761054666; x=1761659466; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=k371KaQpzSfrSY7A+8d/OOUWlGtO1WXGc8SBkB6TQ9o=; b=njNx3wCt5J9t63jF0T6054qHTJNlIBTb7rKevmkE6wz73mVIwZG4ZflU7EFcARiSMV IaQuu48e8LT8x8PwKmj3XRgWj47VaUlDxphtaPDJF3lAuvBkvued7h6veMsR3t1neOLc dWiboWiSPEiCZ+2eQ5jtuX46kI0kvwNp0c9/qY48kx7HJiIvUknMUNf2csVzfRlLib+I FvGj3saR8XLNKI4aYl9R/tzNaSMJZIsZxmDJ4gRr7iMSD1mh7G+2w458OLPdghKvd1ed tYtMdouS5beO2Bz46t8ItjKfRZ0mDbBwuadwJisQETZOOLqmXEbvZkHKSzYNDitoJ/P1 vlnw== X-Forwarded-Encrypted: i=1; AJvYcCUnmue+YqWYHLRoeQrbnNcKu3rg1IIsdhqwZk+Geui+UDVTxqmqhp37+EiY0sHRENRoB9B16Zxeg8njAwc=@vger.kernel.org X-Gm-Message-State: AOJu0Yy3kU3UMgn6/5Y2FCcCvqKgsqDYNl2S2ksrsX/hFzCPNpPdxkrL 3JipE2pqenuFyWddNCJV2h6x78TMhMo0dS3x08kqTou9TErrb3999NFzQYfdkO6eoyk= X-Gm-Gg: ASbGncvlILnZt8dVA+sJlky6EDqGyRZOQOz/GKaG5iNG13Ln7dtAmChMVK8QyY05pj9 9SIqvVeQQIoYXlxJx/vMl7LfkHeICA3PnHVBJYfGcOd6prQyC/fX3gHA8TIZ70pfly0+2eAb9YM ZRUARFYEb1QLkuE6zWXOfYFOJ/VBEZl83haZWws+tLGWBo9N1JPGD86sLSRLmr3deS7gMHLJ3s2 z2E9FSrYYJ4XnHaU3qa05/fpXGxx68SDn09FFnU1H3ctjcFpYZ4FR26K75ICZ9rT6qPd4QNBseR J71GRERQSJW6wYTyiRjH9tT/OwVXpQ9AZmgwSO489iKlKKH0Gtc1T23TWEZlxgyzzE+7ye17/yK qQ/4ClQ2xJnlTRSZYslUg6GdK/nVoJkcCzt8D65y+bYDbHNeUGSQYE2wgtoB5qhrdw78iehjVNC qkDc4EaCy6 X-Google-Smtp-Source: AGHT+IGjw/S1hNGLDFHdmUn97UDLVHB/Qxb9mbhMt+WxyITjF/QUF5tftfUNRbXorKB7Tp9SE8SxOw== X-Received: by 2002:a05:600c:3e0b:b0:46e:3cd9:e56f with SMTP id 5b1f17b1804b1-471178726bfmr123732205e9.6.1761054665459; Tue, 21 Oct 2025 06:51:05 -0700 (PDT) Received: from hackbox.lan ([86.121.7.169]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-427f00b97f8sm20124378f8f.36.2025.10.21.06.51.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 21 Oct 2025 06:51:04 -0700 (PDT) From: Abel Vesa Date: Tue, 21 Oct 2025 16:50:46 +0300 Subject: [PATCH RFC 3/3] arm64: dts: qcom: x1e80100-dell-xps13-9345: Add Left/Right Speakers and Tweeter Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251021-dell-xps13-9345-enable-audio-v1-3-6f3f6bbd977b@linaro.org> References: <20251021-dell-xps13-9345-enable-audio-v1-0-6f3f6bbd977b@linaro.org> In-Reply-To: <20251021-dell-xps13-9345-enable-audio-v1-0-6f3f6bbd977b@linaro.org> To: Srinivas Kandagatla , Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Jaroslav Kysela , Takashi Iwai , Bjorn Andersson , Konrad Dybcio Cc: linux-sound@vger.kernel.org, linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Abel Vesa , Sibi Sankar , Sibi Sankar X-Mailer: b4 0.15-dev-dedf8 X-Developer-Signature: v=1; a=openpgp-sha256; l=4697; i=abel.vesa@linaro.org; h=from:subject:message-id; bh=M8w8f1RPSf6k+hOThLXGlLV5SvXfagjt4HRyYETwRxc=; b=owEBbQKS/ZANAwAKARtfRMkAlRVWAcsmYgBo94/BFJhguW80AgiEG/Qh3hQALJXtAuYwKvFKE 3xP/bLJK+mJAjMEAAEKAB0WIQRO8+4RTnqPKsqn0bgbX0TJAJUVVgUCaPePwQAKCRAbX0TJAJUV Vr95D/0RIzFevoW8FYvlsOGI6lKHA+nRoG+T4imudzy9+imWAUzcxFGVQkVAEsVI0kF+ZV1PrDP JFs7bKDuLKh1TIVYjV7dtFfnO2s8otfsPZQt4cj/VN4nz/tK38v5MD4v8UoXNiuHYxy+EbsnpZs PnbkAZcU9RPzJJL3ScFa7XgFarDIjTCr3vC4CwrNzzq6BChKUXyZJUdBrBtCStOp7O0TH+bahX/ 6hVcWLVO3tj47GM4/jhEIrn0A1lluZpeIiZol0cdIFw+IsaQcn+ptg+XfTD8Eqchco8m7qpyxPl FiFDrxFInkpes2yHoB99n/IZ/v9kgsoKZq01lVqJFyyc6NZkJoAWWe14wm53NTPain16+eopX9X IfRiGiqfo6ynOUtxDK4AkxlnWGk3rkMPE1M7naMLdzBOVeAKYsxlN0nQuitY1E1NpoS2YjhBgw/ ujXW1V6sicsBTC5SpGVuMp5/RutT5I3TYGX3Saumh+hnEYVmctqcm14SotbGCkjTyw4szI/2K+R p/azQ0c+nXc7sPOQktGDjwilCNKItEdFA2Z8+Yyp+vi7xL6UdS/+2opzHY2xPP7vfeZOmyVHo2G FX9rEf4oqEj0nNEwZDt2YvzTFMzobbO7vk0LsMX60FQ/UXr5RGt2gzNZXqLPRzTFAbMVGXJentj WiFIhe66JOUTH+w== X-Developer-Key: i=abel.vesa@linaro.org; a=openpgp; fpr=6AFF162D57F4223A8770EF5AF7BF214136F41FAE From: Sibi Sankar Enable left and right speakers/tweeters on the X1E80100 Dell XPS13 9345. Signed-off-by: Sibi Sankar Signed-off-by: Abel Vesa Reviewed-by: Alexey Klimov Reviewed-by: Konrad Dybcio --- .../boot/dts/qcom/x1e80100-dell-xps13-9345.dts | 139 +++++++++++++++++= ++++ 1 file changed, 139 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts b/arch/a= rm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts index 58f8caaa7258077d2c267048ca048279109ddb71..a05dfe2c51364b3ec04963590d9= b02b9fda9f336 100644 --- a/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts +++ b/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts @@ -151,6 +151,50 @@ linux,cma { }; }; =20 + sound { + compatible =3D "dell,xps13-9345-sndcard"; + model =3D "X1E80100-Dell-XPS-13-9345"; + audio-routing =3D "WooferLeft IN", "WSA WSA_SPK1 OUT", + "TweeterLeft IN", "WSA WSA_SPK2 OUT", + "WooferRight IN", "WSA2 WSA_SPK1 OUT", + "TweeterRight IN", "WSA2 WSA_SPK2 OUT"; + + wsa-dai-link { + link-name =3D "WSA Playback"; + + cpu { + sound-dai =3D <&q6apmbedai WSA_CODEC_DMA_RX_0>; + }; + + codec { + sound-dai =3D <&left_woofer>, <&left_tweeter>, + <&swr0 0>, <&lpass_wsamacro 0>, + <&right_woofer>, <&right_tweeter>, + <&swr3 0>, <&lpass_wsa2macro 0>; + }; + + platform { + sound-dai =3D <&q6apm>; + }; + }; + + va-dai-link { + link-name =3D "VA Capture"; + + cpu { + sound-dai =3D <&q6apmbedai VA_CODEC_DMA_TX_0>; + }; + + codec { + sound-dai =3D <&lpass_vamacro 0>; + }; + + platform { + sound-dai =3D <&q6apm>; + }; + }; + }; + vreg_edp_3p3: regulator-edp-3p3 { compatible =3D "regulator-fixed"; =20 @@ -415,6 +459,13 @@ vreg_bob2: bob2 { regulator-initial-mode =3D ; }; =20 + vreg_l1b_1p8: ldo1 { + regulator-name =3D "vreg_l1b_1p8"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1800000>; + regulator-initial-mode =3D ; + }; + vreg_l2b_3p0: ldo2 { regulator-name =3D "vreg_l2b_3p0"; regulator-min-microvolt =3D <3072000>; @@ -880,6 +931,32 @@ &iris { status =3D "okay"; }; =20 +&lpass_tlmm { + spkr_01_sd_n_active: spkr-01-sd-n-active-state { + pins =3D "gpio12"; + function =3D "gpio"; + drive-strength =3D <16>; + bias-disable; + output-low; + }; + + spkr_23_sd_n_active: spkr-23-sd-n-active-state { + pins =3D "gpio13"; + function =3D "gpio"; + drive-strength =3D <16>; + bias-disable; + output-low; + }; +}; + +&lpass_vamacro { + pinctrl-0 =3D <&dmic01_default>, <&dmic23_default>; + pinctrl-names =3D "default"; + + vdd-micb-supply =3D <&vreg_l1b_1p8>; + qcom,dmic-sample-rate =3D <4800000>; +}; + &mdss { status =3D "okay"; }; @@ -1067,6 +1144,68 @@ &smb2360_1_eusb2_repeater { vdd3-supply =3D <&vreg_l14b_3p0>; }; =20 +&swr0 { + status =3D "okay"; + + pinctrl-0 =3D <&wsa_swr_active>, <&spkr_01_sd_n_active>; + pinctrl-names =3D "default"; + + /* WSA8845, Left Woofer */ + left_woofer: speaker@0,0 { + compatible =3D "sdw20217020400"; + reg =3D <0 0>; + reset-gpios =3D <&lpass_tlmm 12 GPIO_ACTIVE_LOW>; + #sound-dai-cells =3D <0>; + sound-name-prefix =3D "WooferLeft"; + vdd-1p8-supply =3D <&vreg_l15b_1p8>; + vdd-io-supply =3D <&vreg_l12b_1p2>; + qcom,port-mapping =3D <1 2 3 7 10 13>; + }; + + /* WSA8845, Left Tweeter */ + left_tweeter: speaker@0,1 { + compatible =3D "sdw20217020400"; + reg =3D <0 1>; + reset-gpios =3D <&lpass_tlmm 12 GPIO_ACTIVE_LOW>; + #sound-dai-cells =3D <0>; + sound-name-prefix =3D "TweeterLeft"; + vdd-1p8-supply =3D <&vreg_l15b_1p8>; + vdd-io-supply =3D <&vreg_l12b_1p2>; + qcom,port-mapping =3D <4 5 6 7 11 13>; + }; +}; + +&swr3 { + status =3D "okay"; + + pinctrl-0 =3D <&wsa2_swr_active>, <&spkr_23_sd_n_active>; + pinctrl-names =3D "default"; + + /* WSA8845, Right Woofer */ + right_woofer: speaker@0,0 { + compatible =3D "sdw20217020400"; + reg =3D <0 0>; + reset-gpios =3D <&lpass_tlmm 13 GPIO_ACTIVE_LOW>; + #sound-dai-cells =3D <0>; + sound-name-prefix =3D "WooferRight"; + vdd-1p8-supply =3D <&vreg_l15b_1p8>; + vdd-io-supply =3D <&vreg_l12b_1p2>; + qcom,port-mapping =3D <1 2 3 7 10 13>; + }; + + /* WSA8845, Right Tweeter */ + right_tweeter: speaker@0,1 { + compatible =3D "sdw20217020400"; + reg =3D <0 1>; + reset-gpios =3D <&lpass_tlmm 13 GPIO_ACTIVE_LOW>; + #sound-dai-cells =3D <0>; + sound-name-prefix =3D "TweeterRight"; + vdd-1p8-supply =3D <&vreg_l15b_1p8>; + vdd-io-supply =3D <&vreg_l12b_1p2>; + qcom,port-mapping =3D <4 5 6 7 11 13>; + }; +}; + &tlmm { gpio-reserved-ranges =3D <44 4>, /* SPI11 (TPM) */ <76 4>, /* SPI19 (TZ Protected) */ --=20 2.48.1