# 1 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/mgms.dts"
# 1 "<built-in>"
# 1 "<command-line>"
# 1 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/mgms.dts"
# 9 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/mgms.dts"
/dts-v1/;
# 1 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/stamp9g20.dtsi" 1
# 9 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/stamp9g20.dtsi"
# 1 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/at91sam9g20.dtsi" 1
# 9 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/at91sam9g20.dtsi"
# 1 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/at91sam9260.dtsi" 1
# 11 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/at91sam9260.dtsi"
# 1 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/skeleton.dtsi" 1
# 11 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/skeleton.dtsi"
/ {
 #address-cells = <1>;
 #size-cells = <1>;
 chosen { };
 aliases { };
 memory { device_type = "memory"; reg = <0 0>; };
};
# 12 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/at91sam9260.dtsi" 2
# 1 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/include/dt-bindings/pinctrl/at91.h" 1
# 13 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/at91sam9260.dtsi" 2
# 1 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/include/dt-bindings/interrupt-controller/irq.h" 1
# 14 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/at91sam9260.dtsi" 2
# 1 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/include/dt-bindings/gpio/gpio.h" 1
# 15 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/at91sam9260.dtsi" 2
# 1 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/include/dt-bindings/clock/at91.h" 1
# 16 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/at91sam9260.dtsi" 2

/ {
 model = "Atmel AT91SAM9260 family SoC";
 compatible = "atmel,at91sam9260";
 interrupt-parent = <&aic>;

 aliases {
  serial0 = &dbgu;
  serial1 = &usart0;
  serial2 = &usart1;
  serial3 = &usart2;
  serial4 = &usart3;
  serial5 = &uart0;
  serial6 = &uart1;
  gpio0 = &pioA;
  gpio1 = &pioB;
  gpio2 = &pioC;
  tcb0 = &tcb0;
  tcb1 = &tcb1;
  i2c0 = &i2c0;
  ssc0 = &ssc0;
 };
 cpus {
  #address-cells = <0>;
  #size-cells = <0>;

  cpu {
   compatible = "arm,arm926ej-s";
   device_type = "cpu";
  };
 };

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

 clocks {
  slow_xtal: slow_xtal {
   compatible = "fixed-clock";
   #clock-cells = <0>;
   clock-frequency = <0>;
  };

  main_xtal: main_xtal {
   compatible = "fixed-clock";
   #clock-cells = <0>;
   clock-frequency = <0>;
  };

  adc_op_clk: adc_op_clk{
   compatible = "fixed-clock";
   #clock-cells = <0>;
   clock-frequency = <5000000>;
  };
 };

 sram0: sram@002ff000 {
  compatible = "mmio-sram";
  reg = <0x002ff000 0x2000>;
 };

 ahb {
  compatible = "simple-bus";
  #address-cells = <1>;
  #size-cells = <1>;
  ranges;

  apb {
   compatible = "simple-bus";
   #address-cells = <1>;
   #size-cells = <1>;
   ranges;

   aic: interrupt-controller@fffff000 {
    #interrupt-cells = <3>;
    compatible = "atmel,at91rm9200-aic";
    interrupt-controller;
    reg = <0xfffff000 0x200>;
    atmel,external-irqs = <29 30 31>;
   };

   ramc0: ramc@ffffea00 {
    compatible = "atmel,at91sam9260-sdramc";
    reg = <0xffffea00 0x200>;
   };

   pmc: pmc@fffffc00 {
    compatible = "atmel,at91sam9260-pmc", "syscon";
    reg = <0xfffffc00 0x100>;
    interrupts = <1 4 7>;
    interrupt-controller;
    #address-cells = <1>;
    #size-cells = <0>;
    #interrupt-cells = <1>;

    main_osc: main_osc {
     compatible = "atmel,at91rm9200-clk-main-osc";
     #clock-cells = <0>;
     interrupts-extended = <&pmc 0>;
     clocks = <&main_xtal>;
    };

    main: mainck {
     compatible = "atmel,at91rm9200-clk-main";
     #clock-cells = <0>;
     clocks = <&main_osc>;
    };

    slow_rc_osc: slow_rc_osc {
     compatible = "fixed-clock";
     #clock-cells = <0>;
     clock-frequency = <32768>;
     clock-accuracy = <50000000>;
    };

    clk32k: slck {
     compatible = "atmel,at91sam9260-clk-slow";
     #clock-cells = <0>;
     clocks = <&slow_rc_osc>, <&slow_xtal>;
    };

    plla: pllack {
     compatible = "atmel,at91rm9200-clk-pll";
     #clock-cells = <0>;
     interrupts-extended = <&pmc 1>;
     clocks = <&main>;
     reg = <0>;
     atmel,clk-input-range = <1000000 32000000>;
     #atmel,pll-clk-output-range-cells = <4>;
     atmel,pll-clk-output-ranges = <80000000 160000000 0 1>,
        <150000000 240000000 2 1>;
    };

    pllb: pllbck {
     compatible = "atmel,at91rm9200-clk-pll";
     #clock-cells = <0>;
     interrupts-extended = <&pmc 2>;
     clocks = <&main>;
     reg = <1>;
     atmel,clk-input-range = <1000000 5000000>;
     #atmel,pll-clk-output-range-cells = <4>;
     atmel,pll-clk-output-ranges = <70000000 130000000 1 1>;
    };

    mck: masterck {
     compatible = "atmel,at91rm9200-clk-master";
     #clock-cells = <0>;
     interrupts-extended = <&pmc 3>;
     clocks = <&clk32k>, <&main>, <&plla>, <&pllb>;
     atmel,clk-output-range = <0 105000000>;
     atmel,clk-divisors = <1 2 4 0>;
    };

    usb: usbck {
     compatible = "atmel,at91rm9200-clk-usb";
     #clock-cells = <0>;
     atmel,clk-divisors = <1 2 4 0>;
     clocks = <&pllb>;
    };

    prog: progck {
     compatible = "atmel,at91rm9200-clk-programmable";
     #address-cells = <1>;
     #size-cells = <0>;
     interrupt-parent = <&pmc>;
     clocks = <&clk32k>, <&main>, <&plla>, <&pllb>;

     prog0: prog0 {
      #clock-cells = <0>;
      reg = <0>;
      interrupts = <(8 + (0))>;
     };

     prog1: prog1 {
      #clock-cells = <0>;
      reg = <1>;
      interrupts = <(8 + (1))>;
     };
    };

    systemck {
     compatible = "atmel,at91rm9200-clk-system";
     #address-cells = <1>;
     #size-cells = <0>;

     uhpck: uhpck {
      #clock-cells = <0>;
      reg = <6>;
      clocks = <&usb>;
     };

     udpck: udpck {
      #clock-cells = <0>;
      reg = <7>;
      clocks = <&usb>;
     };

     pck0: pck0 {
      #clock-cells = <0>;
      reg = <8>;
      clocks = <&prog0>;
     };

     pck1: pck1 {
      #clock-cells = <0>;
      reg = <9>;
      clocks = <&prog1>;
     };
    };

    periphck {
     compatible = "atmel,at91rm9200-clk-peripheral";
     #address-cells = <1>;
     #size-cells = <0>;
     clocks = <&mck>;

     pioA_clk: pioA_clk {
      #clock-cells = <0>;
      reg = <2>;
     };

     pioB_clk: pioB_clk {
      #clock-cells = <0>;
      reg = <3>;
     };

     pioC_clk: pioC_clk {
      #clock-cells = <0>;
      reg = <4>;
     };

     adc_clk: adc_clk {
      #clock-cells = <0>;
      reg = <5>;
     };

     usart0_clk: usart0_clk {
      #clock-cells = <0>;
      reg = <6>;
     };

     usart1_clk: usart1_clk {
      #clock-cells = <0>;
      reg = <7>;
     };

     usart2_clk: usart2_clk {
      #clock-cells = <0>;
      reg = <8>;
     };

     mci0_clk: mci0_clk {
      #clock-cells = <0>;
      reg = <9>;
     };

     udc_clk: udc_clk {
      #clock-cells = <0>;
      reg = <10>;
     };

     twi0_clk: twi0_clk {
      reg = <11>;
      #clock-cells = <0>;
     };

     spi0_clk: spi0_clk {
      #clock-cells = <0>;
      reg = <12>;
     };

     spi1_clk: spi1_clk {
      #clock-cells = <0>;
      reg = <13>;
     };

     ssc0_clk: ssc0_clk {
      #clock-cells = <0>;
      reg = <14>;
     };

     tc0_clk: tc0_clk {
      #clock-cells = <0>;
      reg = <17>;
     };

     tc1_clk: tc1_clk {
      #clock-cells = <0>;
      reg = <18>;
     };

     tc2_clk: tc2_clk {
      #clock-cells = <0>;
      reg = <19>;
     };

     ohci_clk: ohci_clk {
      #clock-cells = <0>;
      reg = <20>;
     };

     macb0_clk: macb0_clk {
      #clock-cells = <0>;
      reg = <21>;
     };

     isi_clk: isi_clk {
      #clock-cells = <0>;
      reg = <22>;
     };

     usart3_clk: usart3_clk {
      #clock-cells = <0>;
      reg = <23>;
     };

     uart0_clk: uart0_clk {
      #clock-cells = <0>;
      reg = <24>;
     };

     uart1_clk: uart1_clk {
      #clock-cells = <0>;
      reg = <25>;
     };

     tc3_clk: tc3_clk {
      #clock-cells = <0>;
      reg = <26>;
     };

     tc4_clk: tc4_clk {
      #clock-cells = <0>;
      reg = <27>;
     };

     tc5_clk: tc5_clk {
      #clock-cells = <0>;
      reg = <28>;
     };
    };
   };

   rstc@fffffd00 {
    compatible = "atmel,at91sam9260-rstc";
    reg = <0xfffffd00 0x10>;
    clocks = <&clk32k>;
   };

   shdwc@fffffd10 {
    compatible = "atmel,at91sam9260-shdwc";
    reg = <0xfffffd10 0x10>;
    clocks = <&clk32k>;
   };

   pit: timer@fffffd30 {
    compatible = "atmel,at91sam9260-pit";
    reg = <0xfffffd30 0xf>;
    interrupts = <1 4 7>;
    clocks = <&mck>;
   };

   tcb0: timer@fffa0000 {
    compatible = "atmel,at91rm9200-tcb";
    reg = <0xfffa0000 0x100>;
    interrupts = <17 4 0
           18 4 0
           19 4 0>;
    clocks = <&tc0_clk>, <&tc1_clk>, <&tc2_clk>, <&clk32k>;
    clock-names = "t0_clk", "t1_clk", "t2_clk", "slow_clk";
   };

   tcb1: timer@fffdc000 {
    compatible = "atmel,at91rm9200-tcb";
    reg = <0xfffdc000 0x100>;
    interrupts = <26 4 0
           27 4 0
           28 4 0>;
    clocks = <&tc3_clk>, <&tc4_clk>, <&tc5_clk>, <&clk32k>;
    clock-names = "t0_clk", "t1_clk", "t2_clk", "slow_clk";
   };

   pinctrl@fffff400 {
    #address-cells = <1>;
    #size-cells = <1>;
    compatible = "atmel,at91rm9200-pinctrl", "simple-bus";
    ranges = <0xfffff400 0xfffff400 0x600>;

    atmel,mux-mask = <

           0xffffffff 0xffc00c3b
           0xffffffff 0x7fff3ccf
           0xffffffff 0x007fffff
          >;


    dbgu {
     pinctrl_dbgu: dbgu-0 {
      atmel,pins =
       <1 14 1 (1 << 0)
        1 15 1 (0 << 0)>;
     };
    };

    usart0 {
     pinctrl_usart0: usart0-0 {
      atmel,pins =
       <1 4 1 (0 << 0)
        1 5 1 (0 << 0)>;
     };

     pinctrl_usart0_rts: usart0_rts-0 {
      atmel,pins =
       <1 26 1 (0 << 0)>;
     };

     pinctrl_usart0_cts: usart0_cts-0 {
      atmel,pins =
       <1 27 1 (0 << 0)>;
     };

     pinctrl_usart0_dtr_dsr: usart0_dtr_dsr-0 {
      atmel,pins =
       <1 24 1 (0 << 0)
        1 22 1 (0 << 0)>;
     };

     pinctrl_usart0_dcd: usart0_dcd-0 {
      atmel,pins =
       <1 23 1 (0 << 0)>;
     };

     pinctrl_usart0_ri: usart0_ri-0 {
      atmel,pins =
       <1 25 1 (0 << 0)>;
     };
    };

    usart1 {
     pinctrl_usart1: usart1-0 {
      atmel,pins =
       <1 6 1 (1 << 0)
        1 7 1 (0 << 0)>;
     };

     pinctrl_usart1_rts: usart1_rts-0 {
      atmel,pins =
       <1 28 1 (0 << 0)>;
     };

     pinctrl_usart1_cts: usart1_cts-0 {
      atmel,pins =
       <1 29 1 (0 << 0)>;
     };
    };

    usart2 {
     pinctrl_usart2: usart2-0 {
      atmel,pins =
       <1 8 1 (1 << 0)
        1 9 1 (0 << 0)>;
     };

     pinctrl_usart2_rts: usart2_rts-0 {
      atmel,pins =
       <0 4 1 (0 << 0)>;
     };

     pinctrl_usart2_cts: usart2_cts-0 {
      atmel,pins =
       <0 5 1 (0 << 0)>;
     };
    };

    usart3 {
     pinctrl_usart3: usart3-0 {
      atmel,pins =
       <1 10 1 (1 << 0)
        1 11 1 (0 << 0)>;
     };

     pinctrl_usart3_rts: usart3_rts-0 {
      atmel,pins =
       <2 8 2 (0 << 0)>;
     };

     pinctrl_usart3_cts: usart3_cts-0 {
      atmel,pins =
       <2 10 2 (0 << 0)>;
     };
    };

    uart0 {
     pinctrl_uart0: uart0-0 {
      atmel,pins =
       <0 31 2 (1 << 0)
        0 30 2 (0 << 0)>;
     };
    };

    uart1 {
     pinctrl_uart1: uart1-0 {
      atmel,pins =
       <1 12 1 (1 << 0)
        1 13 1 (0 << 0)>;
     };
    };

    nand {
     pinctrl_nand: nand-0 {
      atmel,pins =
       <2 13 0 (1 << 0)
        2 14 0 (1 << 0)>;
     };
    };

    macb {
     pinctrl_macb_rmii: macb_rmii-0 {
      atmel,pins =
       <0 12 1 (0 << 0)
        0 13 1 (0 << 0)
        0 14 1 (0 << 0)
        0 15 1 (0 << 0)
        0 16 1 (0 << 0)
        0 17 1 (0 << 0)
        0 18 1 (0 << 0)
        0 19 1 (0 << 0)
        0 20 1 (0 << 0)
        0 21 1 (0 << 0)>;
     };

     pinctrl_macb_rmii_mii: macb_rmii_mii-0 {
      atmel,pins =
       <0 22 2 (0 << 0)
        0 23 2 (0 << 0)
        0 24 2 (0 << 0)
        0 25 2 (0 << 0)
        0 26 2 (0 << 0)
        0 27 2 (0 << 0)
        0 28 2 (0 << 0)
        0 29 2 (0 << 0)>;
     };

     pinctrl_macb_rmii_mii_alt: macb_rmii_mii-1 {
      atmel,pins =
       <0 10 2 (0 << 0)
        0 11 2 (0 << 0)
        0 22 2 (0 << 0)
        0 25 2 (0 << 0)
        0 26 2 (0 << 0)
        0 27 2 (0 << 0)
        0 28 2 (0 << 0)
        0 29 2 (0 << 0)>;
     };
    };

    mmc0 {
     pinctrl_mmc0_clk: mmc0_clk-0 {
      atmel,pins =
       <0 8 1 (0 << 0)>;
     };

     pinctrl_mmc0_slot0_cmd_dat0: mmc0_slot0_cmd_dat0-0 {
      atmel,pins =
       <0 7 1 (1 << 0)
        0 6 1 (1 << 0)>;
     };

     pinctrl_mmc0_slot0_dat1_3: mmc0_slot0_dat1_3-0 {
      atmel,pins =
       <0 9 1 (1 << 0)
        0 10 1 (1 << 0)
        0 11 1 (1 << 0)>;
     };

     pinctrl_mmc0_slot1_cmd_dat0: mmc0_slot1_cmd_dat0-0 {
      atmel,pins =
       <0 1 2 (1 << 0)
        0 0 2 (1 << 0)>;
     };

     pinctrl_mmc0_slot1_dat1_3: mmc0_slot1_dat1_3-0 {
      atmel,pins =
       <0 5 2 (1 << 0)
        0 4 2 (1 << 0)
        0 3 2 (1 << 0)>;
     };
    };

    ssc0 {
     pinctrl_ssc0_tx: ssc0_tx-0 {
      atmel,pins =
       <1 16 1 (0 << 0)
        1 17 1 (0 << 0)
        1 18 1 (0 << 0)>;
     };

     pinctrl_ssc0_rx: ssc0_rx-0 {
      atmel,pins =
       <1 19 1 (0 << 0)
        1 20 1 (0 << 0)
        1 21 1 (0 << 0)>;
     };
    };

    spi0 {
     pinctrl_spi0: spi0-0 {
      atmel,pins =
       <0 0 1 (0 << 0)
        0 1 1 (0 << 0)
        0 2 1 (0 << 0)>;
     };
    };

    spi1 {
     pinctrl_spi1: spi1-0 {
      atmel,pins =
       <1 0 1 (0 << 0)
        1 1 1 (0 << 0)
        1 2 1 (0 << 0)>;
     };
    };

    i2c_gpio0 {
     pinctrl_i2c_gpio0: i2c_gpio0-0 {
      atmel,pins =
       <0 23 0 (1 << 1)
        0 24 0 (1 << 1)>;
     };
    };

    tcb0 {
     pinctrl_tcb0_tclk0: tcb0_tclk0-0 {
      atmel,pins = <0 25 1 (0 << 0)>;
     };

     pinctrl_tcb0_tclk1: tcb0_tclk1-0 {
      atmel,pins = <1 6 2 (0 << 0)>;
     };

     pinctrl_tcb0_tclk2: tcb0_tclk2-0 {
      atmel,pins = <1 7 2 (0 << 0)>;
     };

     pinctrl_tcb0_tioa0: tcb0_tioa0-0 {
      atmel,pins = <0 26 1 (0 << 0)>;
     };

     pinctrl_tcb0_tioa1: tcb0_tioa1-0 {
      atmel,pins = <0 27 1 (0 << 0)>;
     };

     pinctrl_tcb0_tioa2: tcb0_tioa2-0 {
      atmel,pins = <0 28 1 (0 << 0)>;
     };

     pinctrl_tcb0_tiob0: tcb0_tiob0-0 {
      atmel,pins = <2 9 2 (0 << 0)>;
     };

     pinctrl_tcb0_tiob1: tcb0_tiob1-0 {
      atmel,pins = <2 7 1 (0 << 0)>;
     };

     pinctrl_tcb0_tiob2: tcb0_tiob2-0 {
      atmel,pins = <2 6 1 (0 << 0)>;
     };
    };

    tcb1 {
     pinctrl_tcb1_tclk0: tcb1_tclk0-0 {
      atmel,pins = <1 16 2 (0 << 0)>;
     };

     pinctrl_tcb1_tclk1: tcb1_tclk1-0 {
      atmel,pins = <1 17 2 (0 << 0)>;
     };

     pinctrl_tcb1_tclk2: tcb1_tclk2-0 {
      atmel,pins = <2 22 2 (0 << 0)>;
     };

     pinctrl_tcb1_tioa0: tcb1_tioa0-0 {
      atmel,pins = <1 0 2 (0 << 0)>;
     };

     pinctrl_tcb1_tioa1: tcb1_tioa1-0 {
      atmel,pins = <1 2 2 (0 << 0)>;
     };

     pinctrl_tcb1_tioa2: tcb1_tioa2-0 {
      atmel,pins = <1 3 2 (0 << 0)>;
     };

     pinctrl_tcb1_tiob0: tcb1_tiob0-0 {
      atmel,pins = <1 1 2 (0 << 0)>;
     };

     pinctrl_tcb1_tiob1: tcb1_tiob1-0 {
      atmel,pins = <1 18 2 (0 << 0)>;
     };

     pinctrl_tcb1_tiob2: tcb1_tiob2-0 {
      atmel,pins = <1 19 2 (0 << 0)>;
     };
    };

    pioA: gpio@fffff400 {
     compatible = "atmel,at91rm9200-gpio";
     reg = <0xfffff400 0x200>;
     interrupts = <2 4 1>;
     #gpio-cells = <2>;
     gpio-controller;
     interrupt-controller;
     #interrupt-cells = <2>;
     clocks = <&pioA_clk>;
    };

    pioB: gpio@fffff600 {
     compatible = "atmel,at91rm9200-gpio";
     reg = <0xfffff600 0x200>;
     interrupts = <3 4 1>;
     #gpio-cells = <2>;
     gpio-controller;
     interrupt-controller;
     #interrupt-cells = <2>;
     clocks = <&pioB_clk>;
    };

    pioC: gpio@fffff800 {
     compatible = "atmel,at91rm9200-gpio";
     reg = <0xfffff800 0x200>;
     interrupts = <4 4 1>;
     #gpio-cells = <2>;
     gpio-controller;
     interrupt-controller;
     #interrupt-cells = <2>;
     clocks = <&pioC_clk>;
    };
   };

   dbgu: serial@fffff200 {
    compatible = "atmel,at91sam9260-dbgu", "atmel,at91sam9260-usart";
    reg = <0xfffff200 0x200>;
    interrupts = <1 4 7>;
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_dbgu>;
    clocks = <&mck>;
    clock-names = "usart";
    status = "disabled";
   };

   usart0: serial@fffb0000 {
    compatible = "atmel,at91sam9260-usart";
    reg = <0xfffb0000 0x200>;
    interrupts = <6 4 5>;
    atmel,use-dma-rx;
    atmel,use-dma-tx;
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_usart0>;
    clocks = <&usart0_clk>;
    clock-names = "usart";
    status = "disabled";
   };

   usart1: serial@fffb4000 {
    compatible = "atmel,at91sam9260-usart";
    reg = <0xfffb4000 0x200>;
    interrupts = <7 4 5>;
    atmel,use-dma-rx;
    atmel,use-dma-tx;
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_usart1>;
    clocks = <&usart1_clk>;
    clock-names = "usart";
    status = "disabled";
   };

   usart2: serial@fffb8000 {
    compatible = "atmel,at91sam9260-usart";
    reg = <0xfffb8000 0x200>;
    interrupts = <8 4 5>;
    atmel,use-dma-rx;
    atmel,use-dma-tx;
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_usart2>;
    clocks = <&usart2_clk>;
    clock-names = "usart";
    status = "disabled";
   };

   usart3: serial@fffd0000 {
    compatible = "atmel,at91sam9260-usart";
    reg = <0xfffd0000 0x200>;
    interrupts = <23 4 5>;
    atmel,use-dma-rx;
    atmel,use-dma-tx;
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_usart3>;
    clocks = <&usart3_clk>;
    clock-names = "usart";
    status = "disabled";
   };

   uart0: serial@fffd4000 {
    compatible = "atmel,at91sam9260-usart";
    reg = <0xfffd4000 0x200>;
    interrupts = <24 4 5>;
    atmel,use-dma-rx;
    atmel,use-dma-tx;
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_uart0>;
    clocks = <&uart0_clk>;
    clock-names = "usart";
    status = "disabled";
   };

   uart1: serial@fffd8000 {
    compatible = "atmel,at91sam9260-usart";
    reg = <0xfffd8000 0x200>;
    interrupts = <25 4 5>;
    atmel,use-dma-rx;
    atmel,use-dma-tx;
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_uart1>;
    clocks = <&uart1_clk>;
    clock-names = "usart";
    status = "disabled";
   };

   macb0: ethernet@fffc4000 {
    compatible = "cdns,at91sam9260-macb", "cdns,macb";
    reg = <0xfffc4000 0x100>;
    interrupts = <21 4 3>;
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_macb_rmii>;
    clocks = <&macb0_clk>, <&macb0_clk>;
    clock-names = "hclk", "pclk";
    status = "disabled";
   };

   usb1: gadget@fffa4000 {
    compatible = "atmel,at91sam9260-udc";
    reg = <0xfffa4000 0x4000>;
    interrupts = <10 4 2>;
    clocks = <&udc_clk>, <&udpck>;
    clock-names = "pclk", "hclk";
    status = "disabled";
   };

   i2c0: i2c@fffac000 {
    compatible = "atmel,at91sam9260-i2c";
    reg = <0xfffac000 0x100>;
    interrupts = <11 4 6>;
    #address-cells = <1>;
    #size-cells = <0>;
    clocks = <&twi0_clk>;
    status = "disabled";
   };

   mmc0: mmc@fffa8000 {
    compatible = "atmel,hsmci";
    reg = <0xfffa8000 0x600>;
    interrupts = <9 4 0>;
    #address-cells = <1>;
    #size-cells = <0>;
    pinctrl-names = "default";
    clocks = <&mci0_clk>;
    clock-names = "mci_clk";
    status = "disabled";
   };

   ssc0: ssc@fffbc000 {
    compatible = "atmel,at91rm9200-ssc";
    reg = <0xfffbc000 0x4000>;
    interrupts = <14 4 5>;
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_ssc0_tx &pinctrl_ssc0_rx>;
    clocks = <&ssc0_clk>;
    clock-names = "pclk";
    status = "disabled";
   };

   spi0: spi@fffc8000 {
    #address-cells = <1>;
    #size-cells = <0>;
    compatible = "atmel,at91rm9200-spi";
    reg = <0xfffc8000 0x200>;
    interrupts = <12 4 3>;
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_spi0>;
    clocks = <&spi0_clk>;
    clock-names = "spi_clk";
    status = "disabled";
   };

   spi1: spi@fffcc000 {
    #address-cells = <1>;
    #size-cells = <0>;
    compatible = "atmel,at91rm9200-spi";
    reg = <0xfffcc000 0x200>;
    interrupts = <13 4 3>;
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_spi1>;
    clocks = <&spi1_clk>;
    clock-names = "spi_clk";
    status = "disabled";
   };

   adc0: adc@fffe0000 {
    #address-cells = <1>;
    #size-cells = <0>;
    compatible = "atmel,at91sam9260-adc";
    reg = <0xfffe0000 0x100>;
    interrupts = <5 4 0>;
    clocks = <&adc_clk>, <&adc_op_clk>;
    clock-names = "adc_clk", "adc_op_clk";
    atmel,adc-use-external-triggers;
    atmel,adc-channels-used = <0xf>;
    atmel,adc-vref = <3300>;
    atmel,adc-startup-time = <15>;
    atmel,adc-res = <8 10>;
    atmel,adc-res-names = "lowres", "highres";
    atmel,adc-use-res = "highres";

    trigger0 {
     trigger-name = "timer-counter-0";
     trigger-value = <0x1>;
    };
    trigger1 {
     trigger-name = "timer-counter-1";
     trigger-value = <0x3>;
    };

    trigger2 {
     trigger-name = "timer-counter-2";
     trigger-value = <0x5>;
    };

    trigger3 {
     trigger-name = "external";
     trigger-value = <0xd>;
     trigger-external;
    };
   };

   rtc@fffffd20 {
    compatible = "atmel,at91sam9260-rtt";
    reg = <0xfffffd20 0x10>;
    interrupts = <1 4 7>;
    clocks = <&clk32k>;
    status = "disabled";
   };

   watchdog@fffffd40 {
    compatible = "atmel,at91sam9260-wdt";
    reg = <0xfffffd40 0x10>;
    interrupts = <1 4 7>;
    clocks = <&clk32k>;
    atmel,watchdog-type = "hardware";
    atmel,reset-type = "all";
    atmel,dbg-halt;
    status = "disabled";
   };

   gpbr: syscon@fffffd50 {
    compatible = "atmel,at91sam9260-gpbr", "syscon";
    reg = <0xfffffd50 0x10>;
    status = "disabled";
   };
  };

  nand0: nand@40000000 {
   compatible = "atmel,at91rm9200-nand";
   #address-cells = <1>;
   #size-cells = <1>;
   reg = <0x40000000 0x10000000
          0xffffe800 0x200
         >;
   atmel,nand-addr-offset = <21>;
   atmel,nand-cmd-offset = <22>;
   pinctrl-names = "default";
   pinctrl-0 = <&pinctrl_nand>;
   gpios = <&pioC 13 0
     &pioC 14 0
     0
    >;
   status = "disabled";
  };

  usb0: ohci@500000 {
   compatible = "atmel,at91rm9200-ohci", "usb-ohci";
   reg = <0x00500000 0x100000>;
   interrupts = <20 4 2>;
   clocks = <&ohci_clk>, <&ohci_clk>, <&uhpck>;
   clock-names = "ohci_clk", "hclk", "uhpck";
   status = "disabled";
  };
 };

 i2c-gpio-0 {
  compatible = "i2c-gpio";
  gpios = <&pioA 23 0
    &pioA 24 0
   >;
  i2c-gpio,sda-open-drain;
  i2c-gpio,scl-open-drain;
  i2c-gpio,delay-us = <2>;
  #address-cells = <1>;
  #size-cells = <0>;
  pinctrl-names = "default";
  pinctrl-0 = <&pinctrl_i2c_gpio0>;
  status = "disabled";
 };
};
# 10 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/at91sam9g20.dtsi" 2

/ {
 model = "Atmel AT91SAM9G20 family SoC";
 compatible = "atmel,at91sam9g20";

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

 sram0: sram@002ff000 {
  status = "disabled";
 };

 sram1: sram@002fc000 {
  compatible = "mmio-sram";
  reg = <0x002fc000 0x8000>;
 };

 ahb {
  apb {
   i2c0: i2c@fffac000 {
    compatible = "atmel,at91sam9g20-i2c";
   };

   ssc0: ssc@fffbc000 {
    compatible = "atmel,at91sam9rl-ssc";
   };

   adc0: adc@fffe0000 {
    atmel,adc-startup-time = <40>;
   };

   pmc: pmc@fffffc00 {
    plla: pllack {
     atmel,clk-input-range = <2000000 32000000>;
     atmel,pll-clk-output-ranges = <745000000 800000000 0 0>,
        <695000000 750000000 1 0>,
        <645000000 700000000 2 0>,
        <595000000 650000000 3 0>,
        <545000000 600000000 0 1>,
        <495000000 550000000 1 1>,
        <445000000 500000000 2 1>,
        <400000000 450000000 3 1>;
    };

    pllb: pllbck {
     compatible = "atmel,at91sam9g20-clk-pllb";
     atmel,clk-input-range = <2000000 32000000>;
     atmel,pll-clk-output-ranges = <30000000 100000000 0 0>;
    };

    mck: masterck {
     atmel,clk-output-range = <0 133000000>;
     atmel,clk-divisors = <1 2 4 6>;
    };
   };
  };
 };
};
# 10 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/stamp9g20.dtsi" 2

/ {

 chosen {

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

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

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

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

 ahb {
  apb {
   pinctrl@fffff400 {
    board {
     pinctrl_pck0_as_mck: pck0_as_mck {
      atmel,pins =
       <2 1 2 (0 << 0)>;
     };

    };

    mmc0_slot0 {
     pinctrl_board_mmc0_slot0: mmc0_slot0-board {
      atmel,pins =
       <2 12 0 ((1 << 0) | (1 << 2))>;
     };
    };
   };

   mmc0: mmc@fffa8000 {
    pinctrl-0 = <
     &pinctrl_board_mmc0_slot0
     &pinctrl_mmc0_clk
     &pinctrl_mmc0_slot0_cmd_dat0
     &pinctrl_mmc0_slot0_dat1_3>;
    status = "okay";
    slot@0 {
     reg = <0>;
     bus-width = <4>;
     cd-gpios = <&pioC 12 0>;
    };
   };

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

   ssc0: ssc@fffbc000 {
    status = "okay";
    pinctrl-0 = <&pinctrl_ssc0_tx>;
   };

   spi0: spi@fffc8000 {
    status = "okay";
    cs-gpios = <0>, <&pioC 11 0>, <0>, <0>;
    mtd_dataflash@0 {
     compatible = "atmel,AT45DB011B", "atmel,at45", "atmel,dataflash";
     spi-max-frequency = <10000000>;
     reg = <1>;

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

      partition@0 {
       label = "at91bootstrap";
       reg = <0x0 0x21000>;
      };
     };
    };
   };

   shdwc@fffffd10 {
    atmel,wakeup-counter = <10>;
    atmel,wakeup-rtt-timer;
   };

   rtc@fffffd20 {
    atmel,rtt-rtc-time-reg = <&gpbr 0x0>;
    status = "okay";
   };

   watchdog@fffffd40 {
    status = "okay";
   };

   gpbr: syscon@fffffd50 {
    status = "okay";
   };
  };

  nand0: nand@40000000 {
   nand-bus-width = <8>;
   nand-ecc-mode = "soft_bch";
   nand-on-flash-bbt;
   status = "okay";

   at91bootstrap@0 {
    label = "at91bootstrap";
    reg = <0x0 0x20000>;
   };

   barebox@20000 {
    label = "barebox";
    reg = <0x20000 0x40000>;
   };

   bareboxenv@60000 {
    label = "bareboxenv";
    reg = <0x60000 0x20000>;
   };

   bareboxenv2@80000 {
    label = "bareboxenv2";
    reg = <0x80000 0x20000>;
   };

   oftree@80000 {
    label = "oftree";
    reg = <0xa0000 0x20000>;
   };

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

   rootfs@4a0000 {
    label = "rootfs";
    reg = <0x4c0000 0x7800000>;
   };

   data@7ca0000 {
    label = "data";
    reg = <0x7cc0000 0x8340000>;
   };
  };
 };
};
# 11 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/mgms.dts" 2
# 1 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/include/dt-bindings/input/linux-event-codes.h" 1
# 12 "/home/plyatov/development/linux-linux4sam/arch/arm/boot/dts/mgms.dts" 2






/ {
 model = "GS_MGMS_CPU";
 compatible = "atmel,at91sam9g20ek", "atmel,at91sam9g20", "atmel,at91sam9";

 aliases {
  spi0 = &spi0;
  spi1 = &spi1;
 };

 ahb {
  apb{
   macb0: ethernet@fffc4000 {
    phy-mode = "rmii";
    status = "okay";
   };






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



   usart1: serial@fffb4000 {
    pinctrl-0 =
     <&pinctrl_usart1
      &pinctrl_usart1_rts
      &pinctrl_usart1_cts>;
    status = "okay";
   };



   usart2: serial@fffb8000 {
    pinctrl-0 =
     <&pinctrl_usart2
      &pinctrl_usart2_rts
      &pinctrl_usart2_cts>;
    status = "okay";
   };


   usart3: serial@fffd0000 {
    pinctrl-0 =
     <&pinctrl_usart3
      &pinctrl_usart3_rts>;
    status = "okay";
   };




   usb1: gadget@fffa4000 {
    atmel,vbus-gpio = <&pioA 22 0>;
    status = "okay";
   };

   pinctrl@fffff400 {
    spi1 {
     pinctrl_spi1cs: spi1cs-0 {
      atmel,pins =
       <1 3 1 (0 << 0)>;
     };
    };

    gpio_keys {
     pinctrl_shutdown: shutdown {
      atmel,pins = <0 25 0 (1 << 2)>;
     };
    };
   };
  };
 };

 i2c-gpio-0 {
  status = "okay";

  24c512@50 {
   compatible = "24c512";
   reg = <0x50>;
  };

  tca9535_20: tca9535@20 {
   compatible = "nxp,pca9535";
   gpio-controller;
   #gpio-cells = <2>;
   reg = <0x20>;
  };

  tca9535_24: tca9535@24 {
   compatible = "nxp,pca9535";
   gpio-controller;
   #gpio-cells = <2>;
   reg = <0x24>;
  };

  rtc@68 {
   compatible = "dallas,ds1340";
   trickle-resistor-ohms = <250>;
   trickle-diode-disable;
   reg = <0x68>;
  };
 };

 leds {
  compatible = "gpio-leds";

  rxd2_source {
   label = "rxd2_source";
   gpios = <&tca9535_20 10 0>;
   default-state = "on";
  };

  trigger_out {
   label = "gpo:trig_net_out";
   gpios = <&pioB 20 0>;
   default-state = "off";
  };
 };

 leds2 {



  compatible = "gpio-leds";

  trigger_dir {
   label = "gpo:trig_net_dir";
   gpios = <&tca9535_24 0 0>;
   default-state = "off";
  };
 };

 pps-generator0 {
  compatible = "pps-generator-gpio";
  output-gpios = <&pioB 12 0>;
  encoder = "tai";
 };

 pps-client0 {
  compatible = "pps-client-gpio";
  input-gpios = <&pioC 0 0>;
 };

 sup0 {
  compatible = "gs-mgms-sup";
  address = <0x38>;
  priority = <200>;
 };

 gpio_keys {
  compatible = "gpio-keys";

  eject {
   label = "Disk unmount button";
   linux,code = <161>;
   gpios = <&pioB 13 1>;
  };

  power_off {
   label = "Power Off Button";
   pinctrl-names = "default";
   pinctrl-0 = <&pinctrl_shutdown>;
   linux,code = <116>;
   gpios = <&pioA 25 0>;
  };

  trigger_in {
   label = "Trigger Input";
   linux,code = <0x101>;
   gpios = <&pioB 21 0>;
  };
 };
};

&spi1 {
 status = "okay";
 cs-gpios = <0>, <0>, <0>, <0>;
 pinctrl-0 = <&pinctrl_spi1 &pinctrl_spi1cs>;
 gs_mgms_dsp@0 {
  compatible = "geosig,gs_mgms_dsp";
  reg = <0>;
  #address-cells = <1>;
  #size-cells = <0>;
  spi-max-frequency = <6604800>;
  rdy-gpios = <&pioB 17 1>;
  reset-gpios = <&tca9535_20 8 0>;
  dsp_rdy-irqf_trigger_both;
  status = "okay";
  test-gpios = <&pioB 16 0>;
  test2-gpios = <&pioB 18 0>;
 };
};

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