1/* $NetBSD: sppctl.h,v 1.1.1.1 2026/01/18 05:21:54 skrll Exp $ */ 2 3/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */ 4/* 5 * Sunplus dt-bindings Pinctrl header file 6 * Copyright (C) Sunplus Tech / Tibbo Tech. 7 * Author: Dvorkin Dmitry <dvorkin@tibbo.com> 8 */ 9 10#ifndef __DT_BINDINGS_PINCTRL_SPPCTL_H__ 11#define __DT_BINDINGS_PINCTRL_SPPCTL_H__ 12 13#define IOP_G_MASTE (0x01 << 0) 14#define IOP_G_FIRST (0x01 << 1) 15 16#define SPPCTL_PCTL_G_PMUX (0x00 | IOP_G_MASTE) 17#define SPPCTL_PCTL_G_GPIO (IOP_G_FIRST | IOP_G_MASTE) 18#define SPPCTL_PCTL_G_IOPP (IOP_G_FIRST | 0x00) 19 20#define SPPCTL_PCTL_L_OUT (0x01 << 0) /* Output LOW */ 21#define SPPCTL_PCTL_L_OU1 (0x01 << 1) /* Output HIGH */ 22#define SPPCTL_PCTL_L_INV (0x01 << 2) /* Input Invert */ 23#define SPPCTL_PCTL_L_ONV (0x01 << 3) /* Output Invert */ 24#define SPPCTL_PCTL_L_ODR (0x01 << 4) /* Output Open Drain */ 25 26/* 27 * pack into 32-bit value: 28 * pin# (8bit), typ (8bit), function (8bit), flag (8bit) 29 */ 30#define SPPCTL_IOPAD(pin, typ, fun, flg) (((pin) << 24) | ((typ) << 16) | \ 31 ((fun) << 8) | (flg)) 32 33#endif 34