From: Joan-Na-adi <joan.na.devcode@gmail.com>
To: Liam Girdwood <lgirdwood@gmail.com>
Cc: Mark Brown <broonie@kernel.org>, Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
linux-kernel@vger.kernel.org, devicetree@vger.kernel.org,
Joan Na <joan.na@analog.com>
Subject: [PATCH 1/3] dt-bindings: regulator: Add MAX77675 binding header
Date: Fri, 26 Sep 2025 14:37:55 +0900 [thread overview]
Message-ID: <20250926053757.480086-2-joan.na@analog.com> (raw)
In-Reply-To: <20250926053757.480086-1-joan.na@analog.com>
From: Joan Na <joan.na@analog.com>
Add binding header for the MAX77675 PMIC regulator. This header defines
voltage ID and regulator index macros used both in device tree sources
and in the driver implementation.
Signed-off-by: Joan Na <joan.na@analog.com>
---
.../regulator/maxim,max77675-regulator.h | 78 +++++++++++++++++++
1 file changed, 78 insertions(+)
create mode 100644 include/dt-bindings/regulator/maxim,max77675-regulator.h
diff --git a/include/dt-bindings/regulator/maxim,max77675-regulator.h b/include/dt-bindings/regulator/maxim,max77675-regulator.h
new file mode 100644
index 000000000000..df12cae5e250
--- /dev/null
+++ b/include/dt-bindings/regulator/maxim,max77675-regulator.h
@@ -0,0 +1,78 @@
+/* SPDX-License-Identifier: GPL-2.0-only OR BSD 2-Clause */
+/*
+ * This header provides macros for MAXIM MAX77675 device bindings.
+ *
+ * Copyright (c) 2025, Analog Device inc.
+ * Author: Joan Na <joan.na@analog.com>
+ */
+
+#ifndef _DT_BINDINGS_REGULATOR_MAX77675_
+#define _DT_BINDINGS_REGULATOR_MAX77675_
+
+// Define the voltage limits for 12.5mV and 25mV steps
+#define MAX77675_MIN_UV 500000 // 500 mV
+
+#define MAX77675_MAX_UV_25MV 5500000 // 5.5V in microvolts for 25mV step
+#define MAX77675_MAX_UV_12_5MV 3687500 // 3.6875V in microvolts for 12.5mV step
+
+#define MAX77675_STEP_25MV 25000 // 25 mV
+#define MAX77675_STEP_12_5MV 12500 // 12.5 mV
+
+#define MAX77675_NUM_LEVELS_25MV 201
+#define MAX77675_NUM_LEVELS_12_5MV 255
+
+/* FPS source */
+#define MAX77675_FPS_SLOT_0 0
+#define MAX77675_FPS_SLOT_1 1
+#define MAX77675_FPS_SLOT_2 2
+#define MAX77675_FPS_SLOT_3 3
+#define MAX77675_FPS_NONE 4
+#define MAX77675_FPS_DEF 5
+
+/* nEN Manual Reset Time Configuration (MRT) */
+#define MAX77675_MRT_4S 0x0
+#define MAX77675_MRT_8S 0x1
+#define MAX77675_MRT_12S 0x2
+#define MAX77675_MRT_16S 0x3
+
+/* Internal Pull-Up Disable (PU_DIS) */
+#define MAX77675_PU_EN 0x0
+#define MAX77675_PU_DIS 0x1
+
+/* Bias Low-Power Mode (BIAS_LPM) */
+#define MAX77675_BIAS_NORMAL 0x0
+#define MAX77675_BIAS_LPM_REQ 0x1
+
+/* SIMO Internal Channel Disable (SIMO_INT_CH_DIS) */
+#define MAX77675_SIMO_INT_NORMAL 0x0
+#define MAX77675_SIMO_INT_LDO 0x1
+
+/* nEN Mode Configuration */
+#define MAX77675_EN_PUSH_BUTTON 0x0
+#define MAX77675_EN_SLIDE_SWITCH 0x1
+#define MAX77675_EN_LOGIC 0x2
+#define MAX77675_EN_RESERVED 0x3
+
+/* Debounce Timer Enable (DBEN_nEN) */
+#define MAX77675_DBEN_100US 0x0
+#define MAX77675_DBEN_30MS 0x1
+
+/* Rising slew rate control for SBB0 when ramping up */
+#define MAX77675_SR_2MV_PER_US 0x0 // 2 mV/us
+#define MAX77675_SR_USE_DVS 0x1 // Use DVS slew rate setting (maxim,dvs-slew-rate)
+
+/* Dynamic Voltage Scaling (DVS) Slew Rate */
+#define MAX77675_DVS_SLEW_5MV 0x0 // 5 mV/us
+#define MAX77675_DVS_SLEW_10MV 0x1 // 10 mV/us
+
+/* Latency Mode */
+#define MAX77675_LAT_MODE_HIGH_LATENCY 0 // Low quiescent current, high latency (~100us)
+#define MAX77675_LAT_MODE_LOW_LATENCY 1 // High quiescent current, low latency (~10us)
+
+/* SIMO Buck-Boost Drive Strength (All Channels) */
+#define MAX77675_DRV_SBB_FASTEST 0 // Fastest transition (~0.6 ns)
+#define MAX77675_DRV_SBB_FAST 1 // Faster transition (~1.2 ns)
+#define MAX77675_DRV_SBB_MEDIUM 2 // Moderate transition (~1.8 ns)
+#define MAX77675_DRV_SBB_SLOWEST 3 // Slowest transition (~8 ns)
+
+#endif
--
2.34.1
next prev parent reply other threads:[~2025-09-26 5:39 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-09-26 5:37 [PATCH 0/3] MAX77675 regulator driver: Add support for MAX77675 device Joan-Na-adi
2025-09-26 5:37 ` Joan-Na-adi [this message]
2025-09-26 5:37 ` [PATCH 2/3] regulator: max77675: Add MAX77675 regulator driver Joan-Na-adi
2025-09-26 20:58 ` kernel test robot
2025-09-26 20:58 ` kernel test robot
2025-09-27 5:30 ` kernel test robot
2025-09-26 5:37 ` [PATCH 3/3] dt-bindings: regulator: Add MAX77675 regulator binding Joan-Na-adi
2025-09-26 17:08 ` Conor Dooley
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250926053757.480086-2-joan.na@analog.com \
--to=joan.na.devcode@gmail.com \
--cc=broonie@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=joan.na@analog.com \
--cc=krzk+dt@kernel.org \
--cc=lgirdwood@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=robh@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.