18c2ecf20Sopenharmony_ci* Oxford Semiconductor OXNAS SoC Family Pin Controller
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciPlease refer to pinctrl-bindings.txt, ../gpio/gpio.txt, and
48c2ecf20Sopenharmony_ci../interrupt-controller/interrupts.txt for generic information regarding
58c2ecf20Sopenharmony_cipin controller, GPIO, and interrupt bindings.
68c2ecf20Sopenharmony_ci
78c2ecf20Sopenharmony_ciOXNAS 'pin configuration node' is a node of a group of pins which can be
88c2ecf20Sopenharmony_ciused for a specific device or function. This node represents configurations of
98c2ecf20Sopenharmony_cipins, optional function, and optional mux related configuration.
108c2ecf20Sopenharmony_ci
118c2ecf20Sopenharmony_ciRequired properties for pin controller node:
128c2ecf20Sopenharmony_ci - compatible: "oxsemi,ox810se-pinctrl" or "oxsemi,ox820-pinctrl"
138c2ecf20Sopenharmony_ci - oxsemi,sys-ctrl: a phandle to the system controller syscon node
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_ciRequired properties for pin configuration sub-nodes:
168c2ecf20Sopenharmony_ci - pins: List of pins to which the configuration applies.
178c2ecf20Sopenharmony_ci
188c2ecf20Sopenharmony_ciOptional properties for pin configuration sub-nodes:
198c2ecf20Sopenharmony_ci----------------------------------------------------
208c2ecf20Sopenharmony_ci - function: Mux function for the specified pins.
218c2ecf20Sopenharmony_ci - bias-pull-up: Enable weak pull-up.
228c2ecf20Sopenharmony_ci
238c2ecf20Sopenharmony_ciExample:
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_cipinctrl: pinctrl {
268c2ecf20Sopenharmony_ci	compatible = "oxsemi,ox810se-pinctrl";
278c2ecf20Sopenharmony_ci
288c2ecf20Sopenharmony_ci	/* Regmap for sys registers */
298c2ecf20Sopenharmony_ci	oxsemi,sys-ctrl = <&sys>;
308c2ecf20Sopenharmony_ci
318c2ecf20Sopenharmony_ci	pinctrl_uart2: pinctrl_uart2 {
328c2ecf20Sopenharmony_ci		uart2a {
338c2ecf20Sopenharmony_ci			pins = "gpio31";
348c2ecf20Sopenharmony_ci			function = "fct3";
358c2ecf20Sopenharmony_ci		};
368c2ecf20Sopenharmony_ci		uart2b {
378c2ecf20Sopenharmony_ci			pins = "gpio32";
388c2ecf20Sopenharmony_ci			function = "fct3";
398c2ecf20Sopenharmony_ci		};
408c2ecf20Sopenharmony_ci	};
418c2ecf20Sopenharmony_ci};
428c2ecf20Sopenharmony_ci
438c2ecf20Sopenharmony_ciuart2: serial@900000 {
448c2ecf20Sopenharmony_ci	compatible = "ns16550a";
458c2ecf20Sopenharmony_ci	reg = <0x900000 0x100000>;
468c2ecf20Sopenharmony_ci	clocks = <&sysclk>;
478c2ecf20Sopenharmony_ci	interrupts = <29>;
488c2ecf20Sopenharmony_ci	reg-shift = <0>;
498c2ecf20Sopenharmony_ci	fifo-size = <16>;
508c2ecf20Sopenharmony_ci	reg-io-width = <1>;
518c2ecf20Sopenharmony_ci	current-speed = <115200>;
528c2ecf20Sopenharmony_ci	no-loopback-test;
538c2ecf20Sopenharmony_ci	resets = <&reset 22>;
548c2ecf20Sopenharmony_ci	pinctrl-names = "default";
558c2ecf20Sopenharmony_ci	pinctrl-0 = <&pinctrl_uart2>;
568c2ecf20Sopenharmony_ci};
57