From nobody Tue Oct 7 23:15:01 2025 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (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 97DF52D5C9A for ; Fri, 4 Jul 2025 12:12:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751631163; cv=none; b=mcnLXsVbt8fTj/HUwBtucQI/D8Tzj7dGTGPLEdevYsTAalaf1SgryK5wpHT6OywZMPxQ/NadH1tjP3SH55BeF8Ehrrk3uILd2DyT1Skc5WdpfPC2eIjKDVSarsE5ksr/KzFP1mAnWFXNjFi0zUcFG/8v8uYmLfr7DBxq4JvdJnw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751631163; c=relaxed/simple; bh=igUBUA3n5sE+ryV+TCZZwRELbUlpziFktMSLAQRL8mk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=rST72SvFajMeqzoEGf4gsqk0tkEyjhPUotXqzJRAyCJqAodbOcxjtDVVbERb+4lLr9yjcwaD5hciUcBhWybhRIuiMO3aSjPyb0JgRSlEqMHNdvyOHkpXxi8E14go/0MNOS16gvt3J+8PyqcRD+KoBDNbEVMyjVKX0xvn37AU4bQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=IiUjkkFQ; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="IiUjkkFQ" Received: from pps.filterd (m0279870.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 5645Xbs7008178 for ; Fri, 4 Jul 2025 12:12:39 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=qcppdkim1; bh=0K4IH8rL5ak /hBH86TtBACFo7QeNlxuqdpxZlK2scYg=; b=IiUjkkFQgodIVtw/lCHAUsfEELB XtpPnMImlbQrzO6wMIRpNy2bWOJDWzM+F3rjZvnKu2BrvI2BxVnKS3kA5Z7lyzj0 m9+NguEBNyccQXOS+fATth19b36OmCDsHTniQ1QSl4KAJ/SxXbp8Z17u+vELxXxL /Y6f2lr2DVPo5X34r/ua9VAPk3e1eyx+zOo3CaoNtg4VnMb77vudCaByUMJO7ryr wMTJax5apUhXVmIbBmmUgQkW3GGN79Th4R8uZkRZZN8jA5bHUW7O5doimLKkTS5V rAFL8vHyQ+dC6QKxi9KhG143Sa3HGnMLGxGByAumEjZQltwJQjmydbb4yqA== Received: from mail-qk1-f199.google.com (mail-qk1-f199.google.com [209.85.222.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 47j8fxuyfe-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT) for ; Fri, 04 Jul 2025 12:12:39 +0000 (GMT) Received: by mail-qk1-f199.google.com with SMTP id af79cd13be357-7d3d3f64739so209069585a.0 for ; Fri, 04 Jul 2025 05:12:39 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751631158; x=1752235958; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0K4IH8rL5ak/hBH86TtBACFo7QeNlxuqdpxZlK2scYg=; b=H7TOONUoDKiFksL4Dz0twzY2odQ08mGctNCDIZkDwrGWuyoTrayeZrqwS8HDWsFL6Y btn/UPEctm3+kUwy7LctHy/BDmeE/dZjoV6ErdBB1ihDDdiFh7HngPVPQLGod6JondV8 M3NXTumkDAqEKBGeDV7W2/gahUkfLqRZcIci3eQapQodbJIT4llz2wAJ6t4cJ5zq5zD7 ofstXhMHj0Zj6AY2QRUohqLloT5PNiZ3Qz7f3x6uE+coDRHWIdAKV5N1f+dz1uNM6PBc eaAEXesJ/UAf8wMRS+sfqF0Rs+kP+r1jfDgwVX7kNsdnuAAz3mEDOHWQ1tiTVtNy8WDN UeTw== X-Forwarded-Encrypted: i=1; AJvYcCV1pFHN5rPJWnMUz933pJFdSa1pIBsHBjajzwlIQWOXahcH/Zkg80Biz0laXA8CL8QBX3tRdz+VBpUElgE=@vger.kernel.org X-Gm-Message-State: AOJu0YxxQ4OzyhJIuICMYiBzZkdaq4WwVm/OfOC3ZqsVKonK+TzzKPzi dpU5LyqdXdSqacQXhr2D8XKC0ucRQfDXUrMV8VRbEuEsEK5YsKDRhjnDOk9AeHduV2ITXup2MKC 7K0uRb2l1XTZbvfvUSqZ2VYaet/rN/HnIgivILKD0SVT3m+ndxIh3jPdhhgn9ptzhkws= X-Gm-Gg: ASbGnctNdhorluF5sjRCYP82ln7Q9dmf2GwFypauals2pSJOVaBr6kguuwRXtQlnGVz 01VVaWiw0T+X96kySrAH6AFb2iiODVbMUA7kmIomFQ6mUy09evJ6XRYG9CYgm2yhdlqm6UOyRid hp1aR/CjAzQW3d8oMTXrsnQOlmSetG7uUSPP0WI2onoFZIBkT/YYqtEmOYY2rspXQkOSK3omuas HfFWq0E/iHGrKDAvT3BZF8/dIGo9ZiUAmNZfrxzamzkTt0ecpv8PaMWvi9DpwEcYxnBkIMEWPgA KwjhrsyEihgb5ChIM2mzlA1KS0RWrl8B3tySwzApcyagiFCAudSOMRs= X-Received: by 2002:a05:620a:4044:b0:7cd:5ac0:4f19 with SMTP id af79cd13be357-7d5dcc7292cmr417935485a.13.1751631158441; Fri, 04 Jul 2025 05:12:38 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFzCVWXAr6d378Rr/J/MsgHEPTEJ5PePBTQUBZb3QybPZwAeJx5Z9ygLeYof7Xrb9p9N0p3hA== X-Received: by 2002:a05:620a:4044:b0:7cd:5ac0:4f19 with SMTP id af79cd13be357-7d5dcc7292cmr417931485a.13.1751631157858; Fri, 04 Jul 2025 05:12:37 -0700 (PDT) Received: from localhost.localdomain ([5.133.47.210]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-454a997de2asm53656745e9.12.2025.07.04.05.12.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 04 Jul 2025 05:12:37 -0700 (PDT) From: srinivas.kandagatla@oss.qualcomm.com To: vkoul@kernel.org, broonie@kernel.org Cc: yung-chuan.liao@linux.intel.com, pierre-louis.bossart@linux.dev, lgirdwood@gmail.com, perex@perex.cz, tiwai@suse.com, krzysztof.kozlowski@linaro.org, linux-kernel@vger.kernel.org, linux-sound@vger.kernel.org, linux-arm-msm@vger.kernel.org, Srinivas Kandagatla , Dmitry Baryshkov Subject: [PATCH v2 1/4] soundwire: bus: add of_sdw_find_device_by_node helper Date: Fri, 4 Jul 2025 13:12:15 +0100 Message-ID: <20250704121218.1225806-2-srinivas.kandagatla@oss.qualcomm.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250704121218.1225806-1-srinivas.kandagatla@oss.qualcomm.com> References: <20250704121218.1225806-1-srinivas.kandagatla@oss.qualcomm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNzA0MDA5MyBTYWx0ZWRfX6hEy53GY+EeB DuSJShXMLlA3z0AT/ZtUtU0KjAum1bL0H8hETEFGeig7CZuFiRvvKu245RloImN5MM5/wKP+T3f eABLh9bzobBR6n+fwHn4otszCoug06xu8e7fgcVXxyM6IC5FR67jx+509k/uqMe9MyOU2Bl8Tpa ig4B5loLR/i7Ma/YldSnnhBgjqr/D0eydqbrbNRHQ4vSt0buz2eGOfBR7FUFi0dL/+ppo9S0SU7 Aj6hHOzdRrrrcV/UJk/I6eKgGvMZHUKmjTtCOmwuOYy0kPdWIaQNEyyEmQMPAdPNi2Ux7QLxvIL nROSD1HDJpTGZYS/cM0BT0Mc9RMFMiMqBPoIxapAu7qFIEPO60WDyl2hyQnAHcAScep61NwVD3W AImIGxHQPp0ms8qJhZR4BydetdBat8uMW8JMzh5AQsNovtCLZzf6xREJc0fikIIaRvDpQ+Kv X-Proofpoint-GUID: 7g6mYhD9WAxinLFuTDUZbKjPhoVTjE6R X-Proofpoint-ORIG-GUID: 7g6mYhD9WAxinLFuTDUZbKjPhoVTjE6R X-Authority-Analysis: v=2.4 cv=TqPmhCXh c=1 sm=1 tr=0 ts=6867c537 cx=c_pps a=HLyN3IcIa5EE8TELMZ618Q==:117 a=ZsC4DHZuhs/kKio7QBcDoQ==:17 a=Wb1JkmetP80A:10 a=EUspDBNiAAAA:8 a=Ogeiovxhkh_6Bnox_XcA:9 a=bTQJ7kPSJx9SKPbeHEYW:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.1.7,FMLib:17.12.80.40 definitions=2025-07-04_04,2025-07-04_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 bulkscore=0 mlxlogscore=923 suspectscore=0 adultscore=0 phishscore=0 malwarescore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 spamscore=0 classifier=spam authscore=0 authtc=n/a authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2505280000 definitions=main-2507040093 Content-Type: text/plain; charset="utf-8" From: Srinivas Kandagatla There has been more than 3 instances of this helper in multiple codec drivers, it does not make sense to keep duplicating this part of code. Lets add a helper of_sdw_find_device_by_node for codec drivers to use it. Signed-off-by: Srinivas Kandagatla Reviewed-by: Dmitry Baryshkov Acked-by: Vinod Koul --- drivers/soundwire/slave.c | 6 ++++++ include/linux/soundwire/sdw.h | 9 +++++++++ 2 files changed, 15 insertions(+) diff --git a/drivers/soundwire/slave.c b/drivers/soundwire/slave.c index d2d99555ec5a..3d4d00188c26 100644 --- a/drivers/soundwire/slave.c +++ b/drivers/soundwire/slave.c @@ -273,4 +273,10 @@ int sdw_of_find_slaves(struct sdw_bus *bus) return 0; } =20 +struct device *of_sdw_find_device_by_node(struct device_node *np) +{ + return bus_find_device_by_of_node(&sdw_bus_type, np); +} +EXPORT_SYMBOL_GPL(of_sdw_find_device_by_node); + MODULE_IMPORT_NS("SND_SOC_SDCA"); diff --git a/include/linux/soundwire/sdw.h b/include/linux/soundwire/sdw.h index 0832776262ac..096213956d31 100644 --- a/include/linux/soundwire/sdw.h +++ b/include/linux/soundwire/sdw.h @@ -19,6 +19,7 @@ =20 struct dentry; struct fwnode_handle; +struct device_node; =20 struct sdw_bus; struct sdw_slave; @@ -1086,6 +1087,8 @@ int sdw_stream_add_slave(struct sdw_slave *slave, int sdw_stream_remove_slave(struct sdw_slave *slave, struct sdw_stream_runtime *stream); =20 +struct device *of_sdw_find_device_by_node(struct device_node *np); + int sdw_slave_get_scale_index(struct sdw_slave *slave, u8 *base); =20 /* messaging and data APIs */ @@ -1119,6 +1122,12 @@ static inline int sdw_stream_remove_slave(struct sdw= _slave *slave, return -EINVAL; } =20 +static inline struct device *of_sdw_find_device_by_node(struct device_node= *np) +{ + WARN_ONCE(1, "SoundWire API is disabled"); + return NULL; +} + /* messaging and data APIs */ static inline int sdw_read(struct sdw_slave *slave, u32 addr) { --=20 2.49.0 From nobody Tue Oct 7 23:15:01 2025 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (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 2956A2D63FB for ; Fri, 4 Jul 2025 12:12:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751631164; cv=none; b=FTwknar6O+zqzPWym5bPGZvoK89vMCD1QJiyUjbF4cKm5omMZppjnGdJ4m978RFgCAyjaSNS2IaGnmyW7iCwF0qaS+A9hbBI+U2b63Lp2a5N5jMGs0ITvWIrRne6mZ1hFxsIFs4/e/n36hecNe4zVsFXRHhQ1VfuYETDaBfpJnk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751631164; c=relaxed/simple; bh=RWcMcENuzadS5pKo+gf9BqH0aTezwUdBlEwlff9kRkM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=hpUPQ3ZRw6AE3MsOM1oTyL0rZQlmELraEITKiU3pfKF9f91e+xZMg5fN77rKkPdS4bJkCBiY4LwOdR44DfTqNonskGLxMQbxTw5hLEsRarl3wLuRE25BcWqQEJo9SpYqzGgwA7pTLnm0/qS9xPVp6ouhqIfHI04SiNtMp5BbrCA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=Vz94Nr3d; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="Vz94Nr3d" Received: from pps.filterd (m0279873.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 564B62jE019884 for ; Fri, 4 Jul 2025 12:12:41 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=qcppdkim1; bh=LR3fVYUOH7o ec8B/p5wHCcMyr6Oxyk+LtpFmeCILY0Q=; b=Vz94Nr3dXhZ1V0u1N7LN6CBomqh tKLc7oBFCZspB4OUD0OC5iWwTtd+Fxy4mEr4niwdvKy0wjx/03v0Vnv0aNvHdVsT hgmzK6LUZ8pEnLVl0+5L0vVtFjXvnqEUwhXoUkmjSw0j/KOysR77VE0JsbNpOyrm SRuneknDB8ZpcCkxcHHDod1Ypdvl3pk4BlB718HEgGWy/PZ1Syh+3StyLVL0yWx4 lMaNB0uzF4m4DZcQiYGqH0gW9O6epq5kClgztOwUeY1IHkRQDR1RauzNCZkoCqHH WQ5KoZ7770HS2lBOu9QT9SYw2qXK7GZBvtUE7HU0/tDmqMUibPocwb9sujw== Received: from mail-qk1-f200.google.com (mail-qk1-f200.google.com [209.85.222.200]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 47pdsh86ej-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT) for ; Fri, 04 Jul 2025 12:12:41 +0000 (GMT) Received: by mail-qk1-f200.google.com with SMTP id af79cd13be357-7c760637fe5so124120185a.0 for ; Fri, 04 Jul 2025 05:12:41 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751631160; x=1752235960; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=LR3fVYUOH7oec8B/p5wHCcMyr6Oxyk+LtpFmeCILY0Q=; b=ao+oPweAhObHdjy9cKXW9gVlimIvHh2xcIp/xbPMwE1wPqw1orb+Qqqi2gZmCDJrMi BlRLPrTj0tgzhacjT3yeM1DTdGhaIhSmai2vtRkGbiOMdWVyF7NSrFzJxk7V6hkQKPYK 41Kv+oy6rIxsdmBLBVjKBqHfkrA33N4jj6l2ri3nsxI8OF12mPbUZc+xACcSo5Y1wlpV yoKt4e09hDjDuh8NOO/EefrSzkH47I/aaxCKQLPa4ReRQQbpY1fDXtQRO6SVyQgqbOIN c/1EFyMn2JghOITV3+NauYZF5Vc7BFm5r+X+xpIjUI5Z9gd7pDHa3YJQvcuYgM3K2Upd VcDg== X-Forwarded-Encrypted: i=1; AJvYcCX60DPJrb1vxcg9B1vHCIo4fzvZlw7uXG1Edp3MiG1kxke8fQYNCQ2drQdjWF4FEe7znWnfe3XMPgx9EwY=@vger.kernel.org X-Gm-Message-State: AOJu0YzRdZQ6/cmf/SN6867LmT3ASaOYAXvP+lQly0Sm01bU8i0hcyOY jOnRzkeK/gl/IGFEE//uCzVemBvBEUDoVVVlk3MWXlYd9Mj+8AeXI6MX/zzNPpkdFDr7D33LLQs FRNPVc0L2Fn82teY6tkN0dM2D0ItoBBgQS90ioiX31gSvWgsHcl0gT5irc9cXtFFItSU= X-Gm-Gg: ASbGncsZ63m9XMjHAH6SXw+AjzbxnDGIzJXanC6HA0II45lDIyC1u21lG+rgXTLvmg+ nq8Qvp/GE2U/I78Ceea4G/qyaSPR3ff9fT7M/ofB418Y4sEPE7vExA27tMF4ij9hoeW+GZlnZ4A hFDi6fgu+AE/AEF5SsEf1PBUAY8xCf+g77oNfYpB4L6SSdx+NSIRdDIVLDhzCqA6GlO1RngSzTa W2K1GtAHbq0TRMTB2IqhVjGXYwhLoQSkeDiziKHFw+q9m+9isGqwbhYoDEfSHr/RuvqjzkcKIjY vLEnZVmw4oewq4NUy62iBNorIH3vZTNYEh8KUEv7pPyQ9eTjoIc2vjI= X-Received: by 2002:a05:620a:1924:b0:7d0:9c51:498a with SMTP id af79cd13be357-7d5ddb56b75mr297332185a.13.1751631160162; Fri, 04 Jul 2025 05:12:40 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEzjkILAwypMIZUshaZVGJonIlhgRWDFAm9d5sNhdyHQ5r3X/FUqOT+lCNh7XuKnxet9HlSNA== X-Received: by 2002:a05:620a:1924:b0:7d0:9c51:498a with SMTP id af79cd13be357-7d5ddb56b75mr297329385a.13.1751631159751; Fri, 04 Jul 2025 05:12:39 -0700 (PDT) Received: from localhost.localdomain ([5.133.47.210]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-454a997de2asm53656745e9.12.2025.07.04.05.12.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 04 Jul 2025 05:12:38 -0700 (PDT) From: srinivas.kandagatla@oss.qualcomm.com To: vkoul@kernel.org, broonie@kernel.org Cc: yung-chuan.liao@linux.intel.com, pierre-louis.bossart@linux.dev, lgirdwood@gmail.com, perex@perex.cz, tiwai@suse.com, krzysztof.kozlowski@linaro.org, linux-kernel@vger.kernel.org, linux-sound@vger.kernel.org, linux-arm-msm@vger.kernel.org, Srinivas Kandagatla Subject: [PATCH v2 2/4] soundwire: bus: add sdw_slave_get_current_bank helper Date: Fri, 4 Jul 2025 13:12:16 +0100 Message-ID: <20250704121218.1225806-3-srinivas.kandagatla@oss.qualcomm.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250704121218.1225806-1-srinivas.kandagatla@oss.qualcomm.com> References: <20250704121218.1225806-1-srinivas.kandagatla@oss.qualcomm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNzA0MDA5MyBTYWx0ZWRfX4ic9ZbrVD/Np gvlydNZL6I3Npf3pNjk/U7f1SWJporyoCaIG2HfSGfXtXwfPVOuILXmR5jlzPsYL+ceCZshlhW5 vB91JLWk4prQjv8VExPzVC8EPR13mfuixtPFfZTT3rqiiGy/LiYfrQ4aMF+3o8oOymTuYMgYU9U MoXHXYi9Ii0B65o3oGvwU+m4ff0/5vLVc5Vx5nzsIB5qvxPU6S2rL5Q8UVEknMSeDdBNEB/LZAM Ut7w8NTuyPbZK2pYvDHWUYCTj0CxqO+cgFycm5VpJBrTY98OiL64sKSkxfVOa93gjEDUTCaUOXr SI84k0f1kEF/ByM8NgsHI8fPdgTpwUZ8Xj8lzrhciCkoI6eFInclqKMA6A0W6eUhLqKrvshV+JR Shys+Kl/I2ri9oSJg8hnzA6Tn7T4my2PGS58rgccrPrHxaSdKkWJ1pik0mxVeszFM/PVNccC X-Authority-Analysis: v=2.4 cv=RJKzH5i+ c=1 sm=1 tr=0 ts=6867c539 cx=c_pps a=hnmNkyzTK/kJ09Xio7VxxA==:117 a=ZsC4DHZuhs/kKio7QBcDoQ==:17 a=Wb1JkmetP80A:10 a=EUspDBNiAAAA:8 a=G7Fn18kybrAXfbFeA2QA:9 a=PEH46H7Ffwr30OY-TuGO:22 X-Proofpoint-ORIG-GUID: Ki0gdxZZ4vOozAF1KXsIWpdXvDB6_nxc X-Proofpoint-GUID: Ki0gdxZZ4vOozAF1KXsIWpdXvDB6_nxc X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.1.7,FMLib:17.12.80.40 definitions=2025-07-04_04,2025-07-04_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 impostorscore=0 mlxlogscore=857 clxscore=1015 suspectscore=0 phishscore=0 priorityscore=1501 mlxscore=0 spamscore=0 malwarescore=0 lowpriorityscore=0 adultscore=0 classifier=spam authscore=0 authtc=n/a authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2505280000 definitions=main-2507040093 Content-Type: text/plain; charset="utf-8" From: Srinivas Kandagatla There has been 2 instances of this helper in codec drivers, it does not make sense to keep duplicating this part of code. Lets add a helper sdw_get_current_bank() for codec drivers to use it. Signed-off-by: Srinivas Kandagatla Acked-by: Vinod Koul Reviewed-by: Dmitry Baryshkov --- drivers/soundwire/bus.c | 12 ++++++++++++ include/linux/soundwire/sdw.h | 8 ++++++++ 2 files changed, 20 insertions(+) diff --git a/drivers/soundwire/bus.c b/drivers/soundwire/bus.c index 4fd5cac799c5..55c1db816534 100644 --- a/drivers/soundwire/bus.c +++ b/drivers/soundwire/bus.c @@ -1360,6 +1360,18 @@ int sdw_slave_get_scale_index(struct sdw_slave *slav= e, u8 *base) } EXPORT_SYMBOL(sdw_slave_get_scale_index); =20 +int sdw_slave_get_current_bank(struct sdw_slave *slave) +{ + int tmp; + + tmp =3D sdw_read(slave, SDW_SCP_CTRL); + if (tmp < 0) + return tmp; + + return FIELD_GET(SDW_SCP_STAT_CURR_BANK, tmp); +} +EXPORT_SYMBOL_GPL(sdw_slave_get_current_bank); + static int sdw_slave_set_frequency(struct sdw_slave *slave) { int scale_index; diff --git a/include/linux/soundwire/sdw.h b/include/linux/soundwire/sdw.h index 096213956d31..e6a3476bcef1 100644 --- a/include/linux/soundwire/sdw.h +++ b/include/linux/soundwire/sdw.h @@ -1089,6 +1089,8 @@ int sdw_stream_remove_slave(struct sdw_slave *slave, =20 struct device *of_sdw_find_device_by_node(struct device_node *np); =20 +int sdw_slave_get_current_bank(struct sdw_slave *sdev); + int sdw_slave_get_scale_index(struct sdw_slave *slave, u8 *base); =20 /* messaging and data APIs */ @@ -1128,6 +1130,12 @@ static inline struct device *of_sdw_find_device_by_n= ode(struct device_node *np) return NULL; } =20 +static inline int sdw_slave_get_current_bank(struct sdw_slave *sdev) +{ + WARN_ONCE(1, "SoundWire API is disabled"); + return -EINVAL; +} + /* messaging and data APIs */ static inline int sdw_read(struct sdw_slave *slave, u32 addr) { --=20 2.49.0 From nobody Tue Oct 7 23:15:01 2025 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (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 264A02D77F0 for ; Fri, 4 Jul 2025 12:12:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751631165; cv=none; b=TFRXGm6LhmLDQ0XfeKbROFDf6cBxpJ5sCwH6t5oKrf5u1HDmJ8n6+GAxuTb8783IBPJ9Egl5AnI3U2gaL2q8AVJJc41ma+8199oh5X3KR0XZ+cl6hCRMP94vg2OUhFJ9mYQw9vO9u1DTyjAFNysf2TUkFeMDIg+YyFlkV73IFMw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751631165; c=relaxed/simple; bh=PcbfqiyUxEwZf8tEqhL5i8VnQjldetFluKwYbrgGgZk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=JR2wa6xt2hHE/DXcZFiP/YMwtJsjBENWxkIcG0dyD7BpFgOZp7j/9ECQd6lYthIENj+IiLq052GKXjNqJhmnvNqqzvePWUgJ42G31b0uz1zf4fa8G2bjXNJiqEUZ4pJuAnyfaqMYs+a2V8SBxbovEoWm717iTkZ2x/BP+4329P0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=TQp9dl66; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="TQp9dl66" Received: from pps.filterd (m0279868.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 5646US7a022178 for ; Fri, 4 Jul 2025 12:12:43 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=qcppdkim1; bh=tDaEr5HJ73z Ver8qFn0D9NcPZgapsA83KNJlQT6UT4k=; b=TQp9dl66SzTG9b5ZrL5EBQZRtKc C9be+2/fgMC52K5ngBqsFrIiz2aOnjpZf5f43FYRlBlj3/FYy0RSEdhRX1PvjpAL ghcqUo5pMVQYspAle7Mgc8376NKAgwHPMq69uFPnMrE0FGTeCakuuedvr5H7fmA8 KYfMmYLRu3amKrY2omoVXBSpv/A+8j4COtNy6WTkxGGCAqonoZyTkp2nVy9Ydn/G 8OSwNllRSR5/f9o33tQXEhutMWygpQbJJCdRy5qNDr8WokTLhStswykqL4mCSyUm eG5yGzXm0cy2pZ+dO+wz0iBOaNwXpeNzT36ENP6eVgzXQKCxjOYnNXDEzQw== Received: from mail-qk1-f200.google.com (mail-qk1-f200.google.com [209.85.222.200]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 47j7qmkq7g-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT) for ; Fri, 04 Jul 2025 12:12:42 +0000 (GMT) Received: by mail-qk1-f200.google.com with SMTP id af79cd13be357-7d413a10b4cso136096385a.1 for ; Fri, 04 Jul 2025 05:12:42 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751631162; x=1752235962; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=tDaEr5HJ73zVer8qFn0D9NcPZgapsA83KNJlQT6UT4k=; b=VcyWkIK/6IUConmXY5leD03O+/npW6OAW614J1Qtng3E4B+eU7+RVP+byIChsA6Ykw GRrLpx1IbOdllr0fhpOlz/AYuZRbRzZA3YPTqSgF+LCa8iQHM65tnGlk1+Q/oRgTcYte Ps+Meb9y2ERV/tPhvKqW3D3bbV8bTrdAACrwU4qSIdLMHPedo/UqQDJPuivekrO3+efC /p0nqopNpXM7Pf2dCeo8Si7sIkGXoBFjOaWMpXGEHtzfkbhsC58KE+n1Sp5fAa88YOHJ aDCNTrdrIT90FXXyF5N/UFvd93SasfiV47gIpH5z2sST7wXFsN1WD4uopTvEpw72moBh mAzQ== X-Forwarded-Encrypted: i=1; AJvYcCVh6oKeAZeR19y+qBzKJ4u8SXdSDp4wp5cvREbegd1hUziN/1fDchpyH7ZQyNW3qkCkZ4OJAhal+eJeXIM=@vger.kernel.org X-Gm-Message-State: AOJu0YzaQhyQfY6ZjwFg5auD6to1A+3eH1zhNn56vgqBzFqMtOCkfuRx JuIkh6Kt9nqPNeVvkCjapG1LoNUhIi9yCQJRYE8wAZFHAvAIolgKxFsDEy68x5SVxnV4tDPUhfa FyEoeiqSazs6KeJutlqFaRJFviesVgUoM3IG0/YHx/uy7A4b6vPR6v+FLiAeoG9iJIB0= X-Gm-Gg: ASbGncu1phzkycaKxkKteG7l1pRV6HAHzfG48J4XjJiU3KvvmcvwaNk+oiERT9J1m8H c8B9CBYt0ofJ8gvUzLXg6dbhNdRd90Nu2EgqPNo0njit1OWngi5ZWZTT7gErRxe6fTWzEWIqZfV /x3XcLFZo5i4ocKXfKQ5/4kP1n5j93fgiVIy/hxoV7MubHo3aEkLt9MgiO0VJ1JZ+4opcu+GbmB n2Ff3TW06fjYGOCj59+HtFrwsgasTF+hW75MlkE0ekcRIQNq7oZxbpshgu2isPoaruHRO2XF88o HwkqXD6vvEZN+YdtLEswBzHm1HNfVwJuVPxNmJSe9HGs7kHiCXZ58FU= X-Received: by 2002:a05:620a:1b9c:b0:7d3:f15c:ee33 with SMTP id af79cd13be357-7d5ddb32326mr268163185a.10.1751631161890; Fri, 04 Jul 2025 05:12:41 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEtEBcpu43GmpwUkYOsPuU7nA6/okhLPVbExuC2SKjRUk1+q6SREj3BuKFcufebfAJ1Nm0SEQ== X-Received: by 2002:a05:620a:1b9c:b0:7d3:f15c:ee33 with SMTP id af79cd13be357-7d5ddb32326mr268157985a.10.1751631161272; Fri, 04 Jul 2025 05:12:41 -0700 (PDT) Received: from localhost.localdomain ([5.133.47.210]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-454a997de2asm53656745e9.12.2025.07.04.05.12.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 04 Jul 2025 05:12:40 -0700 (PDT) From: srinivas.kandagatla@oss.qualcomm.com To: vkoul@kernel.org, broonie@kernel.org Cc: yung-chuan.liao@linux.intel.com, pierre-louis.bossart@linux.dev, lgirdwood@gmail.com, perex@perex.cz, tiwai@suse.com, krzysztof.kozlowski@linaro.org, linux-kernel@vger.kernel.org, linux-sound@vger.kernel.org, linux-arm-msm@vger.kernel.org, Srinivas Kandagatla , Dmitry Baryshkov Subject: [PATCH v2 3/4] ASoC: codecs: wcdxxxx: use of_sdw_find_device_by_node helper Date: Fri, 4 Jul 2025 13:12:17 +0100 Message-ID: <20250704121218.1225806-4-srinivas.kandagatla@oss.qualcomm.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250704121218.1225806-1-srinivas.kandagatla@oss.qualcomm.com> References: <20250704121218.1225806-1-srinivas.kandagatla@oss.qualcomm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Authority-Analysis: v=2.4 cv=C4TpyRP+ c=1 sm=1 tr=0 ts=6867c53a cx=c_pps a=hnmNkyzTK/kJ09Xio7VxxA==:117 a=ZsC4DHZuhs/kKio7QBcDoQ==:17 a=Wb1JkmetP80A:10 a=EUspDBNiAAAA:8 a=VO0QnzvMDvqADXZeruwA:9 a=PEH46H7Ffwr30OY-TuGO:22 X-Proofpoint-ORIG-GUID: Y2aizWXJoQ4TSPuP-XTWcR1ayhqhMEpg X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNzA0MDA5MyBTYWx0ZWRfXwJ6gQhbHiKcl DM9HBT8j8oM1IZjvp8uVEXHAy70sIjOmr8PBZdwBOEcY9XYOIJlJri6Kk6rnqcvSdXoYZ1eh6RK zUSd+7cqbem41/Ikq00P+Y/3u8DWswPKm6Rg/aCCdCLdvr9aghlhk0X7ZgMAU1EBijc3491dpBr iB0kGfiZeNLZptYuau1fXvzcLEmuyOZMQaePcc0DM4MZvCOXti46z5LiCb1IG7TweMQMGGwQDKV 6xlJIrPdEwhdT8krC8KuUGmokch3bUZXJfU1MsNsp4p5yFToQwx87pzDTZThjy6qGLPhZ6eeGGL pbKlXqkM4RlkczeKxkDwPbcpS8o+6bqmZdGVmOLCAivf2E1Td8wmYqXM3xkJD4hF+WiBHu2p9Qa DofXFEjR5IUl8LioHUOIubTQbKelmaqc00ZBFluT+/u7ZbzAxfClO4tv6Asa5x7Gz0b+Wq4E X-Proofpoint-GUID: Y2aizWXJoQ4TSPuP-XTWcR1ayhqhMEpg X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.1.7,FMLib:17.12.80.40 definitions=2025-07-04_04,2025-07-04_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 phishscore=0 suspectscore=0 bulkscore=0 lowpriorityscore=0 clxscore=1015 priorityscore=1501 spamscore=0 mlxscore=0 mlxlogscore=999 adultscore=0 malwarescore=0 classifier=spam authscore=0 authtc=n/a authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2505280000 definitions=main-2507040093 Content-Type: text/plain; charset="utf-8" From: Srinivas Kandagatla use of_sdw_find_device_by_node helper function, rather than duplicating this function in every codec driver. Signed-off-by: Srinivas Kandagatla Reviewed-by: Dmitry Baryshkov Acked-by: Vinod Koul --- sound/soc/codecs/wcd937x-sdw.c | 6 ------ sound/soc/codecs/wcd937x.c | 4 ++-- sound/soc/codecs/wcd937x.h | 2 -- sound/soc/codecs/wcd938x-sdw.c | 7 ------- sound/soc/codecs/wcd938x.c | 4 ++-- sound/soc/codecs/wcd938x.h | 6 ------ sound/soc/codecs/wcd939x-sdw.c | 6 ------ sound/soc/codecs/wcd939x.c | 4 ++-- sound/soc/codecs/wcd939x.h | 6 ------ 9 files changed, 6 insertions(+), 39 deletions(-) diff --git a/sound/soc/codecs/wcd937x-sdw.c b/sound/soc/codecs/wcd937x-sdw.c index 1bfe7383b311..e7cc699bd8bc 100644 --- a/sound/soc/codecs/wcd937x-sdw.c +++ b/sound/soc/codecs/wcd937x-sdw.c @@ -78,12 +78,6 @@ static struct sdw_dpn_prop wcd937x_dpn_prop[WCD937X_MAX_= SWR_PORTS] =3D { } }; =20 -struct device *wcd937x_sdw_device_get(struct device_node *np) -{ - return bus_find_device_by_of_node(&sdw_bus_type, np); -} -EXPORT_SYMBOL_GPL(wcd937x_sdw_device_get); - int wcd937x_sdw_hw_params(struct wcd937x_sdw_priv *wcd, struct snd_pcm_substream *substream, struct snd_pcm_hw_params *params, diff --git a/sound/soc/codecs/wcd937x.c b/sound/soc/codecs/wcd937x.c index 3b0a8cc314e0..ccd542033967 100644 --- a/sound/soc/codecs/wcd937x.c +++ b/sound/soc/codecs/wcd937x.c @@ -2788,7 +2788,7 @@ static int wcd937x_bind(struct device *dev) return ret; } =20 - wcd937x->rxdev =3D wcd937x_sdw_device_get(wcd937x->rxnode); + wcd937x->rxdev =3D of_sdw_find_device_by_node(wcd937x->rxnode); if (!wcd937x->rxdev) { dev_err(dev, "could not find slave with matching of node\n"); return -EINVAL; @@ -2797,7 +2797,7 @@ static int wcd937x_bind(struct device *dev) wcd937x->sdw_priv[AIF1_PB] =3D dev_get_drvdata(wcd937x->rxdev); wcd937x->sdw_priv[AIF1_PB]->wcd937x =3D wcd937x; =20 - wcd937x->txdev =3D wcd937x_sdw_device_get(wcd937x->txnode); + wcd937x->txdev =3D of_sdw_find_device_by_node(wcd937x->txnode); if (!wcd937x->txdev) { dev_err(dev, "could not find txslave with matching of node\n"); return -EINVAL; diff --git a/sound/soc/codecs/wcd937x.h b/sound/soc/codecs/wcd937x.h index 3ab21bb5846e..49e5dce6f8c9 100644 --- a/sound/soc/codecs/wcd937x.h +++ b/sound/soc/codecs/wcd937x.h @@ -549,8 +549,6 @@ int wcd937x_sdw_hw_params(struct wcd937x_sdw_priv *wcd, struct snd_pcm_hw_params *params, struct snd_soc_dai *dai); =20 -struct device *wcd937x_sdw_device_get(struct device_node *np); - #else int wcd937x_sdw_free(struct wcd937x_sdw_priv *wcd, struct snd_pcm_substream *substream, diff --git a/sound/soc/codecs/wcd938x-sdw.c b/sound/soc/codecs/wcd938x-sdw.c index e822cc145250..a7514d716086 100644 --- a/sound/soc/codecs/wcd938x-sdw.c +++ b/sound/soc/codecs/wcd938x-sdw.c @@ -82,13 +82,6 @@ static struct sdw_dpn_prop wcd938x_dpn_prop[WCD938X_MAX_= SWR_PORTS] =3D { } }; =20 -struct device *wcd938x_sdw_device_get(struct device_node *np) -{ - return bus_find_device_by_of_node(&sdw_bus_type, np); - -} -EXPORT_SYMBOL_GPL(wcd938x_sdw_device_get); - int wcd938x_swr_get_current_bank(struct sdw_slave *sdev) { int bank; diff --git a/sound/soc/codecs/wcd938x.c b/sound/soc/codecs/wcd938x.c index 711f373ece24..e2cb0758bca7 100644 --- a/sound/soc/codecs/wcd938x.c +++ b/sound/soc/codecs/wcd938x.c @@ -3400,7 +3400,7 @@ static int wcd938x_bind(struct device *dev) return ret; } =20 - wcd938x->rxdev =3D wcd938x_sdw_device_get(wcd938x->rxnode); + wcd938x->rxdev =3D of_sdw_find_device_by_node(wcd938x->rxnode); if (!wcd938x->rxdev) { dev_err(dev, "could not find slave with matching of node\n"); ret =3D -EINVAL; @@ -3409,7 +3409,7 @@ static int wcd938x_bind(struct device *dev) wcd938x->sdw_priv[AIF1_PB] =3D dev_get_drvdata(wcd938x->rxdev); wcd938x->sdw_priv[AIF1_PB]->wcd938x =3D wcd938x; =20 - wcd938x->txdev =3D wcd938x_sdw_device_get(wcd938x->txnode); + wcd938x->txdev =3D of_sdw_find_device_by_node(wcd938x->txnode); if (!wcd938x->txdev) { dev_err(dev, "could not find txslave with matching of node\n"); ret =3D -EINVAL; diff --git a/sound/soc/codecs/wcd938x.h b/sound/soc/codecs/wcd938x.h index fb6a0e4ef337..dbafcae247f4 100644 --- a/sound/soc/codecs/wcd938x.h +++ b/sound/soc/codecs/wcd938x.h @@ -670,7 +670,6 @@ int wcd938x_sdw_hw_params(struct wcd938x_sdw_priv *wcd, struct snd_pcm_hw_params *params, struct snd_soc_dai *dai); =20 -struct device *wcd938x_sdw_device_get(struct device_node *np); int wcd938x_swr_get_current_bank(struct sdw_slave *sdev); =20 #else @@ -697,11 +696,6 @@ static inline int wcd938x_sdw_hw_params(struct wcd938x= _sdw_priv *wcd, return -EOPNOTSUPP; } =20 -static inline struct device *wcd938x_sdw_device_get(struct device_node *np) -{ - return NULL; -} - static inline int wcd938x_swr_get_current_bank(struct sdw_slave *sdev) { return 0; diff --git a/sound/soc/codecs/wcd939x-sdw.c b/sound/soc/codecs/wcd939x-sdw.c index f7a9323a9fea..e487a1bb0194 100644 --- a/sound/soc/codecs/wcd939x-sdw.c +++ b/sound/soc/codecs/wcd939x-sdw.c @@ -128,12 +128,6 @@ static struct sdw_dpn_prop wcd939x_tx_dpn_prop[WCD939X= _MAX_TX_SWR_PORTS] =3D { } }; =20 -struct device *wcd939x_sdw_device_get(struct device_node *np) -{ - return bus_find_device_by_of_node(&sdw_bus_type, np); -} -EXPORT_SYMBOL_GPL(wcd939x_sdw_device_get); - unsigned int wcd939x_swr_get_current_bank(struct sdw_slave *sdev) { return FIELD_GET(SDW_SCP_STAT_CURR_BANK, diff --git a/sound/soc/codecs/wcd939x.c b/sound/soc/codecs/wcd939x.c index 64f082e474c1..5a56c79a8922 100644 --- a/sound/soc/codecs/wcd939x.c +++ b/sound/soc/codecs/wcd939x.c @@ -3383,7 +3383,7 @@ static int wcd939x_bind(struct device *dev) goto err_put_typec_switch; } =20 - wcd939x->rxdev =3D wcd939x_sdw_device_get(wcd939x->rxnode); + wcd939x->rxdev =3D of_sdw_find_device_by_node(wcd939x->rxnode); if (!wcd939x->rxdev) { dev_err(dev, "could not find slave with matching of node\n"); ret =3D -EINVAL; @@ -3392,7 +3392,7 @@ static int wcd939x_bind(struct device *dev) wcd939x->sdw_priv[AIF1_PB] =3D dev_get_drvdata(wcd939x->rxdev); wcd939x->sdw_priv[AIF1_PB]->wcd939x =3D wcd939x; =20 - wcd939x->txdev =3D wcd939x_sdw_device_get(wcd939x->txnode); + wcd939x->txdev =3D of_sdw_find_device_by_node(wcd939x->txnode); if (!wcd939x->txdev) { dev_err(dev, "could not find txslave with matching of node\n"); ret =3D -EINVAL; diff --git a/sound/soc/codecs/wcd939x.h b/sound/soc/codecs/wcd939x.h index 3204fb10b58d..3f189e5cafd5 100644 --- a/sound/soc/codecs/wcd939x.h +++ b/sound/soc/codecs/wcd939x.h @@ -930,7 +930,6 @@ int wcd939x_sdw_hw_params(struct wcd939x_sdw_priv *wcd, struct snd_pcm_hw_params *params, struct snd_soc_dai *dai); =20 -struct device *wcd939x_sdw_device_get(struct device_node *np); unsigned int wcd939x_swr_get_current_bank(struct sdw_slave *sdev); =20 struct regmap *wcd939x_swr_get_regmap(struct wcd939x_sdw_priv *wcd); @@ -958,11 +957,6 @@ static inline int wcd939x_sdw_hw_params(struct wcd939x= _sdw_priv *wcd, return -EOPNOTSUPP; } =20 -static inline struct device *wcd939x_sdw_device_get(struct device_node *np) -{ - return NULL; -} - static inline unsigned int wcd939x_swr_get_current_bank(struct sdw_slave *= sdev) { return 0; --=20 2.49.0 From nobody Tue Oct 7 23:15:01 2025 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (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 10EF42D780F for ; Fri, 4 Jul 2025 12:12:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751631166; cv=none; b=r7b2/mpy9NrF2OZwrxzqIS0P4iJVte+A98OsG51JAo3z52GRvSHgeNMym/MfHHRGzAl1EX+ct9G7v3TldLyHFWOSwPzwe8YJMnRy+Ke0wDVNMJXlqe9+3L/dA2xrwmrjPQPtTyAiDL/7dvzE6qwXHf8T8V4rcevpolD+dRB86Dc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751631166; c=relaxed/simple; bh=o9u2dqXMA63RaFVVOvAQy9JJ5LYOfZOsQ79yZPELfUw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=FchFH362STkdnUkMGEa0AfBLf1nEhXRos3Pr/unYy4RD27OTNYNCU9X9YcpxzxFmOEkM4rEcZexPueLJLU8zcdwqEG6Qzeu9+fQhbousB76HdtsyYVpTZg5E+RuW2n9AIeFQw9Yz7GNOcAtR0aPMbDwmNJDt9ZFd/k6ZEbi9sgo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=YnasVS1d; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="YnasVS1d" Received: from pps.filterd (m0279871.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 5648fWWT024904 for ; Fri, 4 Jul 2025 12:12:44 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=qcppdkim1; bh=68AQ8v60eaG OMLqf/fYh4D5Zw4475DJhwIDnQ+LXSAo=; b=YnasVS1dGaZfs0Rsxdm2aJ5yxt5 MWZa9J4tbba0l3wpwtQuHcRLkgHG4mc5XwhrJDYI3NShX8EjdCkNm3CktSPVuvP0 C4htBcoyCaUarZZR6+v7W+63PorhNEekSmaXpYm2z4WcAzzU5JFUFz1ojg+NlRbf y62UdxB+moPLyxR66RQKj9YhULsoLrvNnxvwDuo1v6+No7yc83bqQon9lGcpElqc 3qCpnNRSm7Ul5m3t1k3ngqW2DRKd11fX90thJPpKhlRq3RAN1Ot4a9q8GPP6+Aea ihGJWsQn+43fUNH69vopjLWZv1MFZJJJu6wOP+hS860nvPdNzM+meeH/AiA== Received: from mail-qk1-f197.google.com (mail-qk1-f197.google.com [209.85.222.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 47j802bm39-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT) for ; Fri, 04 Jul 2025 12:12:44 +0000 (GMT) Received: by mail-qk1-f197.google.com with SMTP id af79cd13be357-7d0981315c8so69665985a.0 for ; Fri, 04 Jul 2025 05:12:44 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751631163; x=1752235963; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=68AQ8v60eaGOMLqf/fYh4D5Zw4475DJhwIDnQ+LXSAo=; b=DkLe2naGzpPaMrIQYeXkNG5+G5aJlmtFJHJVc7dPyzIPtdbPbC9PrN7MGxKQ+T0nWM k/ql0LCJ4pZ5Il2hoSJogKsHeJFCZ0XDghRRewyk3u0uvW3y+NKa7tHpwiLPRT3ipyHg KaSsB+YY+xneGvthdTmgRsixQG+wA5xiwgXdnWfgwSJSOwebUS0SNFktJZUMAj223S2B QbK6+1Cj1rlGaLzkm22A5ZBMnLOYBox4i+zJzUQEsqoiIYevndIEU1bHbBzy/zFpeZ7k J09T31Nk3MhLgg4Sk6fV1GWR81lL27A+OTZLqQMEitZSD9INtk6Wi5scwukDSgXgXZx+ ZPkg== X-Forwarded-Encrypted: i=1; AJvYcCWoiQ+542WDbVGoYP/c4oz5ShRLCfRuQ8AZU/kRtLjezdq82YiKRHfyQ/1Ld8g9Iqti6lhDSkwVv1X2+CA=@vger.kernel.org X-Gm-Message-State: AOJu0YyhAwh7Tl4/dz5UMmXcBYAn9f1TCem0rhIeN7cSZVx0wad/rXui 8IDcJPK3sdHCTFStQM7IvJKHlcjN09v3wATuXyCdByaRkAcMEotB3zr34F2bPr4QRuxg8KO9vxF UdIJxFZ7OYe1CmKsIhkh5iHsi4MrdaSPXvOFscpCMct746vRtxrPJ0kreEWI157AVXW8= X-Gm-Gg: ASbGncv1FHzs4TzytUXE00FPm5Lp+DxFjg9IeEf83pQjejgDtUkU/LfCFi+23ZViCn+ 15t1kty+XXs+hz8K6RJTO+1+QV0sQglBmNCouvDZEyCFxZGjO2j0OL9jNx0zoNMroXzLB14pfc3 8Xyib5boPvMGpj5ZjKBnjtAMxIEjb2pvFuOB56weNuYY1lNKePysxFM/phJi/F9Ei83qSB3D+9B bLEvJnasrBglIPb8UTjeGjZbMyccVJnayzdP9ma4c3t7tC1UQcB52CZGEUA8/ePzV4oJcUCKF2a ceEL2X0BnZjh5D6vCzBR++YY3rT0K/TA0B1VBWM+yMIUVLx/YPD62Y0= X-Received: by 2002:a05:620a:60db:b0:7d4:604c:31bd with SMTP id af79cd13be357-7d5df194ae3mr191328185a.56.1751631162925; Fri, 04 Jul 2025 05:12:42 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEpeP/YKEt19gc7LbiS0KHIGJLej38efeNA64KgMlWMA9+emaUbgtub9jJTfI5i9o6+mbpHpA== X-Received: by 2002:a05:620a:60db:b0:7d4:604c:31bd with SMTP id af79cd13be357-7d5df194ae3mr191324485a.56.1751631162466; Fri, 04 Jul 2025 05:12:42 -0700 (PDT) Received: from localhost.localdomain ([5.133.47.210]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-454a997de2asm53656745e9.12.2025.07.04.05.12.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 04 Jul 2025 05:12:41 -0700 (PDT) From: srinivas.kandagatla@oss.qualcomm.com To: vkoul@kernel.org, broonie@kernel.org Cc: yung-chuan.liao@linux.intel.com, pierre-louis.bossart@linux.dev, lgirdwood@gmail.com, perex@perex.cz, tiwai@suse.com, krzysztof.kozlowski@linaro.org, linux-kernel@vger.kernel.org, linux-sound@vger.kernel.org, linux-arm-msm@vger.kernel.org, Srinivas Kandagatla Subject: [PATCH v2 4/4] ASoC: codecs: wcdxxxx: use sdw_slave_get_current_bank helper Date: Fri, 4 Jul 2025 13:12:18 +0100 Message-ID: <20250704121218.1225806-5-srinivas.kandagatla@oss.qualcomm.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250704121218.1225806-1-srinivas.kandagatla@oss.qualcomm.com> References: <20250704121218.1225806-1-srinivas.kandagatla@oss.qualcomm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Proofpoint-GUID: zd9BFRj-CvOqlf8LjqBn0Njo-3nsGwVC X-Authority-Analysis: v=2.4 cv=YPWfyQGx c=1 sm=1 tr=0 ts=6867c53c cx=c_pps a=50t2pK5VMbmlHzFWWp8p/g==:117 a=ZsC4DHZuhs/kKio7QBcDoQ==:17 a=Wb1JkmetP80A:10 a=EUspDBNiAAAA:8 a=WmG1VI7HpiTX60UEcG8A:9 a=IoWCM6iH3mJn3m4BftBB:22 X-Proofpoint-ORIG-GUID: zd9BFRj-CvOqlf8LjqBn0Njo-3nsGwVC X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNzA0MDA5MyBTYWx0ZWRfXwnhvlb8mfSfu WaBS++mo7920siBGpwZrrYAfuBRlqBQB5PAfSjM+LDoiKbQqZJ8ISMxPrw9GWy+zaGPDICdP/Lh 4Gtlk+B26c3P9bac6CcfH4sPzP+OrEvnvEvBZuuoGD/D+pifUE/kSBv480wzsouzHFh+BEpEUph 0Bewykn0+VPz748mj2zCvhfhYwNmbcvtMuJ5hqPqEPgDtT0wvR47JMPpieNRiM+71dxLgc+xlQ3 CfUD0hzIXO9k9z7tpX19F5kfYhdmc10Er8jCVmC2pDlI0K2cmWTdSoUpQDCoEjFp49VRxxuHD3s Zq8fYH25f0hyrfMClzhiD2qrCgs9tn6Yd5qTnYtncbjiI8yPM/UpcB2TREZO3ksf5N75rjbZiua LbcimiH/i7YNLRvhZosAtJo6KI+kTMd8DovESLdXrqhHq1DE8NZ9QwZvN5XzBGKf0w945Nll X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.1.7,FMLib:17.12.80.40 definitions=2025-07-04_04,2025-07-04_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 mlxlogscore=999 mlxscore=0 malwarescore=0 suspectscore=0 lowpriorityscore=0 clxscore=1015 impostorscore=0 adultscore=0 priorityscore=1501 bulkscore=0 phishscore=0 classifier=spam authscore=0 authtc=n/a authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2505280000 definitions=main-2507040093 Content-Type: text/plain; charset="utf-8" From: Srinivas Kandagatla use sdw_slave_get_current_bank() helper function, rather than duplicating this function in every codec driver. Signed-off-by: Srinivas Kandagatla Acked-by: Vinod Koul Reviewed-by: Dmitry Baryshkov --- sound/soc/codecs/wcd938x-sdw.c | 10 ---------- sound/soc/codecs/wcd938x.c | 3 +-- sound/soc/codecs/wcd938x.h | 7 ------- sound/soc/codecs/wcd939x-sdw.c | 7 ------- sound/soc/codecs/wcd939x.c | 2 +- sound/soc/codecs/wcd939x.h | 7 ------- 6 files changed, 2 insertions(+), 34 deletions(-) diff --git a/sound/soc/codecs/wcd938x-sdw.c b/sound/soc/codecs/wcd938x-sdw.c index a7514d716086..8bcd8396f375 100644 --- a/sound/soc/codecs/wcd938x-sdw.c +++ b/sound/soc/codecs/wcd938x-sdw.c @@ -82,16 +82,6 @@ static struct sdw_dpn_prop wcd938x_dpn_prop[WCD938X_MAX_= SWR_PORTS] =3D { } }; =20 -int wcd938x_swr_get_current_bank(struct sdw_slave *sdev) -{ - int bank; - - bank =3D sdw_read(sdev, SDW_SCP_CTRL); - - return ((bank & 0x40) ? 1 : 0); -} -EXPORT_SYMBOL_GPL(wcd938x_swr_get_current_bank); - int wcd938x_sdw_hw_params(struct wcd938x_sdw_priv *wcd, struct snd_pcm_substream *substream, struct snd_pcm_hw_params *params, diff --git a/sound/soc/codecs/wcd938x.c b/sound/soc/codecs/wcd938x.c index e2cb0758bca7..f8d7bf27a6ed 100644 --- a/sound/soc/codecs/wcd938x.c +++ b/sound/soc/codecs/wcd938x.c @@ -1094,8 +1094,7 @@ static int wcd938x_tx_swr_ctrl(struct snd_soc_dapm_wi= dget *w, int bank; int rate; =20 - bank =3D (wcd938x_swr_get_current_bank(wcd938x->sdw_priv[AIF1_CAP]->sdev)= ) ? 0 : 1; - bank =3D bank ? 0 : 1; + bank =3D sdw_slave_get_current_bank(wcd938x->sdw_priv[AIF1_CAP]->sdev); =20 switch (event) { case SND_SOC_DAPM_PRE_PMU: diff --git a/sound/soc/codecs/wcd938x.h b/sound/soc/codecs/wcd938x.h index dbafcae247f4..54ee56b7fbd6 100644 --- a/sound/soc/codecs/wcd938x.h +++ b/sound/soc/codecs/wcd938x.h @@ -669,9 +669,6 @@ int wcd938x_sdw_hw_params(struct wcd938x_sdw_priv *wcd, struct snd_pcm_substream *substream, struct snd_pcm_hw_params *params, struct snd_soc_dai *dai); - -int wcd938x_swr_get_current_bank(struct sdw_slave *sdev); - #else =20 static inline int wcd938x_sdw_free(struct wcd938x_sdw_priv *wcd, @@ -696,9 +693,5 @@ static inline int wcd938x_sdw_hw_params(struct wcd938x_= sdw_priv *wcd, return -EOPNOTSUPP; } =20 -static inline int wcd938x_swr_get_current_bank(struct sdw_slave *sdev) -{ - return 0; -} #endif /* CONFIG_SND_SOC_WCD938X_SDW */ #endif /* __WCD938X_H__ */ diff --git a/sound/soc/codecs/wcd939x-sdw.c b/sound/soc/codecs/wcd939x-sdw.c index e487a1bb0194..477d6cf27d32 100644 --- a/sound/soc/codecs/wcd939x-sdw.c +++ b/sound/soc/codecs/wcd939x-sdw.c @@ -128,13 +128,6 @@ static struct sdw_dpn_prop wcd939x_tx_dpn_prop[WCD939X= _MAX_TX_SWR_PORTS] =3D { } }; =20 -unsigned int wcd939x_swr_get_current_bank(struct sdw_slave *sdev) -{ - return FIELD_GET(SDW_SCP_STAT_CURR_BANK, - sdw_read(sdev, SDW_SCP_CTRL)); -} -EXPORT_SYMBOL_GPL(wcd939x_swr_get_current_bank); - int wcd939x_sdw_hw_params(struct wcd939x_sdw_priv *wcd, struct snd_pcm_substream *substream, struct snd_pcm_hw_params *params, diff --git a/sound/soc/codecs/wcd939x.c b/sound/soc/codecs/wcd939x.c index 5a56c79a8922..85730ae40c2c 100644 --- a/sound/soc/codecs/wcd939x.c +++ b/sound/soc/codecs/wcd939x.c @@ -1017,7 +1017,7 @@ static int wcd939x_tx_swr_ctrl(struct snd_soc_dapm_wi= dget *w, int bank; int rate; =20 - bank =3D wcd939x_swr_get_current_bank(wcd939x->sdw_priv[AIF1_CAP]->sdev); + bank =3D sdw_slave_get_current_bank(wcd939x->sdw_priv[AIF1_CAP]->sdev); =20 switch (event) { case SND_SOC_DAPM_PRE_PMU: diff --git a/sound/soc/codecs/wcd939x.h b/sound/soc/codecs/wcd939x.h index 3f189e5cafd5..e70445b1a4bc 100644 --- a/sound/soc/codecs/wcd939x.h +++ b/sound/soc/codecs/wcd939x.h @@ -930,8 +930,6 @@ int wcd939x_sdw_hw_params(struct wcd939x_sdw_priv *wcd, struct snd_pcm_hw_params *params, struct snd_soc_dai *dai); =20 -unsigned int wcd939x_swr_get_current_bank(struct sdw_slave *sdev); - struct regmap *wcd939x_swr_get_regmap(struct wcd939x_sdw_priv *wcd); #else =20 @@ -957,11 +955,6 @@ static inline int wcd939x_sdw_hw_params(struct wcd939x= _sdw_priv *wcd, return -EOPNOTSUPP; } =20 -static inline unsigned int wcd939x_swr_get_current_bank(struct sdw_slave *= sdev) -{ - return 0; -} - struct regmap *wcd939x_swr_get_regmap(struct wcd939x_sdw_priv *wcd) { return PTR_ERR(-EINVAL); --=20 2.49.0