|  | // SPDX-License-Identifier: GPL-2.0-only | 
|  | /* | 
|  | * at91sam9261ek.dts - Device Tree file for Atmel at91sam9261 reference board | 
|  | * | 
|  | *  Copyright (C) 2013 Jean-Jacques Hiblot <jjhiblot@traphandler.com> | 
|  | */ | 
|  | /dts-v1/; | 
|  | #include "at91sam9261.dtsi" | 
|  |  | 
|  | / { | 
|  | model = "Atmel at91sam9261ek"; | 
|  | compatible = "atmel,at91sam9261ek", "atmel,at91sam9261", "atmel,at91sam9"; | 
|  |  | 
|  | chosen { | 
|  | bootargs = "rootfstype=ubifs ubi.mtd=5 root=ubi0:rootfs rw"; | 
|  | stdout-path = "serial0:115200n8"; | 
|  | }; | 
|  |  | 
|  | memory@20000000 { | 
|  | reg = <0x20000000 0x4000000>; | 
|  | }; | 
|  |  | 
|  | clocks { | 
|  | slow_xtal { | 
|  | clock-frequency = <32768>; | 
|  | }; | 
|  |  | 
|  | main_xtal { | 
|  | clock-frequency = <18432000>; | 
|  | }; | 
|  | }; | 
|  |  | 
|  | ahb { | 
|  | usb0: ohci@500000 { | 
|  | status = "okay"; | 
|  | }; | 
|  |  | 
|  | fb0: fb@600000 { | 
|  | display = <&display0>; | 
|  | atmel,power-control-gpio = <&pioA 12 GPIO_ACTIVE_LOW>; | 
|  | status = "okay"; | 
|  |  | 
|  | display0: panel { | 
|  | bits-per-pixel = <16>; | 
|  | atmel,lcdcon-backlight; | 
|  | atmel,dmacon = <0x1>; | 
|  | atmel,lcdcon2 = <0x80008002>; | 
|  | atmel,guard-time = <1>; | 
|  | atmel,lcd-wiring-mode = "BRG"; | 
|  |  | 
|  | display-timings { | 
|  | native-mode = <&timing0>; | 
|  | timing0: timing0 { | 
|  | clock-frequency = <4965000>; | 
|  | hactive = <240>; | 
|  | vactive = <320>; | 
|  | hback-porch = <1>; | 
|  | hfront-porch = <33>; | 
|  | vback-porch = <1>; | 
|  | vfront-porch = <0>; | 
|  | hsync-len = <5>; | 
|  | vsync-len = <1>; | 
|  | hsync-active = <1>; | 
|  | vsync-active = <1>; | 
|  | }; | 
|  | }; | 
|  | }; | 
|  | }; | 
|  |  | 
|  | ebi: ebi@10000000 { | 
|  | status = "okay"; | 
|  |  | 
|  | nand_controller: nand-controller { | 
|  | status = "okay"; | 
|  | pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>; | 
|  | pinctrl-names = "default"; | 
|  |  | 
|  | nand@3 { | 
|  | reg = <0x3 0x0 0x800000>; | 
|  | rb-gpios = <&pioC 15 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"; | 
|  |  | 
|  | partitions { | 
|  | compatible = "fixed-partitions"; | 
|  | #address-cells = <1>; | 
|  | #size-cells = <1>; | 
|  |  | 
|  | at91bootstrap@0 { | 
|  | label = "at91bootstrap"; | 
|  | reg = <0x0 0x40000>; | 
|  | }; | 
|  |  | 
|  | bootloader@40000 { | 
|  | label = "bootloader"; | 
|  | reg = <0x40000 0x80000>; | 
|  | }; | 
|  |  | 
|  | bootloaderenv@c0000 { | 
|  | label = "bootloader env"; | 
|  | reg = <0xc0000 0xc0000>; | 
|  | }; | 
|  |  | 
|  | dtb@180000 { | 
|  | label = "device tree"; | 
|  | reg = <0x180000 0x80000>; | 
|  | }; | 
|  |  | 
|  | kernel@200000 { | 
|  | label = "kernel"; | 
|  | reg = <0x200000 0x600000>; | 
|  | }; | 
|  |  | 
|  | rootfs@800000 { | 
|  | label = "rootfs"; | 
|  | reg = <0x800000 0x0f800000>; | 
|  | }; | 
|  | }; | 
|  | }; | 
|  | }; | 
|  | }; | 
|  |  | 
|  | apb { | 
|  | tcb0: timer@fffa0000 { | 
|  | timer0: timer@0 { | 
|  | compatible = "atmel,tcb-timer"; | 
|  | reg = <0>, <1>; | 
|  | }; | 
|  |  | 
|  | timer1: timer@2 { | 
|  | compatible = "atmel,tcb-timer"; | 
|  | reg = <2>; | 
|  | }; | 
|  | }; | 
|  |  | 
|  | usb1: gadget@fffa4000 { | 
|  | atmel,vbus-gpio = <&pioB 29 GPIO_ACTIVE_HIGH>; | 
|  | status = "okay"; | 
|  | }; | 
|  |  | 
|  | spi0: spi@fffc8000 { | 
|  | cs-gpios = <&pioA 3 0>, <0>, <&pioA 28 0>, <0>; | 
|  | status = "okay"; | 
|  |  | 
|  | flash@0 { | 
|  | compatible = "atmel,at45", "atmel,dataflash"; | 
|  | reg = <0>; | 
|  | spi-max-frequency = <15000000>; | 
|  | }; | 
|  |  | 
|  | tsc2046@2 { | 
|  | reg = <2>; | 
|  | compatible = "ti,ads7843"; | 
|  | interrupts-extended = <&pioC 2 IRQ_TYPE_EDGE_BOTH>; | 
|  | spi-max-frequency = <3000000>; | 
|  | pendown-gpio = <&pioC 2 GPIO_ACTIVE_LOW>; | 
|  |  | 
|  | ti,x-min = /bits/ 16 <150>; | 
|  | ti,x-max = /bits/ 16 <3830>; | 
|  | ti,y-min = /bits/ 16 <190>; | 
|  | ti,y-max = /bits/ 16 <3830>; | 
|  | ti,vref-delay-usecs = /bits/ 16 <450>; | 
|  | ti,x-plate-ohms = /bits/ 16 <450>; | 
|  | ti,y-plate-ohms = /bits/ 16 <250>; | 
|  | ti,pressure-max = /bits/ 16 <15000>; | 
|  | ti,debounce-rep = /bits/ 16 <0>; | 
|  | ti,debounce-tol = /bits/ 16 <65535>; | 
|  | ti,debounce-max = /bits/ 16 <1>; | 
|  |  | 
|  | wakeup-source; | 
|  | }; | 
|  | }; | 
|  |  | 
|  | dbgu: serial@fffff200 { | 
|  | status = "okay"; | 
|  | }; | 
|  |  | 
|  | rtc@fffffd20 { | 
|  | atmel,rtt-rtc-time-reg = <&gpbr 0x0>; | 
|  | }; | 
|  |  | 
|  | watchdog@fffffd40 { | 
|  | status = "okay"; | 
|  | }; | 
|  |  | 
|  | }; | 
|  | }; | 
|  |  | 
|  | leds { | 
|  | compatible = "gpio-leds"; | 
|  |  | 
|  | ds8 { | 
|  | label = "ds8"; | 
|  | gpios = <&pioA 13 GPIO_ACTIVE_LOW>; | 
|  | linux,default-trigger = "none"; | 
|  | }; | 
|  |  | 
|  | ds7 { | 
|  | label = "ds7"; | 
|  | gpios = <&pioA 14 GPIO_ACTIVE_LOW>; | 
|  | linux,default-trigger = "nand-disk"; | 
|  | }; | 
|  |  | 
|  | ds1 { | 
|  | label = "ds1"; | 
|  | gpios = <&pioA 23 GPIO_ACTIVE_LOW>; | 
|  | linux,default-trigger = "heartbeat"; | 
|  | }; | 
|  | }; | 
|  |  | 
|  | gpio-keys { | 
|  | compatible = "gpio-keys"; | 
|  |  | 
|  | button-0 { | 
|  | label = "button_0"; | 
|  | gpios = <&pioA 27 GPIO_ACTIVE_LOW>; | 
|  | linux,code = <256>; | 
|  | wakeup-source; | 
|  | }; | 
|  |  | 
|  | button-1 { | 
|  | label = "button_1"; | 
|  | gpios = <&pioA 26 GPIO_ACTIVE_LOW>; | 
|  | linux,code = <257>; | 
|  | wakeup-source; | 
|  | }; | 
|  |  | 
|  | button-2 { | 
|  | label = "button_2"; | 
|  | gpios = <&pioA 25 GPIO_ACTIVE_LOW>; | 
|  | linux,code = <258>; | 
|  | wakeup-source; | 
|  | }; | 
|  |  | 
|  | button-3 { | 
|  | label = "button_3"; | 
|  | gpios = <&pioA 24 GPIO_ACTIVE_LOW>; | 
|  | linux,code = <259>; | 
|  | wakeup-source; | 
|  | }; | 
|  | }; | 
|  | }; |