daily pastebin goal
26%
SHARE
TWEET

Untitled

a guest Nov 2nd, 2016 13 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*
  2.  *
  3.  *  Copyright (C) 2016 Atmel,
  4.  *                2016 Nicolas Ferre <nicolas.ferre@atmel.com>
  5.  *        2016 Ludovic.Desroches <ludovic.desroches@atmel.com>
  6.  *
  7.  * This file is dual-licensed: you can use it either under the terms
  8.  * of the GPL or the X11 license, at your option. Note that this dual
  9.  * licensing only applies to this file, and not this project as a
  10.  * whole.
  11.  *
  12.  *  a) This file is free software; you can redistribute it and/or
  13.  *     modify it under the terms of the GNU General Public License as
  14.  *     published by the Free Software Foundation; either version 2 of the
  15.  *     License, or (at your option) any later version.
  16.  *
  17.  *     This file is distributed in the hope that it will be useful,
  18.  *     but WITHOUT ANY WARRANTY; without even the implied warranty of
  19.  *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  20.  *     GNU General Public License for more details.
  21.  *
  22.  * Or, alternatively,
  23.  *
  24.  *  b) Permission is hereby granted, free of charge, to any person
  25.  *     obtaining a copy of this software and associated documentation
  26.  *     files (the "Software"), to deal in the Software without
  27.  *     restriction, including without limitation the rights to use,
  28.  *     copy, modify, merge, publish, distribute, sublicense, and/or
  29.  *     sell copies of the Software, and to permit persons to whom the
  30.  *     Software is furnished to do so, subject to the following
  31.  *     conditions:
  32.  *
  33.  *     The above copyright notice and this permission notice shall be
  34.  *     included in all copies or substantial portions of the Software.
  35.  *
  36.  *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
  37.  *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
  38.  *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
  39.  *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
  40.  *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
  41.  *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
  42.  *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
  43.  *     OTHER DEALINGS IN THE SOFTWARE.
  44.  */
  45. #include "sama5d2.dtsi"
  46. #include "sama5d2-pinfunc.h"
  47. #include <dt-bindings/mfd/atmel-flexcom.h>
  48. #include <dt-bindings/gpio/gpio.h>
  49.  
  50. / {
  51.     model = "Atmel SAMA5D2 Xplained";
  52.     compatible = "atmel,sama5d2-xplained", "atmel,sama5d2", "atmel,sama5";
  53.  
  54.     chosen {
  55.         stdout-path = "serial0:115200n8";
  56.     };
  57.  
  58.     memory {
  59.         reg = <0x20000000 0x80000>;
  60.     };
  61.  
  62.     clocks {
  63.         slow_xtal {
  64.             clock-frequency = <32768>;
  65.         };
  66.  
  67.         main_xtal {
  68.             clock-frequency = <12000000>;
  69.         };
  70.     };
  71.  
  72.     ahb {
  73.         usb0: gadget@00300000 {
  74.             atmel,vbus-gpio = <&pioA 31 GPIO_ACTIVE_HIGH>;
  75.             pinctrl-names = "default";
  76.             pinctrl-0 = <&pinctrl_usba_vbus>;
  77.             status = "okay";
  78.         };
  79.  
  80.         usb1: ohci@00400000 {
  81.             num-ports = <3>;
  82.             atmel,vbus-gpio = <0 /* &pioA 41 GPIO_ACTIVE_HIGH */
  83.                        &pioA 42 GPIO_ACTIVE_HIGH
  84.                        0
  85.                       >;
  86.             pinctrl-names = "default";
  87.             pinctrl-0 = <&pinctrl_usb_default>;
  88.             status = "okay";
  89.         };
  90.        
  91.         nand0: nand@80000000 {
  92.             nand-bus-width = <8>;
  93.             nand-ecc-mode = "hw";
  94. /*          nand-on-flash-bbt;*/
  95.             pinctrl-names = "default";
  96.             pinctrl-0 = <&pinctrl_nand_default>;
  97.             status = "okay";
  98.  
  99.             bootstrap@0 {
  100.                 label = "bootstrap";
  101.                 reg = <0x0 0x10000>;
  102.             };
  103.  
  104.             kernel@10000 {
  105.                 label = "kernel";
  106.                 reg = <0x10000 0x1100000>;
  107.             };
  108.  
  109.             rootfs@2000000 {
  110.                 label = "rootfs";
  111.                 reg = <0x2000000 0x06000000>;
  112.             };
  113.         };
  114.  
  115.         usb2: ehci@00500000 {
  116.             status = "okay";
  117.         };
  118.  
  119.         sdmmc0: sdio-host@a0000000 {
  120.             bus-width = <8>;
  121.             pinctrl-names = "default";
  122.             pinctrl-0 = <&pinctrl_sdmmc0_default>;
  123.             non-removable;
  124.             mmc-ddr-1_8v;
  125.             status = "disable";
  126.         };
  127.  
  128.         sdmmc1: sdio-host@b0000000 {
  129.             bus-width = <4>;
  130.             pinctrl-names = "default";
  131.             pinctrl-0 = <&pinctrl_sdmmc1_default>;
  132.             status = "disable"; /* conflict with qspi0 */
  133.         };
  134.  
  135.         apb {
  136. /*          hlcdc: hlcdc@f0000000 {
  137.                 status = "disabled";
  138.  
  139.                 hlcdc-display-controller {
  140.                     pinctrl-names = "default";
  141.                     pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb666>;
  142.                 };
  143.  
  144.                 hlcdc_pwm: hlcdc-pwm {
  145.                     pinctrl-names = "default";
  146.                     pinctrl-0 = <&pinctrl_lcd_pwm>;
  147.                 };
  148.             };*/
  149.  
  150.             pmc: pmc@f0014000 {
  151.                 pmc_fast_restart {
  152.                     compatible = "atmel,sama5d2-pmc-fast-startup";
  153.                     #address-cells = <1>;
  154.                     #size-cells = <0>;
  155.  
  156.                     atmel,wakeup-rtc-timer;
  157.  
  158.                     wkpin: input@0 {
  159.                         reg = <0>;
  160.                     };
  161.  
  162.                     gmac_wol: input@10 {
  163.                         reg = <10>;
  164.                         atmel,wakeup-active-high;
  165.                     };
  166.                 };
  167.             };
  168.  
  169.             qspi0: spi@f0020000 {
  170.                 pinctrl-names = "default";
  171.                 pinctrl-0 = <&pinctrl_qspi0_default>;
  172.                 /*status = "okay";*/ /* conflict with sdmmc1 */
  173.  
  174.                 flash@0 {
  175.                     #address-cells = <1>;
  176.                     #size-cells = <1>;
  177.                     compatible = "jedec,spi-nor";
  178.                     reg = <0>;
  179.                     spi-max-frequency = <83000000>;
  180.                     m25p,fast-read;
  181.  
  182.                     at91bootstrap@00000000 {
  183.                         label = "at91bootstrap";
  184.                         reg = <0x00000000 0x00010000>;
  185.                     };
  186.  
  187.                     bootloaderenv@00010000 {
  188.                         label = "bootloader env";
  189.                         reg = <0x00010000 0x00010000>;
  190.                     };
  191.  
  192.                     bootloader@00020000 {
  193.                         label = "bootloader";
  194.                         reg = <0x00020000 0x00050000>;
  195.                     };
  196.  
  197.                     dtb@00070000 {
  198.                         label = "device tree";
  199.                         reg = <0x00070000 0x00010000>;
  200.                     };
  201.  
  202.                     kernel@00080000{
  203.                         label = "kernel";
  204.                         reg = <0x00080000 0x00380000>;
  205.                     };
  206.  
  207.                     rootfs@00400000 {
  208.                         label = "rootfs";
  209.                         reg = <0x00400000 0x00000000>;
  210.                     };
  211.                 };
  212.             };
  213.  
  214.             spi0: spi@f8000000 {
  215.                 pinctrl-names = "default";
  216.                 pinctrl-0 = <&pinctrl_spi0_default>;
  217.                 status = "okay";
  218.             };
  219.  
  220.             macb0: ethernet@f8008000 {
  221.                 pinctrl-names = "default";
  222.                 pinctrl-0 = <&pinctrl_macb0_default &pinctrl_macb0_phy_irq>;
  223.                 phy-mode = "rmii";
  224.                 status = "okay";
  225.  
  226.                 ethernet-phy@1 {
  227.                     reg = <0x1>;
  228.                     interrupt-parent = <&pioA>;
  229.                     interrupts = <73 IRQ_TYPE_LEVEL_LOW>;
  230.                 };
  231.             };
  232.  
  233.             pdmic@f8018000 {
  234.                 pinctrl-names = "default";
  235.                 pinctrl-0 = <&pinctrl_pdmic_default>;
  236.                 atmel,model = "PDMIC @ sama5d2_xplained";
  237.                 atmel,mic-min-freq = <1000000>;
  238.                 atmel,mic-max-freq = <3246000>;
  239.                 atmel,mic-offset = <0x0>;
  240.                 status = "okay";
  241.             };
  242.  
  243.             uart1: serial@f8020000 {
  244.                 pinctrl-names = "default";
  245.                 pinctrl-0 = <&pinctrl_uart1_default>;
  246.                 status = "okay";
  247.             };
  248.            
  249.             uart2: serial@f8024000 {
  250.                 pinctrl-names = "default";
  251.                 pinctrl-0 = <&pinctrl_uart2_default>;
  252.                 status = "okay";
  253.             };
  254.            
  255.             pwm0: pwm@f002c000 {
  256.                 pinctrl-names = "default";
  257.                 pinctrl-0 = <&pinctrl_led_pwm_default>;
  258.                 status = "okay";
  259.             };
  260.  
  261.             i2c0: i2c@f8028000 {
  262.                 dmas = <0>, <0>;
  263.                 pinctrl-names = "default";
  264.                 pinctrl-0 = <&pinctrl_i2c0_default>;
  265.                 i2c-sda-hold-time-ns = <350>;
  266.                 status = "okay";
  267.  
  268.                 pmic@5b {
  269.                     compatible = "active-semi,act8945a";
  270.                     reg = <0x5b>;
  271.                     active-semi,vsel-high;
  272.                     active-semi,chglev-gpios = <&pioA 12 GPIO_ACTIVE_HIGH>;
  273.                     active-semi,lbo-gpios = <&pioA 72 GPIO_ACTIVE_LOW>;
  274.                     active-semi,irq_gpios = <&pioA 45 GPIO_ACTIVE_LOW>;
  275.                     active-semi,input-voltage-threshold-microvolt = <6600>;
  276.                     active-semi,precondition-timeout = <40>;
  277.                     active-semi,total-timeout = <3>;
  278.                     pinctrl-names = "default";
  279.                     pinctrl-0 = <&pinctrl_charger_chglev &pinctrl_charger_lbo &pinctrl_charger_irq>;
  280.                     status = "disabled";
  281.  
  282.                     regulators {
  283.                         vdd_1v35_reg: REG_DCDC1 {
  284.                             regulator-name = "VDD_1V35";
  285.                             regulator-min-microvolt = <1350000>;
  286.                             regulator-max-microvolt = <1350000>;
  287.                             regulator-always-on;
  288.                         };
  289.  
  290.                         vdd_1v2_reg: REG_DCDC2 {
  291.                             regulator-name = "VDD_1V2";
  292.                             regulator-min-microvolt = <1100000>;
  293.                             regulator-max-microvolt = <1300000>;
  294.                             regulator-always-on;
  295.                         };
  296.  
  297.                         vdd_3v3_reg: REG_DCDC3 {
  298.                             regulator-name = "VDD_3V3";
  299.                             regulator-min-microvolt = <3300000>;
  300.                             regulator-max-microvolt = <3300000>;
  301.                             regulator-always-on;
  302.                         };
  303.  
  304.                         vdd_fuse_reg: REG_LDO1 {
  305.                             regulator-name = "VDD_FUSE";
  306.                             regulator-min-microvolt = <2500000>;
  307.                             regulator-max-microvolt = <2500000>;
  308.                             regulator-always-on;
  309.                         };
  310.  
  311.                         vdd_3v3_lp_reg: REG_LDO2 {
  312.                             regulator-name = "VDD_3V3_LP";
  313.                             regulator-min-microvolt = <3300000>;
  314.                             regulator-max-microvolt = <3300000>;
  315.                             regulator-always-on;
  316.                         };
  317.  
  318.                         vdd_led_reg: REG_LDO3 {
  319.                             regulator-name = "VDD_LED";
  320.                             regulator-min-microvolt = <3300000>;
  321.                             regulator-max-microvolt = <3300000>;
  322.                             regulator-always-on;
  323.                         };
  324.  
  325.                         vdd_sdhc_1v8_reg: REG_LDO4 {
  326.                             regulator-name = "VDD_SDHC_1V8";
  327.                             regulator-min-microvolt = <1800000>;
  328.                             regulator-max-microvolt = <1800000>;
  329.                             regulator-always-on;
  330.                         };
  331.                     };
  332.                 };
  333.             };
  334.  
  335.             flx0: flexcom@f8034000 {
  336.                 atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_USART>;
  337.                 status = "disabled"; /* conflict with ISC_D2 & ISC_D3 data pins */
  338.  
  339.                 uart5: serial@200 {
  340.                     compatible = "atmel,at91sam9260-usart";
  341.                     reg = <0x200 0x200>;
  342.                     interrupts = <19 IRQ_TYPE_LEVEL_HIGH 7>;
  343.                     clocks = <&flx0_clk>;
  344.                     clock-names = "usart";
  345.                     pinctrl-names = "default";
  346.                     pinctrl-0 = <&pinctrl_flx0_default>;
  347.                     atmel,fifo-size = <32>;
  348.                     status = "okay";
  349.                 };
  350.             };
  351.  
  352.             shdwc@f8048010 {
  353.                 atmel,shdwc-debouncer = <976>;
  354.  
  355.                 input@0 {
  356.                     reg = <0>;
  357.                     atmel,wakeup-type = "low";
  358.                 };
  359.             };
  360.  
  361.             watchdog@f8048040 {
  362.                 status = "okay";
  363.             };
  364.  
  365.             i2s0: i2s@f8050000 {
  366.                 pinctrl-names = "default";
  367.                 pinctrl-0 = <&pinctrl_i2s0_default>;
  368.             };
  369.  
  370. /*          can0: can@f8054000 {
  371.                 pinctrl-names = "default";
  372.                 pinctrl-0 = <&pinctrl_can0_default>;
  373.             };*/
  374.  
  375.             uart3: serial@fc008000 {
  376.                 pinctrl-names = "default";
  377.                 pinctrl-0 = <&pinctrl_uart3_default>;
  378.                 status = "okay";
  379.             };
  380.  
  381.             flx4: flexcom@fc018000 {
  382.                 atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_TWI>;
  383.                 status = "okay";
  384.  
  385.                 i2c2: i2c@600 {
  386.                     compatible = "atmel,sama5d2-i2c";
  387.                     reg = <0x600 0x200>;
  388.                     interrupts = <23 IRQ_TYPE_LEVEL_HIGH 7>;
  389.                     dmas = <0>, <0>;
  390.                     dma-names = "tx", "rx";
  391.                     #address-cells = <1>;
  392.                     #size-cells = <0>;
  393.                     clocks = <&flx4_clk>;
  394.                     pinctrl-names = "default";
  395.                     pinctrl-0 = <&pinctrl_flx4_default>;
  396.                     atmel,fifo-size = <16>;
  397.                     status = "okay";
  398.                 };
  399.             };
  400.  
  401. /*          i2c1: i2c@fc028000 {
  402.                 dmas = <0>, <0>;
  403.                 pinctrl-names = "default";
  404.                 pinctrl-0 = <&pinctrl_i2c1_default>;
  405.                 status = "okay";
  406.  
  407.                 at24@54 {
  408.                     compatible = "atmel,24c02";
  409.                     reg = <0x54>;
  410.                     pagesize = <16>;
  411.                 };
  412.             };*/
  413.  
  414.             adc: adc@fc030000 {
  415.                 vddana-supply = <&vdd_3v3_lp_reg>;
  416.                 vref-supply = <&vdd_3v3_lp_reg>;
  417.                 pinctrl-names = "default";
  418.                 pinctrl-0 = <&pinctrl_adc_default>;
  419.                 status = "okay";
  420.             };
  421.  
  422.             pinctrl@fc038000 {
  423.                 /*
  424.                  * There is no real pinmux for ADC, if the pin
  425.                  * is not requested by another peripheral then
  426.                  * the muxing is done when channel is enabled.
  427.                  * Requesting pins for ADC is GPIO is
  428.                  * encouraged to prevent conflicts and to
  429.                  * disable bias in order to be in the same
  430.                  * state when the pin is not muxed to the adc.
  431.                  */
  432.                 pinctrl_adc_default: adc_default {
  433.                     pinmux = <PIN_PD23__GPIO>;
  434.                     bias-disable;
  435.                 };
  436.  
  437. /*              pinctrl_can0_default: can0_default {
  438.                     pinmux = <PIN_PC10__CANTX0>,
  439.                          <PIN_PC11__CANRX0>;
  440.                     bias-disable;
  441.                 };*/
  442.  
  443.                 pinctrl_can1_default: can1_default {
  444.                     pinmux = <PIN_PC26__CANTX1>,
  445.                          <PIN_PC27__CANRX1>;
  446.                     bias-disable;
  447.                 };
  448.  
  449.                 pinctrl_charger_chglev: charger_chglev {
  450.                     pinmux = <PIN_PA12__GPIO>;
  451.                     bias-disable;
  452.                 };
  453.  
  454.                 pinctrl_charger_irq: charger_irq {
  455.                     pinmux = <PIN_PB13__GPIO>;
  456.                     bias-disable;
  457.                 };
  458.  
  459.                 pinctrl_charger_lbo: charger_lbo {
  460.                     pinmux = <PIN_PC8__GPIO>;
  461.                     bias-pull-up;
  462.                 };
  463.  
  464.                 pinctrl_classd_default: classd_default {
  465.                     pinmux = <PIN_PB1__CLASSD_R0>,
  466.                          <PIN_PB2__CLASSD_R1>,
  467.                          <PIN_PB3__CLASSD_R2>,
  468.                          <PIN_PB4__CLASSD_R3>;
  469.                     bias-pull-up;
  470.                 };
  471.  
  472.                 pinctrl_flx0_default: flx0_default {
  473.                     pinmux = <PIN_PB28__FLEXCOM0_IO0>,
  474.                          <PIN_PB29__FLEXCOM0_IO1>;
  475.                     bias-disable;
  476.                 };
  477.  
  478.                 pinctrl_flx4_default: flx4_default {
  479.                     pinmux = <PIN_PD12__FLEXCOM4_IO0>,
  480.                          <PIN_PD13__FLEXCOM4_IO1>;
  481.                     bias-disable;
  482.                 };
  483.  
  484.                 pinctrl_i2c0_default: i2c0_default {
  485.                     pinmux = <PIN_PD21__TWD0>,
  486.                          <PIN_PD22__TWCK0>;
  487.                     bias-disable;
  488.                 };
  489.  
  490. /*              pinctrl_i2c1_default: i2c1_default {
  491.                     pinmux = <PIN_PD4__TWD1>,
  492.                          <PIN_PD5__TWCK1>;
  493.                     bias-disable;
  494.                 };*/
  495.  
  496.                 pinctrl_i2s0_default: i2s0_default {
  497.                     pinmux = <PIN_PC1__I2SC0_CK>,
  498.                          <PIN_PC2__I2SC0_MCK>,
  499.                          <PIN_PC3__I2SC0_WS>,
  500.                          <PIN_PC4__I2SC0_DI0>,
  501.                          <PIN_PC5__I2SC0_DO0>;
  502.                     bias-disable;
  503.                 };
  504.  
  505.                 pinctrl_key_gpio_default: key_gpio_default {
  506.                     pinmux = <PIN_PB9__GPIO>;
  507.                     bias-pull-up;
  508.                 };
  509.  
  510.                 pinctrl_lcd_base: pinctrl_lcd_base {
  511.                     pinmux = <PIN_PC30__LCDVSYNC>,
  512.                          <PIN_PC31__LCDHSYNC>,
  513.                          <PIN_PD1__LCDDEN>,
  514.                          <PIN_PD0__LCDPCK>;
  515.                     bias-disable;
  516.                 };
  517.  
  518.                 pinctrl_lcd_pwm: pinctrl_lcd_pwm {
  519.                     pinmux = <PIN_PC28__LCDPWM>;
  520.                     bias-disable;
  521.                 };
  522.  
  523. /*              pinctrl_lcd_rgb666: pinctrl_lcd_rgb666 {
  524.                     pinmux = <PIN_PC10__LCDDAT2>,
  525.                          <PIN_PC11__LCDDAT3>,
  526.                          <PIN_PC12__LCDDAT4>,
  527.                          <PIN_PC13__LCDDAT5>,
  528.                          <PIN_PC14__LCDDAT6>,
  529.                          <PIN_PC15__LCDDAT7>,
  530.                          <PIN_PC16__LCDDAT10>,
  531.                          <PIN_PC17__LCDDAT11>,
  532.                          <PIN_PC18__LCDDAT12>,
  533.                          <PIN_PC19__LCDDAT13>,
  534.                          <PIN_PC20__LCDDAT14>,
  535.                          <PIN_PC21__LCDDAT15>,
  536.                          <PIN_PC22__LCDDAT18>,
  537.                          <PIN_PC23__LCDDAT19>,
  538.                          <PIN_PC24__LCDDAT20>,
  539.                          <PIN_PC25__LCDDAT21>,
  540.                          <PIN_PC26__LCDDAT22>,
  541.                          <PIN_PC27__LCDDAT23>;
  542.                     bias-disable;
  543.                 };*/
  544.  
  545.                 pinctrl_led_gpio_default: led_gpio_default {
  546.                     pinmux = <PIN_PB0__GPIO>,
  547.                          <PIN_PB5__GPIO>,
  548.                          <PIN_PB6__GPIO>;
  549.                     bias-pull-up;
  550.                 };
  551.                
  552.                 pinctrl_led_pwm_default: led_pwm_default {
  553.                     pinmux = <PIN_PB0__PWMH1>,
  554.                          <PIN_PB5__PWMH2>,
  555.                          <PIN_PB6__PWML2>;
  556.                 };
  557.  
  558.                 pinctrl_macb0_default: macb0_default {
  559.                     pinmux = <PIN_PB14__GTXCK>,
  560.                          <PIN_PB15__GTXEN>,
  561.                          <PIN_PB16__GRXDV>,
  562.                          <PIN_PB17__GRXER>,
  563.                          <PIN_PB18__GRX0>,
  564.                          <PIN_PB19__GRX1>,
  565.                          <PIN_PB20__GTX0>,
  566.                          <PIN_PB21__GTX1>,
  567.                          <PIN_PB22__GMDC>,
  568.                          <PIN_PB23__GMDIO>;
  569.                     bias-disable;
  570.                 };
  571.  
  572.                 pinctrl_macb0_phy_irq: macb0_phy_irq {
  573.                     pinmux = <PIN_PC9__GPIO>;
  574.                     bias-disable;
  575.                 };
  576.  
  577.                 pinctrl_pdmic_default: pdmic_default {
  578.                     pinmux = <PIN_PB26__PDMIC_DAT>,
  579.                         <PIN_PB27__PDMIC_CLK>;
  580.                     bias-disable;
  581.                 };
  582.                
  583.                 pinctrl_nand_default: nand_default {
  584.                     pinmux = <PIN_PA8__NWE_NANDWE>,
  585.                          <PIN_PA9__NCS3>,
  586.                          <PIN_PA10__A21_NANDALE>,
  587.                          <PIN_PA11__A22_NANDCLE>,
  588.                          <PIN_PA12__NRD_NANDOE>,
  589.                          <PIN_PD8__NANDRDY>,
  590.                          <PIN_PA0__D0>,
  591.                          <PIN_PA1__D1>,
  592.                          <PIN_PA2__D2>,
  593.                          <PIN_PA3__D3>,
  594.                          <PIN_PA4__D4>,
  595.                          <PIN_PA5__D5>,
  596.                          <PIN_PA6__D6>,
  597.                          <PIN_PA7__D7>,
  598.                          <PIN_PA30__GPIO>;
  599.                     bias-pull-up;
  600.                 };
  601.  
  602.  
  603.                 pinctrl_qspi0_default: qspi0_default {
  604.                     sck_cs {
  605.                         pinmux = <PIN_PA22__QSPI0_SCK>,
  606.                              <PIN_PA23__QSPI0_CS>;
  607.                         bias-disable;
  608.                     };
  609.  
  610.                     data {
  611.                         pinmux = <PIN_PA24__QSPI0_IO0>,
  612.                              <PIN_PA25__QSPI0_IO1>,
  613.                              <PIN_PA26__QSPI0_IO2>,
  614.                              <PIN_PA27__QSPI0_IO3>;
  615.                         bias-pull-up;
  616.                     };
  617.                 };
  618.  
  619.                 pinctrl_sdmmc0_default: sdmmc0_default {
  620.                     cmd_data {
  621.                         pinmux = <PIN_PA1__SDMMC0_CMD>,
  622.                              <PIN_PA2__SDMMC0_DAT0>,
  623.                              <PIN_PA3__SDMMC0_DAT1>,
  624.                              <PIN_PA4__SDMMC0_DAT2>,
  625.                              <PIN_PA5__SDMMC0_DAT3>,
  626.                              <PIN_PA6__SDMMC0_DAT4>,
  627.                              <PIN_PA7__SDMMC0_DAT5>,
  628.                              <PIN_PA8__SDMMC0_DAT6>,
  629.                              <PIN_PA9__SDMMC0_DAT7>;
  630.                         bias-pull-up;
  631.                     };
  632.  
  633.                     ck_cd_rstn_vddsel {
  634.                         pinmux = <PIN_PA0__SDMMC0_CK>,
  635.                              <PIN_PA10__SDMMC0_RSTN>,
  636.                              <PIN_PA11__SDMMC0_VDDSEL>,
  637.                              <PIN_PA13__SDMMC0_CD>;
  638.                         bias-disable;
  639.                     };
  640.                 };
  641.  
  642.                 pinctrl_sdmmc1_default: sdmmc1_default {
  643.                     cmd_data {
  644.                         pinmux = <PIN_PA28__SDMMC1_CMD>,
  645.                              <PIN_PA18__SDMMC1_DAT0>,
  646.                              <PIN_PA19__SDMMC1_DAT1>,
  647.                              <PIN_PA20__SDMMC1_DAT2>,
  648.                              <PIN_PA21__SDMMC1_DAT3>;
  649.                         bias-pull-up;
  650.                     };
  651.  
  652.                     conf-ck_cd {
  653.                         pinmux = <PIN_PA22__SDMMC1_CK>,
  654.                              <PIN_PA30__SDMMC1_CD>;
  655.                         bias-pull-up;
  656.                     };
  657.                 };
  658.  
  659.                 pinctrl_spi0_default: spi0_default {
  660.                     pinmux = <PIN_PA14__SPI0_SPCK>,
  661.                          <PIN_PA15__SPI0_MOSI>,
  662.                          <PIN_PA16__SPI0_MISO>,
  663.                          <PIN_PA17__SPI0_NPCS0>;
  664.                     bias-disable;
  665.                 };
  666.  
  667.                 pinctrl_uart1_default: uart1_default {
  668.                     pinmux = <PIN_PD2__URXD1>,
  669.                          <PIN_PD3__UTXD1>;
  670.                     bias-disable;
  671.                 };
  672.                
  673.                 pinctrl_uart2_default: uart2_default {
  674.                     pinmux = <PIN_PD19__URXD2>,
  675.                          <PIN_PD20__UTXD2>;
  676.                     bias-disable;
  677.                 };
  678.  
  679.                 pinctrl_uart3_default: uart3_default {
  680.                     pinmux = <PIN_PB11__URXD3>,
  681.                          <PIN_PB12__UTXD3>;
  682.                     bias-disable;
  683.                 };
  684.  
  685.                 pinctrl_usb_default: usb_default {
  686.                     pinmux = <PIN_PB10__GPIO>;
  687.                     bias-disable;
  688.                 };
  689.  
  690.                 pinctrl_usba_vbus: usba_vbus {
  691.                     pinmux = <PIN_PA31__GPIO>;
  692.                     bias-disable;
  693.                 };
  694.  
  695.             };
  696.  
  697.             classd: classd@fc048000 {
  698.                 pinctrl-names = "default";
  699.                 pinctrl-0 = <&pinctrl_classd_default>;
  700.                 atmel,pwm-type = "diff";
  701.                 atmel,non-overlap-time = <10>;
  702.                 status = "okay";
  703.             };
  704.  
  705.             can1: can@fc050000 {
  706.                 pinctrl-names = "default";
  707.                 pinctrl-0 = <&pinctrl_can1_default>;
  708.                 status = "okay";
  709.             };
  710.         };
  711.     };
  712.  
  713.     /*gpio_keys {
  714.         compatible = "gpio-keys";
  715.  
  716.         pinctrl-names = "default";
  717.         pinctrl-0 = <&pinctrl_key_gpio_default>;
  718.  
  719.         bp1 {
  720.             label = "PB_USER";
  721.             gpios = <&pioA 41 GPIO_ACTIVE_LOW>;
  722.             linux,code = <0x104>;
  723.         };
  724.     };*/
  725.  
  726.     pwmleds {
  727.         compatible = "pwm-leds";
  728.        
  729.         d1 {
  730.             label = "d1";
  731.             pwms = <&pwm0 0 5000 0>;
  732.             max-brightness = <255>;
  733.         };
  734.        
  735.         d2 {
  736.             label = "d2";
  737.             pwms = <&pwm0 1 5000 0>;
  738.             max-brightness = <255>;
  739.         };
  740.        
  741.         d3 {
  742.             label = "d3";
  743.             pwms = <&pwm0 2 5000 0>;
  744.             max-brightness = <255>;
  745.         };
  746.        
  747.         d4 {
  748.             label = "d4";
  749.             pwms = <&pwm0 3 5000 0>;
  750.             max-brightness = <255>;
  751.         };
  752.     };
  753.  
  754.     /*leds {
  755.         compatible = "gpio-leds";
  756.         pinctrl-names = "default";
  757.         pinctrl-0 = <&pinctrl_led_gpio_default>;
  758.         status = "okay";
  759.  
  760.         red {
  761.             label = "red";
  762.             gpios = <&pioA 38 GPIO_ACTIVE_LOW>;
  763.         };
  764.  
  765.         green {
  766.             label = "green";
  767.             gpios = <&pioA 37 GPIO_ACTIVE_LOW>;
  768.         };
  769.  
  770.         blue {
  771.             label = "blue";
  772.             gpios = <&pioA 32 GPIO_ACTIVE_LOW>;
  773.         //  linux,default-trigger = "heartbeat";
  774.         };
  775.     };*/
  776. };
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top