From: Raymond Mao <[email protected]>

Add dt-binding file of pinctrl driver for Spacemit K1 SoC.

Signed-off-by: Raymond Mao <[email protected]>
---
 include/dt-bindings/pinctrl/k1-pinctrl.h | 59 ++++++++++++++++++++++++
 1 file changed, 59 insertions(+)
 create mode 100644 include/dt-bindings/pinctrl/k1-pinctrl.h

diff --git a/include/dt-bindings/pinctrl/k1-pinctrl.h 
b/include/dt-bindings/pinctrl/k1-pinctrl.h
new file mode 100644
index 00000000000..6c6b223c969
--- /dev/null
+++ b/include/dt-bindings/pinctrl/k1-pinctrl.h
@@ -0,0 +1,59 @@
+/* SPDX-License-Identifier: (GPL-2.0 OR MIT) */
+/*
+ * Copyright (C) 2025-2026 RISCStar Ltd.
+ */
+
+#ifndef __DT_BINDINGS_K1_PINCTRL_H
+#define __DT_BINDINGS_K1_PINCTRL_H
+
+/* pin mux */
+#define MUX_MODE0      0
+#define MUX_MODE1      1
+#define MUX_MODE2      2
+#define MUX_MODE3      3
+#define MUX_MODE4      4
+#define MUX_MODE5      5
+#define MUX_MODE6      6
+#define MUX_MODE7      7
+
+/* strong pull resistor */
+#define SPU_EN         BIT(3)
+
+/* edge detect */
+#define EDGE_NONE      BIT(6)
+#define EDGE_RISE      BIT(4)
+#define EDGE_FALL      BIT(5)
+#define EDGE_BOTH      (EDGE_RISE | EDGE_FALL)
+
+/* slew rate output control */
+#define SLE_EN         BIT(7)
+
+/* schmitter trigger input threshold */
+#define ST00           (0 << 8)
+#define ST01           BIT(8)
+#define ST02           BIT(9)
+#define ST03           (BIT(8) | BIT(9))
+
+/* driver strength*/
+#define PAD_DS_3V      BIT(10)
+#define PAD_DS_SLOW0   (0 << 11)
+#define PAD_DS_SLOW1   BIT(11)
+#define PAD_DS_MEDIUM  BIT(12)
+#define PAD_DS_FAST    (BIT(11) | BIT(12))
+
+#define PAD_1V8_DS0    PAD_DS_SLOW0
+#define PAD_1V8_DS1    PAD_DS_SLOW1
+#define PAD_1V8_DS2    PAD_DS_MEDIUM
+#define PAD_1V8_DS3    PAD_DS_FAST
+
+#define PAD_3V_DS0     (PAD_DS_SLOW0 | PAD_DS_3V)
+#define PAD_3V_DS1     (PAD_DS_SLOW1 | PAD_DS_3V)
+#define PAD_3V_DS2     (PAD_DS_MEDIUM | PAD_DS_3V)
+#define PAD_3V_DS3     (PAD_DS_FAST | PAD_DS_3V)
+
+/* pull up/down */
+#define PULL_DIS       (0 << 13)       /* bit[15:13] 000 */
+#define PULL_UP                (6 << 13)       /* bit[15:13] 110 */
+#define PULL_DOWN      (5 << 13)       /* bit[15:13] 101 */
+
+#endif /* __DT_BINDINGS_K1_PINCTRL_H */
-- 
2.25.1

Reply via email to