Zephyr Project API 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
focaltech_ft9001_pinctrl.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2025, FocalTech Systems CO.,Ltd
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
12
13#ifndef ZEPHYR_INCLUDE_DT_BINDINGS_PINCTRL_FOCALTECH_FT9001_PINCTRL_H_
14#define ZEPHYR_INCLUDE_DT_BINDINGS_PINCTRL_FOCALTECH_FT9001_PINCTRL_H_
15
20
47
49
50/*
51 * Pinmux encoding:
52 * bit[0:0] - VALUE (0 = default, 1 = alternate)
53 * bit[5:1] - BIT position in register
54 * bit[25:6] - Register offset
55 */
56
57#define FOCALTECH_IOCTRL_BASE 0x40000000U
58
59#define FOCALTECH_PINCTRL_VALUE_POS 0U
60#define FOCALTECH_PINCTRL_BIT_POS 1U
61#define FOCALTECH_PINCTRL_REG_POS 6U
62
63#define FOCALTECH_PINCTRL_VALUE_MASK 0x1U
64#define FOCALTECH_PINCTRL_BIT_MASK 0x1FU
65#define FOCALTECH_PINCTRL_REG_MASK 0xFFFFFU
66
67#define FOCALTECH_PINCTRL_REG_GET(pinmux) \
68 ((((pinmux) >> FOCALTECH_PINCTRL_REG_POS) & FOCALTECH_PINCTRL_REG_MASK) | \
69 FOCALTECH_IOCTRL_BASE)
70
71#define FOCALTECH_PINCTRL_BIT_GET(pinmux) \
72 (((pinmux) >> FOCALTECH_PINCTRL_BIT_POS) & FOCALTECH_PINCTRL_BIT_MASK)
73
74#define FOCALTECH_PINCTRL_VALUE_GET(pinmux) \
75 (((pinmux) >> FOCALTECH_PINCTRL_VALUE_POS) & FOCALTECH_PINCTRL_VALUE_MASK)
76
78
86#define FOCALTECH_PINMUX(reg, bit, value) \
87 (((reg) << FOCALTECH_PINCTRL_REG_POS) | ((bit) << FOCALTECH_PINCTRL_BIT_POS) | \
88 ((value) << FOCALTECH_PINCTRL_VALUE_POS))
89
96
98#define FOCALTECH_IOCTRL_SPICR_OFFSET 0x00000U
100#define FOCALTECH_IOCTRL_I2CCR_OFFSET 0x00008U
102#define FOCALTECH_IOCTRL_SCICR_OFFSET 0x0000CU
104#define FOCALTECH_IOCTRL_SWAPCR_OFFSET 0x0001CU
106#define FOCALTECH_IOCTRL_CLKRSTCR_OFFSET 0x00044U
108#define FOCALTECH_IOCTRL_EPORT2CR_OFFSET 0x00054U
110#define FOCALTECH_IOCTRL_EPORT3CR_OFFSET 0x00058U
112#define FOCALTECH_IOCTRL_EPORT4CR_OFFSET 0x0005CU
114#define FOCALTECH_IOCTRL_EPORT5CR_OFFSET 0x00060U
116#define FOCALTECH_IOCTRL_EPORT6CR_OFFSET 0x00064U
118#define FOCALTECH_IOCTRL_EPORT7CR_OFFSET 0x00068U
120#define FOCALTECH_IOCTRL_SWAPCR2_OFFSET 0x0006CU
122#define FOCALTECH_IOCTRL_SWAPCR3_OFFSET 0x00070U
124#define FOCALTECH_IOCTRL_SWAPCR4_OFFSET 0x00074U
126#define FOCALTECH_IOCTRL_SWAPCR5_OFFSET 0x00078U
127
129
131
132#endif /* ZEPHYR_INCLUDE_DT_BINDINGS_PINCTRL_FOCALTECH_FT9001_PINCTRL_H_ */