The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/src/arm/lpc4357-ea4357-devkit.dts

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /*
    2  * Embedded Artist LPC4357 Developer's Kit
    3  *
    4  * Copyright 2015 Joachim Eastwood <manabian@gmail.com>
    5  *
    6  * This code is released using a dual license strategy: BSD/GPL
    7  * You can choose the licence that better fits your requirements.
    8  *
    9  * Released under the terms of 3-clause BSD License
   10  * Released under the terms of GNU General Public License Version 2.0
   11  *
   12  */
   13 /dts-v1/;
   14 
   15 #include "lpc18xx.dtsi"
   16 #include "lpc4357.dtsi"
   17 
   18 #include "dt-bindings/input/input.h"
   19 #include "dt-bindings/gpio/gpio.h"
   20 
   21 / {
   22         model = "Embedded Artists' LPC4357 Developer's Kit";
   23         compatible = "ea,lpc4357-developers-kit", "nxp,lpc4357", "nxp,lpc4350";
   24 
   25         aliases {
   26                 serial0 = &uart0;
   27                 serial1 = &uart1;
   28                 serial2 = &uart2;
   29                 serial3 = &uart3;
   30         };
   31 
   32         chosen {
   33                 stdout-path = &uart0;
   34         };
   35 
   36         memory@28000000 {
   37                 device_type = "memory";
   38                 reg = <0x28000000 0x2000000>; /* 32 MB */
   39         };
   40 
   41         vcc: vcc_fixed {
   42                 compatible = "regulator-fixed";
   43                 regulator-name = "3v3-supply";
   44                 regulator-min-microvolt = <3300000>;
   45                 regulator-max-microvolt = <3300000>;
   46         };
   47 
   48         /* vmmc is controlled by sdmmc host internally */
   49         vmmc: vmmc_fixed {
   50                 compatible = "regulator-fixed";
   51                 regulator-name = "vmmc-supply";
   52                 regulator-min-microvolt = <3300000>;
   53                 regulator-max-microvolt = <3300000>;
   54         };
   55 
   56         gpio_joystick {
   57                 compatible = "gpio-keys-polled";
   58                 pinctrl-names = "default";
   59                 pinctrl-0 = <&gpio_joystick_pins>;
   60                 poll-interval = <100>;
   61                 autorepeat;
   62 
   63                 button0 {
   64                         label = "joy_enter";
   65                         linux,code = <KEY_ENTER>;
   66                         gpios = <&gpio LPC_GPIO(4,8) GPIO_ACTIVE_LOW>;
   67                 };
   68 
   69                 button1 {
   70                         label = "joy_left";
   71                         linux,code = <KEY_LEFT>;
   72                         gpios = <&gpio LPC_GPIO(4,9) GPIO_ACTIVE_LOW>;
   73                 };
   74 
   75                 button2 {
   76                         label = "joy_up";
   77                         linux,code = <KEY_UP>;
   78                         gpios = <&gpio LPC_GPIO(4,10) GPIO_ACTIVE_LOW>;
   79                 };
   80 
   81                 button3 {
   82                         label = "joy_right";
   83                         linux,code = <KEY_RIGHT>;
   84                         gpios = <&gpio LPC_GPIO(4,12) GPIO_ACTIVE_LOW>;
   85                 };
   86 
   87                 button4 {
   88                         label = "joy_down";
   89                         linux,code = <KEY_DOWN>;
   90                         gpios = <&gpio LPC_GPIO(4,13) GPIO_ACTIVE_LOW>;
   91                 };
   92         };
   93 
   94         leds_mmio {
   95                 compatible = "gpio-leds";
   96 
   97                 led1 {
   98                         gpios = <&mmio_leds 15 GPIO_ACTIVE_HIGH>;
   99                         linux,default-trigger = "heartbeat";
  100                 };
  101 
  102                 led2 {
  103                         gpios = <&mmio_leds 14 GPIO_ACTIVE_HIGH>;
  104                 };
  105 
  106                 led3 {
  107                         gpios = <&mmio_leds 13 GPIO_ACTIVE_HIGH>;
  108                 };
  109 
  110                 led4 {
  111                         gpios = <&mmio_leds 12 GPIO_ACTIVE_HIGH>;
  112                 };
  113 
  114                 led5 {
  115                         gpios = <&mmio_leds 11 GPIO_ACTIVE_HIGH>;
  116                 };
  117 
  118                 led6 {
  119                         gpios = <&mmio_leds 10 GPIO_ACTIVE_HIGH>;
  120                 };
  121 
  122                 led7 {
  123                         gpios = <&mmio_leds 9 GPIO_ACTIVE_HIGH>;
  124                 };
  125 
  126                 led8 {
  127                         gpios = <&mmio_leds 8 GPIO_ACTIVE_HIGH>;
  128                 };
  129 
  130                 led9 {
  131                         gpios = <&mmio_leds 7 GPIO_ACTIVE_HIGH>;
  132                 };
  133 
  134                 led10 {
  135                         gpios = <&mmio_leds 6 GPIO_ACTIVE_HIGH>;
  136                 };
  137 
  138                 led11 {
  139                         gpios = <&mmio_leds 5 GPIO_ACTIVE_HIGH>;
  140                 };
  141 
  142                 led12 {
  143                         gpios = <&mmio_leds 4 GPIO_ACTIVE_HIGH>;
  144                 };
  145 
  146                 led13 {
  147                         gpios = <&mmio_leds 3 GPIO_ACTIVE_HIGH>;
  148                 };
  149 
  150                 led14 {
  151                         gpios = <&mmio_leds 2 GPIO_ACTIVE_HIGH>;
  152                 };
  153 
  154                 led15 {
  155                         gpios = <&mmio_leds 1 GPIO_ACTIVE_HIGH>;
  156                 };
  157 
  158                 led16 {
  159                         gpios = <&mmio_leds 0 GPIO_ACTIVE_HIGH>;
  160                 };
  161         };
  162 };
  163 
  164 &pinctrl {
  165         emc_pins: emc-pins {
  166                 emc_addr0_23_cfg {
  167                         pins =  "p2_9",  "p2_10", "p2_11", "p2_12",
  168                                 "p2_13", "p1_0",  "p1_1",  "p1_2",
  169                                 "p2_8",  "p2_7",  "p2_6",  "p2_2",
  170                                 "p2_1",  "p2_0",  "p6_8",  "p6_7",
  171                                 "pd_16", "pd_15", "pe_0",  "pe_1",
  172                                 "pe_2",  "pe_3",  "pe_4",  "pa_4";
  173                         function = "emc";
  174                         slew-rate = <1>;
  175                         bias-disable;
  176                         input-enable;
  177                         input-schmitt-disable;
  178                 };
  179 
  180                 emc_data0_31_cfg {
  181                         pins =  "p1_7",  "p1_8",  "p1_9",  "p1_10",
  182                                 "p1_11", "p1_12", "p1_13", "p1_14",
  183                                 "p5_4",  "p5_5",  "p5_6",  "p5_7",
  184                                 "p5_0",  "p5_1",  "p5_2",  "p5_3",
  185                                 "pd_2",  "pd_3",  "pd_4",  "pd_5",
  186                                 "pd_6",  "pd_7",  "pd_8",  "pd_9",
  187                                 "pe_5",  "pe_6",  "pe_7",  "pe_8",
  188                                 "pe_9",  "pe_10", "pe_11", "pe_12";
  189                         function = "emc";
  190                         slew-rate = <1>;
  191                         bias-disable;
  192                         input-enable;
  193                         input-schmitt-disable;
  194                 };
  195 
  196                 emc_we_oe_cfg {
  197                         pins = "p1_6", "p1_3";
  198                         function = "emc";
  199                         slew-rate = <1>;
  200                         bias-disable;
  201                         input-enable;
  202                         input-schmitt-disable;
  203                 };
  204 
  205                 emc_bls0_3_cfg {
  206                         pins = "p1_4", "p6_6", "pd_13", "pd_10";
  207                         function = "emc";
  208                         slew-rate = <1>;
  209                         bias-disable;
  210                         input-enable;
  211                         input-schmitt-disable;
  212                 };
  213 
  214                 emc_cs0_3_cfg {
  215                         pins = "p1_5", "p6_3", "pd_12", "pd_11";
  216                         function = "emc";
  217                         slew-rate = <1>;
  218                         bias-disable;
  219                         input-enable;
  220                         input-schmitt-disable;
  221                 };
  222 
  223                 emc_sdram_dqm0_3_cfg {
  224                         pins = "p6_12", "p6_10", "pd_0", "pe_13";
  225                         function = "emc";
  226                         slew-rate = <1>;
  227                         bias-disable;
  228                         input-enable;
  229                         input-schmitt-disable;
  230                 };
  231 
  232                 emc_sdram_ras_cas_cfg {
  233                         pins = "p6_5", "p6_4";
  234                         function = "emc";
  235                         slew-rate = <1>;
  236                         bias-disable;
  237                         input-enable;
  238                         input-schmitt-disable;
  239                 };
  240 
  241                 emc_sdram_dycs0_cfg {
  242                         pins = "p6_9";
  243                         function = "emc";
  244                         slew-rate = <1>;
  245                         bias-disable;
  246                         input-enable;
  247                         input-schmitt-disable;
  248                 };
  249 
  250                 emc_sdram_cke_cfg {
  251                         pins = "p6_11";
  252                         function = "emc";
  253                         slew-rate = <1>;
  254                         bias-disable;
  255                         input-enable;
  256                         input-schmitt-disable;
  257                 };
  258 
  259                 emc_sdram_clock_cfg {
  260                         pins = "clk0", "clk1", "clk2", "clk3";
  261                         function = "emc";
  262                         slew-rate = <1>;
  263                         bias-disable;
  264                         input-enable;
  265                         input-schmitt-disable;
  266                 };
  267         };
  268 
  269         enet_rmii_pins: enet-rmii-pins {
  270                 enet_rmii_rxd_cfg {
  271                         pins = "p1_15", "p0_0";
  272                         function = "enet";
  273                         slew-rate = <1>;
  274                         bias-disable;
  275                         input-enable;
  276                         input-schmitt-disable;
  277                 };
  278 
  279                 enet_rmii_txd_cfg {
  280                         pins = "p1_18", "p1_20";
  281                         function = "enet";
  282                         slew-rate = <1>;
  283                         bias-disable;
  284                         input-enable;
  285                         input-schmitt-disable;
  286                 };
  287 
  288                 enet_rmii_rx_dv_cfg {
  289                         pins = "p1_16";
  290                         function = "enet";
  291                         bias-disable;
  292                         input-enable;
  293                         input-schmitt-disable;
  294                 };
  295 
  296                 enet_rmii_tx_en_cfg {
  297                         pins = "p0_1";
  298                         function = "enet";
  299                         bias-disable;
  300                         input-enable;
  301                         input-schmitt-disable;
  302                 };
  303 
  304                 enet_ref_clk_cfg {
  305                         pins = "p1_19";
  306                         function = "enet";
  307                         slew-rate = <1>;
  308                         bias-disable;
  309                         input-enable;
  310                         input-schmitt-disable;
  311                 };
  312 
  313                 enet_mdio_cfg {
  314                         pins = "p1_17";
  315                         function = "enet";
  316                         bias-disable;
  317                         input-enable;
  318                         input-schmitt-disable;
  319                 };
  320 
  321                 enet_mdc_cfg {
  322                         pins = "pc_1";
  323                         function = "enet";
  324                         slew-rate = <1>;
  325                         bias-disable;
  326                         input-enable;
  327                         input-schmitt-disable;
  328                 };
  329         };
  330 
  331         gpio_joystick_pins: gpio-joystick-pins {
  332                 gpio_joystick_cfg {
  333                         pins =  "p9_0", "p9_1", "pa_1", "pa_2", "pa_3";
  334                         function = "gpio";
  335                         input-enable;
  336                         bias-disable;
  337                 };
  338         };
  339 
  340         i2c0_pins: i2c0-pins {
  341                 i2c0_pins_cfg {
  342                         pins = "i2c0_scl", "i2c0_sda";
  343                         function = "i2c0";
  344                         input-enable;
  345                 };
  346         };
  347 
  348         sdmmc_pins: sdmmc-pins {
  349                 sdmmc_clk_cfg {
  350                         pins = "pc_0";
  351                         function = "sdmmc";
  352                         slew-rate = <1>;
  353                         bias-pull-down;
  354                 };
  355 
  356                 sdmmc_cmd_dat0_3_cfg {
  357                         pins = "pc_4", "pc_5", "pc_6", "pc_7", "pc_10";
  358                         function = "sdmmc";
  359                         slew-rate = <1>;
  360                         bias-disable;
  361                         input-enable;
  362                         input-schmitt-disable;
  363                 };
  364 
  365                 sdmmc_cd_cfg {
  366                         pins = "pc_8";
  367                         function = "sdmmc";
  368                         bias-pull-down;
  369                         input-enable;
  370                 };
  371 
  372                 sdmmc_pow_cfg {
  373                         pins = "pc_9";
  374                         function = "sdmmc";
  375                         bias-pull-down;
  376                 };
  377         };
  378 
  379         spifi_pins: spifi-pins {
  380                 spifi_clk_cfg {
  381                         pins = "p3_3";
  382                         function = "spifi";
  383                         slew-rate = <1>;
  384                         bias-disable;
  385                         input-enable;
  386                         input-schmitt-disable;
  387                 };
  388 
  389                 spifi_mosi_miso_sio2_3_cfg {
  390                         pins = "p3_7", "p3_6", "p3_5", "p3_4";
  391                         function = "spifi";
  392                         slew-rate = <0>;
  393                         bias-disable;
  394                         input-enable;
  395                         input-schmitt-disable;
  396                 };
  397 
  398                 spifi_cs_cfg {
  399                         pins = "p3_8";
  400                         function = "spifi";
  401                         bias-disable;
  402                 };
  403         };
  404 
  405         ssp0_pins: ssp0-pins {
  406                 ssp0_sck_miso_mosi {
  407                         pins = "pf_0", "pf_2", "pf_3";
  408                         function = "ssp0";
  409                         slew-rate = <1>;
  410                         bias-pull-down;
  411                         input-enable;
  412                         input-schmitt-disable;
  413                 };
  414 
  415                 ssp0_ssel {
  416                         pins = "pf_1";
  417                         function = "ssp0";
  418                         bias-pull-up;
  419                 };
  420         };
  421 
  422         uart0_pins: uart0-pins {
  423                 uart0_rx_cfg {
  424                         pins = "pf_11";
  425                         function = "uart0";
  426                         input-schmitt-disable;
  427                         bias-disable;
  428                         input-enable;
  429                 };
  430 
  431                 uart0_tx_cfg {
  432                         pins = "pf_10";
  433                         function = "uart0";
  434                         bias-pull-down;
  435                 };
  436         };
  437 
  438         uart3_pins: uart3-pins {
  439                 uart3_rx_cfg {
  440                         pins = "p2_4";
  441                         function = "uart3";
  442                         input-schmitt-disable;
  443                         bias-disable;
  444                         input-enable;
  445                 };
  446 
  447                 uart3_tx_cfg {
  448                         pins = "p9_3";
  449                         function = "uart3";
  450                         bias-pull-down;
  451                 };
  452         };
  453 
  454         usb0_pins: usb0-pins {
  455                 usb0_pwr_enable {
  456                         pins = "p2_3";
  457                         function = "usb0";
  458                 };
  459 
  460                 usb0_pwr_fault {
  461                         pins = "p8_0";
  462                         function = "usb0";
  463                         bias-disable;
  464                         input-enable;
  465                 };
  466         };
  467 };
  468 
  469 &adc0 {
  470         status = "okay";
  471         vref-supply = <&vcc>;
  472 };
  473 
  474 &i2c0 {
  475         status = "okay";
  476         pinctrl-names = "default";
  477         pinctrl-0 = <&i2c0_pins>;
  478         clock-frequency = <400000>;
  479 
  480         mma7455@1d {
  481                 compatible = "fsl,mma7455";
  482                 reg = <0x1d>;
  483         };
  484 
  485         lm75@48 {
  486                 compatible = "nxp,lm75";
  487                 reg = <0x48>;
  488         };
  489 
  490         eeprom@57 {
  491                 compatible = "microchip,24c64", "atmel,24c64";
  492                 reg = <0x57>;
  493         };
  494 };
  495 
  496 &dac {
  497         status = "okay";
  498         vref-supply = <&vcc>;
  499 };
  500 
  501 &emc {
  502         status = "okay";
  503         pinctrl-names = "default";
  504         pinctrl-0 = <&emc_pins>;
  505 
  506         cs0 {
  507                 #address-cells = <2>;
  508                 #size-cells = <1>;
  509                 ranges;
  510 
  511                 mpmc,cs = <0>;
  512                 mpmc,memory-width = <16>;
  513                 mpmc,byte-lane-low;
  514                 mpmc,write-enable-delay = <0>;
  515                 mpmc,output-enable-delay = <0>;
  516                 mpmc,read-access-delay = <70>;
  517                 mpmc,page-mode-read-delay = <70>;
  518 
  519                 flash@0,0 {
  520                         compatible = "sst,sst39vf320", "cfi-flash";
  521                         reg = <0 0 0x400000>;
  522                         bank-width = <2>;
  523                         #address-cells = <1>;
  524                         #size-cells = <1>;
  525 
  526                         partition@0 {
  527                                 label = "bootloader";
  528                                 reg = <0x000000 0x040000>; /* 256 KiB */
  529                         };
  530 
  531                         partition@1 {
  532                                 label = "kernel";
  533                                 reg = <0x040000 0x2c0000>; /* 2.75 MiB */
  534                         };
  535 
  536                         partition@2 {
  537                                 label = "rootfs";
  538                                 reg = <0x300000 0x100000>; /* 1 MiB */
  539                         };
  540                 };
  541         };
  542 
  543         cs2 {
  544                 #address-cells = <2>;
  545                 #size-cells = <1>;
  546                 ranges;
  547 
  548                 mpmc,cs = <2>;
  549                 mpmc,memory-width = <16>;
  550 
  551                 mmio_leds: gpio@2,0 {
  552                         compatible = "ti,7416374";
  553                         reg = <2 0 0x2>;
  554                         gpio-controller;
  555                         #gpio-cells = <2>;
  556                 };
  557 
  558         };
  559 };
  560 
  561 &enet_tx_clk {
  562         clock-frequency = <50000000>;
  563 };
  564 
  565 &mac {
  566         status = "okay";
  567         phy-mode = "rmii";
  568         pinctrl-names = "default";
  569         pinctrl-0 = <&enet_rmii_pins>;
  570 };
  571 
  572 &mmcsd {
  573         status = "okay";
  574         bus-width = <4>;
  575         vmmc-supply = <&vmmc>;
  576         pinctrl-names = "default";
  577         pinctrl-0 = <&sdmmc_pins>;
  578 };
  579 
  580 &spifi {
  581         status = "okay";
  582         pinctrl-names = "default";
  583         pinctrl-0 = <&spifi_pins>;
  584 
  585         flash {
  586                 compatible = "jedec,spi-nor";
  587                 spi-cpol;
  588                 spi-cpha;
  589                 spi-rx-bus-width = <4>;
  590                 #address-cells = <1>;
  591                 #size-cells = <1>;
  592 
  593                 partition@0 {
  594                         label = "data";
  595                         reg = <0 0x200000>;
  596                 };
  597         };
  598 };
  599 
  600 &ssp0 {
  601         status = "okay";
  602         pinctrl-names = "default";
  603         pinctrl-0 = <&ssp0_pins>;
  604         num-cs = <1>;
  605 };
  606 
  607 &uart0 {
  608         status = "okay";
  609         pinctrl-names = "default";
  610         pinctrl-0 = <&uart0_pins>;
  611 };
  612 
  613 &uart3 {
  614         status = "okay";
  615         pinctrl-names = "default";
  616         pinctrl-0 = <&uart3_pins>;
  617 };
  618 
  619 &usb0 {
  620         status = "okay";
  621         pinctrl-names = "default";
  622         pinctrl-0 = <&usb0_pins>;
  623 };

Cache object: fb9f0d4eff1793752f2bcb3495445072


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.