# Copyright (c), 2023 Basalte bv # SPDX-License-Identifier: Apache-2.0 description: | NXP SC18IM704 UART to I2C/GPIO bridge. The SC18IM704 supports both an external I2C and GPIO controller. These controllers have to be added to the Device Tree as children. While the device itself has to be a child of a UART controller. An example configuration: &uart0 { status = "okay"; pinctrl-0 = <&uart0_default>; pinctrl-names = "default"; sc18im704: sc18im704 { compatible = "nxp,sc18im704"; status = "okay"; target-speed = <115200>; reset-gpios = <&gpio1 15 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; i2c_ext: sc18im704_i2c { compatible = "nxp,sc18im704-i2c"; status = "okay"; #address-cells = <1>; #size-cells = <0>; }; gpio_ext: sc18im704_gpio { compatible = "nxp,sc18im704-gpio"; status = "okay"; gpio-controller; #gpio-cells = <2>; ngpios = <8>; }; }; }; compatible: "nxp,sc18im704" include: uart-device.yaml properties: reset-gpios: type: phandle-array description: Driver reset pin of the bridge. If connected directly to the MCU, this pin should be configured as active low. target-speed: type: int description: UART baudrate which will be requested and to which UART interface will be reconfigured during initialization phase. enum: - 1200 - 2400 - 4800 - 9600 - 14400 - 19200 - 28800 - 38400 - 57600 - 76800 - 115200 - 230400 - 460800 bus: nxp,sc18im704