at91sam9n12ek.dts 2.7 KB
Newer Older
1 2 3 4 5 6 7 8 9
/*
 * at91sam9n12ek.dts - Device Tree file for AT91SAM9N12-EK board
 *
 *  Copyright (C) 2012 Atmel,
 *                2012 Hong Xu <hong.xu@atmel.com>
 *
 * Licensed under GPLv2 or later.
 */
/dts-v1/;
10
#include "at91sam9n12.dtsi"
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39

/ {
	model = "Atmel AT91SAM9N12-EK";
	compatible = "atmel,at91sam9n12ek", "atmel,at91sam9n12", "atmel,at91sam9";

	chosen {
		bootargs = "mem=128M console=ttyS0,115200 root=/dev/mtdblock1 rw rootfstype=jffs2";
	};

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

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

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

	ahb {
		apb {
			dbgu: serial@fffff200 {
				status = "okay";
			};
40 41 42

			i2c0: i2c@f8010000 {
				status = "okay";
43 44 45 46 47 48 49 50 51

				qt1070: keyboard@1b {
					compatible = "qt1070";
					reg = <0x1b>;
					interrupt-parent = <&pioA>;
					interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
					pinctrl-names = "default";
					pinctrl-0 = <&pinctrl_qt1070_irq>;
				};
52 53 54 55 56
			};

			i2c1: i2c@f8014000 {
				status = "okay";
			};
57 58

			mmc0: mmc@f0008000 {
59 60 61 62
				pinctrl-0 = <
					&pinctrl_board_mmc0
					&pinctrl_mmc0_slot0_clk_cmd_dat0
					&pinctrl_mmc0_slot0_dat1_3>;
63 64 65 66
				status = "okay";
				slot@0 {
					reg = <0>;
					bus-width = <4>;
67
					cd-gpios = <&pioA 7 GPIO_ACTIVE_HIGH>;
68 69
				};
			};
70 71 72 73 74

			pinctrl@fffff400 {
				mmc0 {
					pinctrl_board_mmc0: mmc0-board {
						atmel,pins =
75
							<AT91_PIOA 7 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;	/* PA7 gpio CD pin pull up and deglitch */
76 77
					};
				};
78 79 80 81 82 83 84

				qt1070 {
					pinctrl_qt1070_irq: qt1070_irq {
						atmel,pins =
							<AT91_PIOA 2 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
					};
				};
85
			};
86 87 88 89 90 91 92 93 94 95

			spi0: spi@f0000000 {
				status = "okay";
				cs-gpios = <&pioA 14 0>, <0>, <0>, <0>;
				m25p80@0 {
					compatible = "atmel,at25df321a";
					spi-max-frequency = <50000000>;
					reg = <0>;
				};
			};
96 97 98 99

			watchdog@fffffe40 {
				status = "okay";
			};
100 101 102 103
		};

		nand0: nand@40000000 {
			nand-bus-width = <8>;
104 105 106 107
			nand-ecc-mode = "hw";
			atmel,has-pmecc;
			atmel,pmecc-cap = <2>;
			atmel,pmecc-sector-size = <512>;
108 109 110 111 112 113 114 115 116 117
			nand-on-flash-bbt;
			status = "okay";
		};
	};

	leds {
		compatible = "gpio-leds";

		d8 {
			label = "d8";
118
			gpios = <&pioB 4 GPIO_ACTIVE_LOW>;
119 120 121 122 123
			linux,default-trigger = "mmc0";
		};

		d9 {
			label = "d6";
124
			gpios = <&pioB 5 GPIO_ACTIVE_LOW>;
125 126 127 128 129
			linux,default-trigger = "nand-disk";
		};

		d10 {
			label = "d7";
130
			gpios = <&pioB 6 GPIO_ACTIVE_HIGH>;
131 132 133 134 135 136 137 138 139
			linux,default-trigger = "heartbeat";
		};
	};

	gpio_keys {
		compatible = "gpio-keys";

		enter {
			label = "Enter";
140
			gpios = <&pioB 4 GPIO_ACTIVE_LOW>;
141 142 143 144 145
			linux,code = <28>;
			gpio-key,wakeup;
		};
	};
};