/*
 * Copyright (c) 2017 Google LLC.
 *
 * SPDX-License-Identifier: Apache-2.0
 */

#include <atmel/samd2x.dtsi>

/ {
	aliases {
		tc-6 = &tc6;
	};

	soc {
		usb0: usb@41005000 {
			compatible = "atmel,sam0-usb";
			status = "disabled";
			reg = <0x41005000 0x1000>;
			interrupts = <7 0>;
			num-bidir-endpoints = <8>;
			label = "USB0";
		};

		dmac: dmac@41004800 {
			compatible = "atmel,sam0-dmac";
			reg = <0x41004800 0x50>;
			interrupts = <6 0>;
			label = "DMA_0";
			#dma-cells = <2>;
		};

		tc6: tc@42003800 {
			compatible = "atmel,sam0-tc32";
			reg = <0x42003800 0x20>;
			interrupts = <21 0>;
			label = "TIMER_6";
			clocks = <&gclk 0x1d>, <&pm 0x20 14>;
			clock-names = "GCLK", "PM";
		};

		tcc0: tcc@42002000 {
			compatible = "atmel,sam0-tcc";
			reg = <0x42002000 0x80>;
			interrupts = <15 0>;
			label = "TCC_0";
			clocks = <&gclk 26>, <&pm 0x20 8>;
			clock-names = "GCLK", "PM";

			channels = <4>;
			counter-size = <24>;
		};

		tcc1: tcc@42002400 {
			compatible = "atmel,sam0-tcc";
			reg = <0x42002400 0x80>;
			interrupts = <16 0>;
			label = "TCC_1";
			clocks = <&gclk 26>, <&pm 0x20 9>;
			clock-names = "GCLK", "PM";

			channels = <2>;
			counter-size = <24>;
		};

		tcc2: tcc@42002800 {
			compatible = "atmel,sam0-tcc";
			reg = <0x42002800 0x80>;
			interrupts = <17 0>;
			label = "TCC_2";
			clocks = <&gclk 27>, <&pm 0x20 10>;
			clock-names = "GCLK", "PM";

			channels = <2>;
			counter-size = <16>;
		};
	};
};

&dac0 {
	interrupts = <25 0>;
	clocks = <&gclk 33>, <&pm 0x20 18>;
	clock-names = "GCLK", "PM";
};

&sercom0 {
	interrupts = <9 0>;
	clocks = <&gclk 0x14>, <&pm 0x20 2>;
	clock-names = "GCLK", "PM";
};

&sercom1 {
	interrupts = <10 0>;
	clocks = <&gclk 0x15>, <&pm 0x20 3>;
	clock-names = "GCLK", "PM";
};

&sercom2 {
	interrupts = <11 0>;
	clocks = <&gclk 0x16>, <&pm 0x20 4>;
	clock-names = "GCLK", "PM";
};

&sercom3 {
	interrupts = <12 0>;
	clocks = <&gclk 0x17>, <&pm 0x20 5>;
	clock-names = "GCLK", "PM";
};

&sercom4 {
	interrupts = <13 0>;
	clocks = <&gclk 0x18>, <&pm 0x20 6>;
	clock-names = "GCLK", "PM";
};

&sercom5 {
	interrupts = <14 0>;
	clocks = <&gclk 0x19>, <&pm 0x20 7>;
	clock-names = "GCLK", "PM";
};

&tc4 {
	interrupts = <19 0>;
	clocks = <&gclk 0x1c>, <&pm 0x20 12>;
	clock-names = "GCLK", "PM";
};

&adc {
	clocks = <&gclk 0x1e>, <&pm 0x20 16>;
	clock-names = "GCLK", "PM";
	interrupts = <23 0>;
	interrupt-names = "resrdy";
};
