On Sat, Jan 17, 2026 at 02:01:46PM -0500, Raymond Mao wrote:
> 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 */

These definitions look like hardware bits instead of dt-bindings, and I
don't see a binding file for the pinctrl driver of SpacemiT K1 in Linux
upstream. If it's the case, please keep the definitions inside your
driver, correct the commit description, and probably squash it into the
driver patch.

Thanks,
Yao Zi

Reply via email to