// SPDX-License-Identifier: GPL-2.0+ OR X11 /* * Copyright 2018-2019 Toradex */ #include #include / { chosen { bootargs = "console=ttymxc0,115200"; }; gpio-keys { compatible = "gpio-keys"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_snvs_gpiokeys>; power { label = "Wake-Up"; gpios = <&gpio5 1 GPIO_ACTIVE_HIGH>; linux,code = ; debounce-interval = <10>; gpio-key,wakeup; }; }; extcon_usbc_det: usbc_det { compatible = "linux,extcon-usb-gpio"; debounce = <25>; id-gpio = <&gpio5 2 GPIO_ACTIVE_HIGH>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_snvs_usbc_det>; }; reg_3v3: regulator-3v3 { compatible = "regulator-fixed"; regulator-name = "3.3V"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; regulator-always-on; }; reg_5v0: regulator-5v0 { compatible = "regulator-fixed"; regulator-name = "5V"; regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; }; reg_usbh_vbus: regulator-usbh-vbus { compatible = "regulator-fixed"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usbh_reg>; regulator-name = "VCC_USB[1-4]"; regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; gpio = <&gpio1 2 GPIO_ACTIVE_LOW>; vin-supply = <®_5v0>; }; }; &adc1 { status = "okay"; }; &pxp { status = "okay"; }; &i2c1 { pinctrl-names = "default", "gpio"; pinctrl-0 = <&pinctrl_i2c1>; pinctrl-1 = <&pinctrl_i2c1_gpio>; sda-gpios = <&gpio1 29 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; scl-gpios = <&gpio1 28 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; status = "okay"; /* M41T0M6 real time clock on carrier board */ rtc: m41t0m6@68 { compatible = "st,m41t0"; reg = <0x68>; }; }; /* Atmel TS adapter */ &atmel_mxt_ts { pinctrl-0 = <&pinctrl_atmel_adap>; interrupt-parent = <&gpio4>; interrupts = <16 IRQ_TYPE_EDGE_FALLING>; /* SODIMM 28, INT */ reset-gpios = <&gpio2 5 GPIO_ACTIVE_HIGH>; /* SODIMM 30, RST */ status = "disabled"; }; /* PWM */ &pwm4 { status = "okay"; }; /* * the PCAPs use SODIMM 28/30, also used for PWM, PWM, aka pwm5, * pwm6. so if you enable one of the PCAP controllers disable the pwms */ /* PWM */ &pwm5 { status = "okay"; }; /* PWM */ &pwm6 { status = "okay"; }; /* PWM */ &pwm7 { status = "okay"; }; /* Colibri UART_A */ &uart1 { status = "okay"; }; /* Colibri UART_B */ &uart2 { status = "okay"; }; /* Colibri UART_C */ &uart5 { status = "okay"; }; &usbotg1 { extcon = <&extcon_usbc_det &extcon_usbc_det>; vbus-supply = <®_usbh_vbus>; status = "okay"; }; &usbotg2 { vbus-supply = <®_usbh_vbus>; status = "okay"; }; &usdhc1 { vmmc-supply = <®_3v3>; status = "okay"; }; &gpio1 { /* * uart25_tx_on turns the UART transceiver on. If one wants to turn the * transceiver off, that property has to be deleted and the gpio handled * in userspace. * The same applies to uart1_tx_on. */ uart25_tx_on { gpio-hog; gpios = <15 0>; output-high; }; }; &gpio2 { uart1_tx_on { gpio-hog; gpios = <7 0>; output-high; }; };