From patchwork Fri Jan 24 15:23:05 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Cedric Encarnacion X-Patchwork-Id: 859892 Received: from mx0b-00128a01.pphosted.com (mx0a-00128a01.pphosted.com [148.163.135.77]) (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 681EF157472; Fri, 24 Jan 2025 15:24:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.135.77 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1737732254; cv=none; b=SMPES710yHaSh8bTCtoKUzviFhFeFZkP/8TNal0wpdZN9h0/DIWppPd93egLjUAycJEIjJKlyWFKItsxIYvodbshhQLID56/4wtv9PCV+9vHnfZ58neAVrhQBoh4obJV1TTz7xND14+oqYlUui7BaJyJLRkH9gmnytzVLN9xOo8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1737732254; c=relaxed/simple; bh=PGuI0JLIVjpGnULisAvMvFjaUwqArdGsj4uhFT1lLNM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-ID:References: In-Reply-To:To:CC; b=FWuZHBs9D8XIR7AItGjq9wuXz6lG7NdHUO8ktlx73AzPUQAQcVnRjxNmMTEfH0yua+C689z7t0IUFL+a5FSSgnAHy2cy7O6cIxj68W3jgBuIHMoTX7aYJuE5FkctGhCXntEROlDlxiuDCwJN75XmSrCJTJ10yApCvgEoSOOmJgY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=analog.com; spf=pass smtp.mailfrom=analog.com; dkim=pass (2048-bit key) header.d=analog.com header.i=@analog.com header.b=x3AsKs8q; arc=none smtp.client-ip=148.163.135.77 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=analog.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=analog.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=analog.com header.i=@analog.com header.b="x3AsKs8q" Received: from pps.filterd (m0375855.ppops.net [127.0.0.1]) by mx0b-00128a01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 50OEmR73005901; Fri, 24 Jan 2025 10:23:53 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=analog.com; h=cc :content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=DKIM; bh=I2M2m Jc54AZspiplENGZAzMnsQXIE8Nf5Jgs5knMQ50=; b=x3AsKs8qKZIQbul+56s8n tEBIvAaDuklNXjicXzDHMUUF1bICapmZ8uoweTaTpGFIzN3KAzkiBVzCZNdedPQJ p96ppCgRULuSu1g9Q21LX42LlJJ4BpYjO0NLL4IR9GoCTUUsr01mQ4d7AIHtf/Fd TcaHlCX/Y4euo1k5zE3jebCMg7vf7p18oohC5l56AErr7zvSkuOZKDZqnh8WUqFf jPC5i8JBQKM9U9ksaSWMn93cuK5HSk2dsfQY/N61lBs2ZhVIkTd8mTrwQOTl6kFc Ac67bgCLQ0redIAce/34wxXkW5zghyNf/L2zGJz6VYUWq8f3Gan88Cs1t/zD6TM9 g== Received: from nwd2mta4.analog.com ([137.71.173.58]) by mx0b-00128a01.pphosted.com (PPS) with ESMTPS id 44ccxx05bm-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 24 Jan 2025 10:23:52 -0500 (EST) Received: from ASHBMBX8.ad.analog.com (ASHBMBX8.ad.analog.com [10.64.17.5]) by nwd2mta4.analog.com (8.14.7/8.14.7) with ESMTP id 50OFNp3b035450 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Fri, 24 Jan 2025 10:23:51 -0500 Received: from ASHBCASHYB5.ad.analog.com (10.64.17.133) by ASHBMBX8.ad.analog.com (10.64.17.5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.14; Fri, 24 Jan 2025 10:23:51 -0500 Received: from ASHBMBX9.ad.analog.com (10.64.17.10) by ASHBCASHYB5.ad.analog.com (10.64.17.133) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.14; Fri, 24 Jan 2025 10:23:51 -0500 Received: from zeus.spd.analog.com (10.66.68.11) by ashbmbx9.ad.analog.com (10.64.17.10) with Microsoft SMTP Server id 15.2.986.14 via Frontend Transport; Fri, 24 Jan 2025 10:23:51 -0500 Received: from CENCARNA-L02.ad.analog.com (CENCARNA-L02.ad.analog.com [10.117.116.131]) by zeus.spd.analog.com (8.15.1/8.15.1) with ESMTP id 50OFNS7S031971; Fri, 24 Jan 2025 10:23:41 -0500 From: Cedric Encarnacion Date: Fri, 24 Jan 2025 23:23:05 +0800 Subject: [PATCH 1/2] dt-bindings: hwmon: ltc2978: add support for ltm4673 Precedence: bulk X-Mailing-List: linux-i2c@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-ID: <20250124-ltm4673-v1-1-a2c6aa37c903@analog.com> References: <20250124-ltm4673-v1-0-a2c6aa37c903@analog.com> In-Reply-To: <20250124-ltm4673-v1-0-a2c6aa37c903@analog.com> To: Jean Delvare , Guenter Roeck , "Rob Herring" , Krzysztof Kozlowski , "Conor Dooley" , Frank Li , Jonathan Corbet , Delphine CC Chiu CC: , , , , , Cedric Encarnacion X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1737732208; l=1184; i=cedricjustine.encarnacion@analog.com; s=20250124; h=from:subject:message-id; bh=PGuI0JLIVjpGnULisAvMvFjaUwqArdGsj4uhFT1lLNM=; b=TpgQ7ETJ/VlDtLfHpMyMVcdQv4f9qa2RDZkNGpSODsGR0i1t1d0Rd6qMbmLVyKcpI3BNIcRk3 RaAZh+4ZXT0BeCIjA9uzcVQ34jxhSoC7d/w6MF9DIh6OrEO6FcRHvPc X-Developer-Key: i=cedricjustine.encarnacion@analog.com; a=ed25519; pk=ZsngY3B4sfltPVR5j8+IO2Sr8Db8Ck+fVCs+Qta+Wlc= X-ADIRuleOP-NewSCL: Rule Triggered X-Proofpoint-GUID: qu86LbBAzopp9omX-xjT-Z1vBDGyLupM X-Proofpoint-ORIG-GUID: qu86LbBAzopp9omX-xjT-Z1vBDGyLupM X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1057,Hydra:6.0.680,FMLib:17.12.68.34 definitions=2025-01-24_06,2025-01-23_01,2024-11-22_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 phishscore=0 lowpriorityscore=0 priorityscore=1501 spamscore=0 adultscore=0 clxscore=1011 mlxlogscore=999 bulkscore=0 impostorscore=0 malwarescore=0 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.19.0-2411120000 definitions=main-2501240108 Add LTM4673 to supported devices of LTC2978. Unlike other LTM46xx devices, LTM4673 is a μModule regulator that outputs four channels. Signed-off-by: Cedric Encarnacion --- Documentation/devicetree/bindings/hwmon/lltc,ltc2978.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Documentation/devicetree/bindings/hwmon/lltc,ltc2978.yaml b/Documentation/devicetree/bindings/hwmon/lltc,ltc2978.yaml index 37e1dc9c7dd3798ed4b2a90b46f17c99f88b0d52..eeb6a4fe80b265ee364188f7b507425cbf34a48e 100644 --- a/Documentation/devicetree/bindings/hwmon/lltc,ltc2978.yaml +++ b/Documentation/devicetree/bindings/hwmon/lltc,ltc2978.yaml @@ -30,6 +30,7 @@ properties: - lltc,ltc7880 - lltc,ltm2987 - lltc,ltm4664 + - lltc,ltm4673 - lltc,ltm4675 - lltc,ltm4676 - lltc,ltm4677 @@ -55,6 +56,7 @@ properties: * ltc7880 : vout0 - vout1 * ltc3883 : vout0 * ltm4664 : vout0 - vout1 + * ltm4673 : vout0 - vout3 * ltm4675, ltm4676, ltm4677, ltm4678 : vout0 - vout1 * ltm4680, ltm4686 : vout0 - vout1 * ltm4700 : vout0 - vout1 From patchwork Fri Jan 24 15:23:06 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Cedric Encarnacion X-Patchwork-Id: 859680 Received: from mx0b-00128a01.pphosted.com (mx0a-00128a01.pphosted.com [148.163.135.77]) (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 4F7F61CF5EA; Fri, 24 Jan 2025 15:24:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.135.77 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1737732256; cv=none; b=H5R4RHKazJkkHHhZ5qJPe1PTPKbSSb+bJXrq5/Vf+tfczpui32zg+Q0DzWUGS0ExIrgV03dnm/3NXqx3QDu4la/tqSlVR+IObSmDN611Xzlc2r5Ix6NJMbK8pAf21dJXdzb+uGBsIFOyWkHBjKpgtQosz25HKXqpF7u+mUWZpTc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1737732256; c=relaxed/simple; bh=S0OatCWVt8LkqqQNLFpvo4ZTB4T+SPNT/jCZ7ia+L0I=; h=From:Date:Subject:MIME-Version:Content-Type:Message-ID:References: In-Reply-To:To:CC; b=BwILmnzBg3jseaJ5QGzv4NoqLmYoTXRhuGhBtHgv7j7/vzVVNVJz/BLfu4oCEaePdtRp3quiFPjfXOiGCJnC+1xZtCHAGEpzL3lxKpi2BIs0oUvysV2qtscZ4YtsphenHjKcbzWlzydA7QIjf2kNwekWY+gj+zHixl2kSGo5Ycs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=analog.com; spf=pass smtp.mailfrom=analog.com; dkim=pass (2048-bit key) header.d=analog.com header.i=@analog.com header.b=AaSh7Pu1; arc=none smtp.client-ip=148.163.135.77 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=analog.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=analog.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=analog.com header.i=@analog.com header.b="AaSh7Pu1" Received: from pps.filterd (m0375855.ppops.net [127.0.0.1]) by mx0b-00128a01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 50OEmQRO005868; Fri, 24 Jan 2025 10:23:57 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=analog.com; h=cc :content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=DKIM; bh=5yDwb gRu2XNFRPIpD137WRd1gMV7xF0Bx98tmaIUTPE=; b=AaSh7Pu1/LFwKggPohtyC pUND19MZLsgdGiAjp/GlL3RgscKQQNY1we2dMAdLQMW0XFp9a3BRq4tGN6UY0zy/ lwgTYfSZbuyjP91UdggKfZW1ReRY9JOTWc0jbCpdzY/z9tvyJ/TB5ZKoYqpXBmzy lvDVpWBwMW/jnw9BsXru9m2KjT2X/qKorn5QDKzXZdmJJt1p4BB6UvSzz8Ulizp2 hnApIcQ82jl0tEpRJ7K2PGSYQhUI/YidjxE65mzcMJQtMkfewEAZtCmklOV6CYp6 ErmULr0/JMrX3N7cgLU2TEuk7+f0VOB4A2PmE5HAv5Q4VAZ86P+qJ2D2bucx/4Y9 g== Received: from nwd2mta4.analog.com ([137.71.173.58]) by mx0b-00128a01.pphosted.com (PPS) with ESMTPS id 44ccxx05bs-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 24 Jan 2025 10:23:56 -0500 (EST) Received: from ASHBMBX8.ad.analog.com (ASHBMBX8.ad.analog.com [10.64.17.5]) by nwd2mta4.analog.com (8.14.7/8.14.7) with ESMTP id 50OFNtUi035453 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Fri, 24 Jan 2025 10:23:55 -0500 Received: from ASHBMBX9.ad.analog.com (10.64.17.10) by ASHBMBX8.ad.analog.com (10.64.17.5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.14; Fri, 24 Jan 2025 10:23:55 -0500 Received: from zeus.spd.analog.com (10.66.68.11) by ashbmbx9.ad.analog.com (10.64.17.10) with Microsoft SMTP Server id 15.2.986.14 via Frontend Transport; Fri, 24 Jan 2025 10:23:55 -0500 Received: from CENCARNA-L02.ad.analog.com (CENCARNA-L02.ad.analog.com [10.117.116.131]) by zeus.spd.analog.com (8.15.1/8.15.1) with ESMTP id 50OFNS7T031971; Fri, 24 Jan 2025 10:23:45 -0500 From: Cedric Encarnacion Date: Fri, 24 Jan 2025 23:23:06 +0800 Subject: [PATCH 2/2] hwmon: (pmbus/ltc2978) add support for ltm4673 Precedence: bulk X-Mailing-List: linux-i2c@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-ID: <20250124-ltm4673-v1-2-a2c6aa37c903@analog.com> References: <20250124-ltm4673-v1-0-a2c6aa37c903@analog.com> In-Reply-To: <20250124-ltm4673-v1-0-a2c6aa37c903@analog.com> To: Jean Delvare , Guenter Roeck , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Frank Li , Jonathan Corbet , Delphine CC Chiu CC: , , , , , Cedric Encarnacion X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1737732208; l=4551; i=cedricjustine.encarnacion@analog.com; s=20250124; h=from:subject:message-id; bh=S0OatCWVt8LkqqQNLFpvo4ZTB4T+SPNT/jCZ7ia+L0I=; b=pcuL0LWLrDFxoYKjGQb6ACLyzmiwj7kY7Ut9tzf3o+isLeZd91vgXpZcfYfbzSMUx0cpk5Z7A SEhIpdM3OPrDbzoqIXLdf0uzkecFLcYXwiBXtVc8+Mg+1LJFwTJbdmN X-Developer-Key: i=cedricjustine.encarnacion@analog.com; a=ed25519; pk=ZsngY3B4sfltPVR5j8+IO2Sr8Db8Ck+fVCs+Qta+Wlc= X-ADIRuleOP-NewSCL: Rule Triggered X-Proofpoint-GUID: fyPn65xsowY8tzNS9fKCaEYTKzJSuslB X-Proofpoint-ORIG-GUID: fyPn65xsowY8tzNS9fKCaEYTKzJSuslB X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1057,Hydra:6.0.680,FMLib:17.12.68.34 definitions=2025-01-24_06,2025-01-23_01,2024-11-22_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 phishscore=0 lowpriorityscore=0 priorityscore=1501 spamscore=0 adultscore=0 clxscore=1011 mlxlogscore=999 bulkscore=0 impostorscore=0 malwarescore=0 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.19.0-2411120000 definitions=main-2501240108 Add support for LTM4673. The LTM4673 is a quad output, dual 12A and dual 5A, switching mode DC/DC step-down μModule regulator integrated with 4-channel power system manager. This adds only the chip id, the checks for the manufacturer special id, and the relevant attributes for the device's pmbus_driver_info. The device does not support clear peaks. Signed-off-by: Cedric Encarnacion --- Documentation/hwmon/ltc2978.rst | 8 ++++++++ drivers/hwmon/pmbus/Kconfig | 4 ++-- drivers/hwmon/pmbus/ltc2978.c | 25 +++++++++++++++++++++++-- 3 files changed, 33 insertions(+), 4 deletions(-) diff --git a/Documentation/hwmon/ltc2978.rst b/Documentation/hwmon/ltc2978.rst index 651ca4904c6649748f366b023fbb337ec25b22b0..feae53eb9fbf5cff8f7a484c163acad011315d8d 100644 --- a/Documentation/hwmon/ltc2978.rst +++ b/Documentation/hwmon/ltc2978.rst @@ -151,6 +151,14 @@ Supported chips: Datasheet: https://www.analog.com/en/products/ltm4644 + * Linear Technology LTM4673 + + Prefix: 'ltm4673' + + Addresses scanned: - + + Datasheet: https://www.analog.com/en/products/ltm4673 + * Linear Technology LTM4675 Prefix: 'ltm4675' diff --git a/drivers/hwmon/pmbus/Kconfig b/drivers/hwmon/pmbus/Kconfig index 419469f40ba0283c72b71071566efec575263e98..675b0d4703d87c9d5654489d0d770661ff0dba11 100644 --- a/drivers/hwmon/pmbus/Kconfig +++ b/drivers/hwmon/pmbus/Kconfig @@ -234,8 +234,8 @@ config SENSORS_LTC2978_REGULATOR help If you say yes here you get regulator support for Linear Technology LTC3880, LTC3883, LTC3884, LTC3886, LTC3887, LTC3889, LTC7841, - LTC7880, LTM4644, LTM4675, LTM4676, LTM4677, LTM4678, LTM4680, - LTM4686, and LTM4700. + LTC7880, LTM4644, LTM4673, LTM4675, LTM4676, LTM4677, LTM4678, + LTM4680, LTM4686, and LTM4700. config SENSORS_LTC3815 tristate "Linear Technologies LTC3815" diff --git a/drivers/hwmon/pmbus/ltc2978.c b/drivers/hwmon/pmbus/ltc2978.c index 4c306943383ab368ad5f9700c1e09bc873822e44..658cb1173291006d83033a6363ac52d24635abaf 100644 --- a/drivers/hwmon/pmbus/ltc2978.c +++ b/drivers/hwmon/pmbus/ltc2978.c @@ -26,8 +26,8 @@ enum chips { ltc3880, ltc3882, ltc3883, ltc3884, ltc3886, ltc3887, ltc3889, ltc7132, ltc7841, ltc7880, /* Modules */ - ltm2987, ltm4664, ltm4675, ltm4676, ltm4677, ltm4678, ltm4680, ltm4686, - ltm4700, + ltm2987, ltm4664, ltm4673, ltm4675, ltm4676, ltm4677, ltm4678, ltm4680, + ltm4686, ltm4700, }; /* Common for all chips */ @@ -86,6 +86,8 @@ enum chips { #define LTM2987_ID_A 0x8010 /* A/B for two die IDs */ #define LTM2987_ID_B 0x8020 #define LTM4664_ID 0x4120 +#define LTM4673_ID_REV1 0x0230 +#define LTM4673_ID 0x4480 #define LTM4675_ID 0x47a0 #define LTM4676_ID_REV1 0x4400 #define LTM4676_ID_REV2 0x4480 @@ -554,6 +556,7 @@ static const struct i2c_device_id ltc2978_id[] = { {"ltc7880", ltc7880}, {"ltm2987", ltm2987}, {"ltm4664", ltm4664}, + {"ltm4673", ltm4673}, {"ltm4675", ltm4675}, {"ltm4676", ltm4676}, {"ltm4677", ltm4677}, @@ -665,6 +668,8 @@ static int ltc2978_get_id(struct i2c_client *client) return ltm2987; else if (chip_id == LTM4664_ID) return ltm4664; + else if (chip_id == LTM4673_ID || chip_id == LTM4673_ID_REV1) + return ltm4673; else if (chip_id == LTM4675_ID) return ltm4675; else if (chip_id == LTM4676_ID_REV1 || chip_id == LTM4676_ID_REV2 || @@ -869,6 +874,21 @@ static int ltc2978_probe(struct i2c_client *client) | PMBUS_HAVE_IOUT | PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP; break; + case ltm4673: + data->features |= FEAT_NEEDS_POLLING; + info->read_word_data = ltc2975_read_word_data; + info->pages = LTC2974_NUM_PAGES; + info->func[0] = PMBUS_HAVE_VIN | PMBUS_HAVE_STATUS_INPUT + | PMBUS_HAVE_TEMP2; + for (i = 0; i < info->pages; i++) { + info->func[i] |= PMBUS_HAVE_IIN + | PMBUS_HAVE_VOUT | PMBUS_HAVE_STATUS_VOUT + | PMBUS_HAVE_IOUT | PMBUS_HAVE_STATUS_IOUT + | PMBUS_HAVE_PIN + | PMBUS_HAVE_POUT + | PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP; + } + break; default: return -ENODEV; } @@ -926,6 +946,7 @@ static const struct of_device_id ltc2978_of_match[] = { { .compatible = "lltc,ltc7880" }, { .compatible = "lltc,ltm2987" }, { .compatible = "lltc,ltm4664" }, + { .compatible = "lltc,ltm4673" }, { .compatible = "lltc,ltm4675" }, { .compatible = "lltc,ltm4676" }, { .compatible = "lltc,ltm4677" },