forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-10-22 8ac6c7a54ed1b98d142dce24b11c6de6a1e239a5
kernel/Documentation/devicetree/bindings/pinctrl/fsl,imx7ulp-pinctrl.txt
....@@ -7,55 +7,47 @@
77 This binding doc is only for the IOMUXC1 support in A7 Domain and it only
88 supports generic pin config.
99
10
-Please also refer pinctrl-bindings.txt in this directory for generic pinctrl
11
-binding.
12
-
13
-=== Pin Controller Node ===
10
+Please refer to fsl,imx-pinctrl.txt in this directory for common binding
11
+part and usage.
1412
1513 Required properties:
16
-- compatible: "fsl,imx7ulp-iomuxc1"
17
-- reg: Should contain the base physical address and size of the iomuxc
18
- registers.
14
+- compatible: "fsl,imx7ulp-iomuxc1".
15
+- fsl,pins: Each entry consists of 5 integers which represents the mux
16
+ and config setting for one pin. The first 4 integers
17
+ <mux_conf_reg input_reg mux_mode input_val> are specified
18
+ using a PIN_FUNC_ID macro, which can be found in
19
+ imx7ulp-pinfunc.h in the device tree source folder.
20
+ The last integer CONFIG is the pad setting value like
21
+ pull-up on this pin.
1922
20
-=== Pin Configuration Node ===
21
-- pinmux: One integers array, represents a group of pins mux setting.
22
- The format is pinmux = <PIN_FUNC_ID>, PIN_FUNC_ID is a pin working on
23
- a specific function.
23
+ Please refer to i.MX7ULP Reference Manual for detailed
24
+ CONFIG settings.
2425
25
- NOTE: i.MX7ULP PIN_FUNC_ID consists of 4 integers as it shares one mux
26
- and config register as follows:
27
- <mux_conf_reg input_reg mux_mode input_val>
28
-
29
- Refer to imx7ulp-pinfunc.h in in device tree source folder for all
30
- available imx7ulp PIN_FUNC_ID.
31
-
32
-Optional Properties:
33
-- drive-strength Integer. Controls Drive Strength
34
- 0: Standard
35
- 1: Hi Driver
36
-- drive-push-pull Bool. Enable Pin Push-pull
37
-- drive-open-drain Bool. Enable Pin Open-drian
38
-- slew-rate: Integer. Controls Slew Rate
39
- 0: Standard
40
- 1: Slow
41
-- bias-disable: Bool. Pull disabled
42
-- bias-pull-down: Bool. Pull down on pin
43
-- bias-pull-up: Bool. Pull up on pin
26
+CONFIG bits definition:
27
+PAD_CTL_OBE (1 << 17)
28
+PAD_CTL_IBE (1 << 16)
29
+PAD_CTL_LK (1 << 16)
30
+PAD_CTL_DSE_HI (1 << 6)
31
+PAD_CTL_DSE_STD (0 << 6)
32
+PAD_CTL_ODE (1 << 5)
33
+PAD_CTL_PUSH_PULL (0 << 5)
34
+PAD_CTL_SRE_SLOW (1 << 2)
35
+PAD_CTL_SRE_STD (0 << 2)
36
+PAD_CTL_PE (1 << 0)
4437
4538 Examples:
4639 #include "imx7ulp-pinfunc.h"
4740
4841 /* Pin Controller Node */
49
-iomuxc1: iomuxc@40ac0000 {
42
+iomuxc1: pinctrl@40ac0000 {
5043 compatible = "fsl,imx7ulp-iomuxc1";
5144 reg = <0x40ac0000 0x1000>;
5245
5346 /* Pin Configuration Node */
5447 pinctrl_lpuart4: lpuart4grp {
55
- pinmux = <
56
- IMX7ULP_PAD_PTC3__LPUART4_RX
57
- IMX7ULP_PAD_PTC2__LPUART4_TX
48
+ fsl,pins = <
49
+ IMX7ULP_PAD_PTC3__LPUART4_RX 0x1
50
+ IMX7ULP_PAD_PTC2__LPUART4_TX 0x1
5851 >;
59
- bias-pull-up;
6052 };
6153 };