// SPDX-License-Identifier: GPL-2.0
/*
 * Device Tree file for Arietta G25
 * This device tree is minimal, to activate more peripherals, see:
 * http://dts.acmesystems.it/arietta/
 */
/dts-v1/;
#include "at91sam9g25.dtsi"
/ {
	model = "Acme Systems Arietta G25";
	compatible = "acme,ariettag25", "atmel,at91sam9x5", "atmel,at91sam9";

	aliases {
		serial0 = &dbgu;
	};

	chosen {
		stdout-path = "serial0:115200n8";
	};

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

	clocks {
		slow_xtal {
			clock-frequency = <32768>;
		};

		main_xtal {
			clock-frequency = <12000000>;
		};
	};

	ahb {
		apb {
			mmc0: mmc@f0008000 {
				pinctrl-0 = <
				  &pinctrl_mmc0_slot0_clk_cmd_dat0
				  &pinctrl_mmc0_slot0_dat1_3>;
				status = "okay";

				slot@0 {
					reg = <0>;
					bus-width = <4>;
				};
			};

			tcb0: timer@f8008000 {
				timer@0 {
					compatible = "atmel,tcb-timer";
					reg = <0>;
				};

				timer@1 {
					compatible = "atmel,tcb-timer";
					reg = <1>;
				};
			};

			usb2: gadget@f803c000 {
				status = "okay";
			};

			dbgu: serial@fffff200 {
				status = "okay";
			};

			rtc@fffffeb0 {
				status = "okay";
			};
		};

		usb0: ohci@600000 {
			status = "okay";
			num-ports = <3>;
		};

		usb1: ehci@700000 {
			status = "okay";
		};
	};

	leds {
		compatible = "gpio-leds";
		arietta_led {
			label = "arietta_led";
			gpios = <&pioB 8 GPIO_ACTIVE_HIGH>; /* PB8 */
			linux,default-trigger = "heartbeat";
		};
	};
};
