// SPDX-License-Identifier: GPL-2.0-only
/*
 * Device Tree file for CalAmp LMU5000 board
 *
 * Copyright (C) 2013 Adam Porter <porter.adam@gmail.com>
 */

/dts-v1/;
#include "at91sam9g20.dtsi"

/ {
	model = "CalAmp LMU5000";
	compatible = "calamp,lmu5000", "atmel,at91sam9g20", "atmel,at91sam9";

	chosen {
		bootargs = "mem=64M console=ttyS0,115200 rootfstype=jffs2";
	};

	memory {
		reg = <0x20000000 0x4000000>;
	};

	clocks {
		#address-cells = <1>;
		#size-cells = <1>;
		ranges;

		main_clock: clock@0 {
			compatible = "atmel,osc", "fixed-clock";
			clock-frequency = <18432000>;
		};
	};
};

&dbgu {
	status = "okay";
};

&ebi {
	status = "okay";

	nand_controller: nand-controller {
		pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>;
		pinctrl-names = "default";
		status = "okay";

		nand@3 {
			reg = <0x3 0x0 0x800000>;
			rb-gpios = <&pioC 13 GPIO_ACTIVE_HIGH>;
			cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>;
			nand-bus-width = <8>;
			nand-ecc-mode = "soft";
			nand-on-flash-bbt;
			label = "atmel_nand";
			status = "okay";

			partitions {
				compatible = "fixed-partitions";
				#address-cells = <1>;
				#size-cells = <1>;

				kernel@0 {
					label = "kernel";
					reg = <0x0 0x400000>;
				};

				rootfs@400000 {
					label = "rootfs";
					reg = <0x400000 0x3C00000>;
				};

				user1@4000000 {
					label = "user1";
					reg = <0x4000000 0x2000000>;
				};

				user2@6000000 {
					label = "user2";
					reg = <0x6000000 0x2000000>;
				};
			};
		};
	};
};

&macb0 {
	phy-mode = "mii";
	status = "okay";
};

&pinctrl {
	board {
		pinctrl_pck0_as_mck: pck0_as_mck {
			atmel,pins = <AT91_PIOC 1 AT91_PERIPH_B AT91_PINCTRL_NONE>;
		};
	};

	usb0 {
		pinctrl_usb1_vbus_gpio: usb0_vbus_gpio {
			atmel,pins = <AT91_PIOC 5 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
		};
	};
};

&ssc0 {
	status = "okay";
	pinctrl-0 = <&pinctrl_ssc0_tx>;
};

&uart0 {
	status = "okay";
};

&uart1 {
	status = "okay";
};

&usart0 {
	pinctrl-0 =
		<&pinctrl_usart0
		 &pinctrl_usart0_rts
		 &pinctrl_usart0_cts
		 &pinctrl_usart0_dtr_dsr
		 &pinctrl_usart0_dcd
		 &pinctrl_usart0_ri>;
	status = "okay";
};

&usart2 {
	status = "okay";
};

&usb0 {
	num-ports = <2>;
	status = "okay";
};

&usb1 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_usb1_vbus_gpio>;
	atmel,vbus-gpio = <&pioC 5 GPIO_ACTIVE_HIGH>;
	status = "okay";
};

&watchdog {
	status = "okay";
};