/*
 * Copyright 2023 NXP
 *
 * SPDX-License-Identifier: Apache-2.0
 */

#include <zephyr/dt-bindings/gpio/gpio.h>

/ {
	zephyr,user {
		output-high-gpios = <&gpioa 0 GPIO_ACTIVE_LOW>;
		output-low-gpios = <&gpioa 2 GPIO_ACTIVE_HIGH>;
		input-gpios = <&gpioa 1 GPIO_ACTIVE_HIGH>;
	};
};

&gpioa {
	status = "okay";

	hog1 {
		gpio-hog;
		gpios = <0 GPIO_ACTIVE_LOW>;
		output-high;
	};

	hog2 {
		gpio-hog;
		gpios = <1 GPIO_ACTIVE_HIGH>;
		input;
	};

	hog3 {
		gpio-hog;
		gpios = <2 GPIO_ACTIVE_HIGH>;
		output-low;
	};
};
