// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * Copyright 2012 Free Electrons
 */

/dts-v1/;
#include "imx28.dtsi"
#include <dt-bindings/gpio/gpio.h>

/ {
	model = "Crystalfontz CFA-10036 Board";
	compatible = "crystalfontz,cfa10036", "fsl,imx28";

	memory@40000000 {
		device_type = "memory";
		reg = <0x40000000 0x08000000>;
	};

	leds {
		compatible = "gpio-leds";
		pinctrl-names = "default";
		pinctrl-0 = <&led_pins_cfa10036>;

		power {
			gpios = <&gpio3 4 1>;
			default-state = "on";
		};
	};

	reg_vddio_sd0: vddio-sd0 {
		compatible = "regulator-fixed";
		pinctrl-names = "default";
		pinctrl-0 = <&mmc_pwr_cfa10036>;
		regulator-name = "vddio-sd0";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		gpio = <&gpio3 28 0>;
	};
};

&duart {
	pinctrl-names = "default";
	pinctrl-0 = <&duart_pins_b>;
	status = "okay";
};

&i2c0 {
	pinctrl-names = "default";
	pinctrl-0 = <&i2c0_pins_b>;
	clock-frequency = <400000>;
	status = "okay";

	ssd1306: oled@3c {
		compatible = "solomon,ssd1306fb-i2c";
		pinctrl-names = "default";
		pinctrl-0 = <&ssd1306_cfa10036>;
		reg = <0x3c>;
		reset-gpios = <&gpio2 7 GPIO_ACTIVE_LOW>;
		solomon,height = <32>;
		solomon,width = <128>;
		solomon,page-offset = <0>;
		solomon,com-lrremap;
		solomon,com-invdir;
		solomon,com-offset = <32>;
	};
};

&pinctrl {
	ssd1306_cfa10036: ssd1306-10036@0 {
		reg = <0>;
		fsl,pinmux-ids = <
			MX28_PAD_SSP0_DATA7__GPIO_2_7
		>;
		fsl,drive-strength = <MXS_DRIVE_4mA>;
		fsl,voltage = <MXS_VOLTAGE_HIGH>;
		fsl,pull-up = <MXS_PULL_DISABLE>;
	};

	led_pins_cfa10036: leds-10036@0 {
		reg = <0>;
		fsl,pinmux-ids = <
			MX28_PAD_AUART1_RX__GPIO_3_4
		>;
		fsl,drive-strength = <MXS_DRIVE_4mA>;
		fsl,voltage = <MXS_VOLTAGE_HIGH>;
		fsl,pull-up = <MXS_PULL_DISABLE>;
	};

	usb0_otg_cfa10036: otg-10036@0 {
		reg = <0>;
		fsl,pinmux-ids = <
			MX28_PAD_GPMI_RDY0__USB0_ID
		>;
		fsl,drive-strength = <MXS_DRIVE_4mA>;
		fsl,voltage = <MXS_VOLTAGE_HIGH>;
		fsl,pull-up = <MXS_PULL_DISABLE>;
	};

	mmc_pwr_cfa10036: mmc_pwr_cfa10036@0 {
		reg = <0>;
		fsl,pinmux-ids = <
			0x31c3 /*
			MX28_PAD_PWM3__GPIO_3_28 */
		>;
		fsl,drive-strength = <0>;
		fsl,voltage = <1>;
		fsl,pull-up = <0>;
	};
};

&ssp0 {
	compatible = "fsl,imx28-mmc";
	pinctrl-names = "default";
	pinctrl-0 = <&mmc0_4bit_pins_a
		&mmc0_cd_cfg &mmc0_sck_cfg>;
	vmmc-supply = <&reg_vddio_sd0>;
	bus-width = <4>;
	status = "okay";
};

&usb0 {
	pinctrl-names = "default";
	pinctrl-0 = <&usb0_otg_cfa10036>;
	dr_mode = "peripheral";
	phy_type = "utmi";
	status = "okay";
};

&usbphy0 {
	status = "okay";
};
