// SPDX-License-Identifier: GPL-2.0
/*
 * Samsung S3C2416 pinctrl settings
 *
 * Copyright (c) 2013 Heiko Stuebner <heiko@sntech.de>
 */

#include <dt-bindings/pinctrl/samsung.h>

&pinctrl_0 {
	/*
	 * Pin banks
	 */

	gpa: gpa-gpio-bank {
		gpio-controller;
		#gpio-cells = <2>;
	};

	gpb: gpb-gpio-bank {
		gpio-controller;
		#gpio-cells = <2>;
	};

	gpc: gpc-gpio-bank {
		gpio-controller;
		#gpio-cells = <2>;
	};

	gpd: gpd-gpio-bank {
		gpio-controller;
		#gpio-cells = <2>;
	};

	gpe: gpe-gpio-bank {
		gpio-controller;
		#gpio-cells = <2>;
	};

	gpf: gpf-gpio-bank {
		gpio-controller;
		#gpio-cells = <2>;
		interrupt-controller;
		#interrupt-cells = <2>;
	};

	gpg: gpg-gpio-bank {
		gpio-controller;
		#gpio-cells = <2>;
		interrupt-controller;
		#interrupt-cells = <2>;
	};

	gph: gph-gpio-bank {
		gpio-controller;
		#gpio-cells = <2>;
	};

	gpj: gpj-gpio-bank {
		gpio-controller;
		#gpio-cells = <2>;
	};

	gpk: gpk-gpio-bank {
		gpio-controller;
		#gpio-cells = <2>;
	};

	gpl: gpl-gpio-bank {
		gpio-controller;
		#gpio-cells = <2>;
	};

	gpm: gpm-gpio-bank {
		gpio-controller;
		#gpio-cells = <2>;
	};

	/*
	 * Pin groups
	 */

	uart0_data: uart0-data-pins {
		samsung,pins = "gph-0", "gph-1";
		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
	};

	uart0_fctl: uart0-fctl-pins {
		samsung,pins = "gph-8", "gph-9";
		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
	};

	uart1_data: uart1-data-pins {
		samsung,pins = "gph-2", "gph-3";
		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
	};

	uart1_fctl: uart1-fctl-pins {
		samsung,pins = "gph-10", "gph-11";
		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
	};

	uart2_data: uart2-data-pins {
		samsung,pins = "gph-4", "gph-5";
		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
	};

	uart2_fctl: uart2-fctl-pins {
		samsung,pins = "gph-6", "gph-7";
		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
	};

	uart3_data: uart3-data-pins {
		samsung,pins = "gph-6", "gph-7";
		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
	};

	extuart_clk: extuart-clk-pins {
		samsung,pins = "gph-12";
		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
	};

	i2c0_bus: i2c0-bus-pins {
		samsung,pins = "gpe-14", "gpe-15";
		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
	};

	spi0_bus: spi0-bus-pins {
		samsung,pins = "gpe-11", "gpe-12", "gpe-13";
		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
	};

	sd0_clk: sd0-clk-pins {
		samsung,pins = "gpe-5";
		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
	};

	sd0_cmd: sd0-cmd-pins {
		samsung,pins = "gpe-6";
		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
	};

	sd0_bus1: sd0-bus1-pins {
		samsung,pins = "gpe-7";
		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
	};

	sd0_bus4: sd0-bus4-pins {
		samsung,pins = "gpe-8", "gpe-9", "gpe-10";
		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
	};

	sd1_cmd: sd1-cmd-pins {
		samsung,pins = "gpl-8";
		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
	};

	sd1_clk: sd1-clk-pins {
		samsung,pins = "gpl-9";
		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
	};

	sd1_bus1: sd1-bus1-pins {
		samsung,pins = "gpl-0";
		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
	};

	sd1_bus4: sd1-bus4-pins {
		samsung,pins = "gpl-1", "gpl-2", "gpl-3";
		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
	};
};