xref: /freebsd/sys/contrib/device-tree/src/mips/mobileye/eyeq6h-pins.dtsi (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
1*0e8011faSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*0e8011faSEmmanuel Vadot/*
3*0e8011faSEmmanuel Vadot * Copyright 2024 Mobileye Vision Technologies Ltd.
4*0e8011faSEmmanuel Vadot */
5*0e8011faSEmmanuel Vadot
6*0e8011faSEmmanuel Vadot/*
7*0e8011faSEmmanuel Vadot * MUX register structure
8*0e8011faSEmmanuel Vadot * bits    | field      | comment
9*0e8011faSEmmanuel Vadot * [0]     | MUX_SEL    | 0 - GPIO, 1 - alternative func
10*0e8011faSEmmanuel Vadot * [4]     | SW_LOOPBACK|
11*0e8011faSEmmanuel Vadot * [5]     | SW_OUT_HZ  |
12*0e8011faSEmmanuel Vadot * [7]     | DBG_IN     |
13*0e8011faSEmmanuel Vadot * [11:8]  | DS         | drive strength
14*0e8011faSEmmanuel Vadot * [13:12] | PUD        | pull-up/pull-down. 0, 3 - no, 1 - PD, 2 - PU
15*0e8011faSEmmanuel Vadot * [14]    | OD         | Open drain
16*0e8011faSEmmanuel Vadot * [15]    | ST_CFG     | Hysteretic input enable (Schmitt trigger)
17*0e8011faSEmmanuel Vadot */
18*0e8011faSEmmanuel Vadot
19*0e8011faSEmmanuel Vadot&pinctrl_west {
20*0e8011faSEmmanuel Vadot	// TODO: use pinctrl-single,bias-pullup
21*0e8011faSEmmanuel Vadot	// TODO: use pinctrl-single,bias-pulldown
22*0e8011faSEmmanuel Vadot	// TODO: use pinctrl-single,drive-strength
23*0e8011faSEmmanuel Vadot	// TODO: use pinctrl-single,input-schmitt
24*0e8011faSEmmanuel Vadot
25*0e8011faSEmmanuel Vadot	i2c0_pins: i2c0-pins {
26*0e8011faSEmmanuel Vadot		pinctrl-single,pins = <
27*0e8011faSEmmanuel Vadot			0x000 0x200	// I2C0_SCL pin
28*0e8011faSEmmanuel Vadot			0x004 0x200	// I2C0_SDA pin
29*0e8011faSEmmanuel Vadot		>;
30*0e8011faSEmmanuel Vadot	};
31*0e8011faSEmmanuel Vadot	i2c1_pins: i2c1-pins {
32*0e8011faSEmmanuel Vadot		pinctrl-single,pins = <
33*0e8011faSEmmanuel Vadot			0x008 0x200	// I2C1_SCL pin
34*0e8011faSEmmanuel Vadot			0x00c 0x200	// I2C1_SDA pin
35*0e8011faSEmmanuel Vadot		>;
36*0e8011faSEmmanuel Vadot	};
37*0e8011faSEmmanuel Vadot	eth0_pins: eth0-pins {
38*0e8011faSEmmanuel Vadot		pinctrl-single,pins = <
39*0e8011faSEmmanuel Vadot			0x080 1		// GPIO_C4__SMA0_MDC pin
40*0e8011faSEmmanuel Vadot			0x084 1		// GPIO_C5__SMA0_MDIO pin
41*0e8011faSEmmanuel Vadot		>;
42*0e8011faSEmmanuel Vadot	};
43*0e8011faSEmmanuel Vadot	uart0_pins: uart0-pins {
44*0e8011faSEmmanuel Vadot		pinctrl-single,pins = <0x0a8 1>; // UART0 pin group
45*0e8011faSEmmanuel Vadot	};
46*0e8011faSEmmanuel Vadot	uart1_pins: uart1-pins {
47*0e8011faSEmmanuel Vadot		pinctrl-single,pins = <0x0a0 1>; // UART1 pin group
48*0e8011faSEmmanuel Vadot	};
49*0e8011faSEmmanuel Vadot	spi0_pins: spi0-pins {
50*0e8011faSEmmanuel Vadot		pinctrl-single,pins = <0x0ac 1>; // SPI0 pin group
51*0e8011faSEmmanuel Vadot	};
52*0e8011faSEmmanuel Vadot	spi1_pins: spi1-pins {
53*0e8011faSEmmanuel Vadot		pinctrl-single,pins = <0x0a4 1>; // SPI1 pin group
54*0e8011faSEmmanuel Vadot	};
55*0e8011faSEmmanuel Vadot};
56*0e8011faSEmmanuel Vadot
57*0e8011faSEmmanuel Vadot&pinctrl_east {
58*0e8011faSEmmanuel Vadot	i2c2_pins: i2c2-pins {
59*0e8011faSEmmanuel Vadot		pinctrl-single,pins = <
60*0e8011faSEmmanuel Vadot			0x000 0x200	// i2c2_SCL pin
61*0e8011faSEmmanuel Vadot			0x004 0x200	// i2c2_SDA pin
62*0e8011faSEmmanuel Vadot		>;
63*0e8011faSEmmanuel Vadot	};
64*0e8011faSEmmanuel Vadot	i2c3_pins: i2c3-pins {
65*0e8011faSEmmanuel Vadot		pinctrl-single,pins = <
66*0e8011faSEmmanuel Vadot			0x008 0x200	// i2c3_SCL pin
67*0e8011faSEmmanuel Vadot			0x00c 0x200	// i2c3_SDA pin
68*0e8011faSEmmanuel Vadot		>;
69*0e8011faSEmmanuel Vadot	};
70*0e8011faSEmmanuel Vadot	eth1_pins: eth1-pins {
71*0e8011faSEmmanuel Vadot		pinctrl-single,pins = <
72*0e8011faSEmmanuel Vadot			0x080 1	// GPIO_D4__SMA1_MDC pin
73*0e8011faSEmmanuel Vadot			0x084 1	// GPIO_D5__SMA1_MDIO pin
74*0e8011faSEmmanuel Vadot		>;
75*0e8011faSEmmanuel Vadot	};
76*0e8011faSEmmanuel Vadot	uart2_sel_pins: uart2-pins {
77*0e8011faSEmmanuel Vadot		pinctrl-single,pins = <0x0a4 1>; // UART2 pin group
78*0e8011faSEmmanuel Vadot	};
79*0e8011faSEmmanuel Vadot	uart3_pins: uart3-pins {
80*0e8011faSEmmanuel Vadot		pinctrl-single,pins = <0x09c 1>; // UART3 pin group
81*0e8011faSEmmanuel Vadot	};
82*0e8011faSEmmanuel Vadot	spi2_pins: spi2-pins {
83*0e8011faSEmmanuel Vadot		pinctrl-single,pins = <0x0a8 1>; // SPI2 pin group
84*0e8011faSEmmanuel Vadot	};
85*0e8011faSEmmanuel Vadot	spi3_pins: spi3-pins {
86*0e8011faSEmmanuel Vadot		pinctrl-single,pins = <0x0a0 1>; // SPI3 pin group
87*0e8011faSEmmanuel Vadot	};
88*0e8011faSEmmanuel Vadot};
89