/*
 * NOTE: Autogenerated file by kinetis_signal2dts.py
 *       for MK64FN1M0VDC12/signal_configuration.xml
 *
 * Copyright (c) 2022, NXP
 * SPDX-License-Identifier: Apache-2.0
 */


#include <nxp/kinetis/MK64FN1M0VDC12-pinctrl.h>

&pinctrl {
	ftm3_default: ftm3_default {
		group0 {
			pinmux = <FTM3_CH4_PTC8>,
				<FTM3_CH0_PTD0>;
			drive-strength = "low";
			slew-rate = "fast";
		};
	};

	i2c0_default: i2c0_default {
		group0 {
			pinmux = <I2C0_SCL_PTB0>,
				<I2C0_SDA_PTB1>;
			drive-strength = "low";
			drive-open-drain;
			slew-rate = "fast";
		};
	};

	i2c1_default: i2c1_default {
		group0 {
			pinmux = <I2C1_SCL_PTC10>,
				<I2C1_SDA_PTC11>;
			drive-strength = "low";
			drive-open-drain;
			slew-rate = "fast";
		};
	};

	uart0_default: uart0_default {
		group0 {
			pinmux = <UART0_RX_PTB16>,
				<UART0_TX_PTB17>;
			drive-strength = "low";
			slew-rate = "fast";
		};
	};

	uart4_default: uart4_default {
		group0 {
			pinmux = <UART4_RX_PTE25>,
				<UART4_TX_PTE24>;
			drive-strength = "low";
			slew-rate = "fast";
		};
	};

};
