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/arm64/freescale/fsl-ls1028a-kontron-sl28.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 // SPDX-License-Identifier: GPL-2.0+
    2 /*
    3  * Device Tree file for the Kontron SMARC-sAL28 board.
    4  *
    5  * Copyright (C) 2021 Michael Walle <michael@walle.cc>
    6  *
    7  */
    8 
    9 /dts-v1/;
   10 #include "fsl-ls1028a.dtsi"
   11 #include <dt-bindings/interrupt-controller/irq.h>
   12 #include <dt-bindings/gpio/gpio.h>
   13 #include <dt-bindings/input/input.h>
   14 
   15 / {
   16         model = "Kontron SMARC-sAL28";
   17         compatible = "kontron,sl28", "fsl,ls1028a";
   18 
   19         aliases {
   20                 crypto = &crypto;
   21                 serial0 = &duart0;
   22                 serial1 = &duart1;
   23                 serial2 = &lpuart1;
   24                 spi0 = &fspi;
   25                 spi1 = &dspi2;
   26                 mmc0 = &esdhc1;
   27                 mmc1 = &esdhc;
   28                 rtc0 = &rtc;
   29                 rtc1 = &ftm_alarm0;
   30         };
   31 
   32         buttons0 {
   33                 compatible = "gpio-keys";
   34 
   35                 power-button {
   36                         interrupts-extended = <&sl28cpld_intc
   37                                                4 IRQ_TYPE_EDGE_BOTH>;
   38                         linux,code = <KEY_POWER>;
   39                         label = "Power";
   40                 };
   41 
   42                 sleep-button {
   43                         interrupts-extended = <&sl28cpld_intc
   44                                                5 IRQ_TYPE_EDGE_BOTH>;
   45                         linux,code = <KEY_SLEEP>;
   46                         label = "Sleep";
   47                 };
   48         };
   49 
   50         buttons1 {
   51                 compatible = "gpio-keys-polled";
   52                 poll-interval = <200>;
   53 
   54                 lid-switch {
   55                         linux,input-type = <EV_SW>;
   56                         linux,code = <SW_LID>;
   57                         gpios = <&sl28cpld_gpio3 4 GPIO_ACTIVE_LOW>;
   58                         label = "Lid";
   59                 };
   60         };
   61 
   62         chosen {
   63                 stdout-path = "serial0:115200n8";
   64         };
   65 };
   66 
   67 &can0 {
   68         status = "okay";
   69 };
   70 
   71 &dspi2 {
   72         status = "okay";
   73 };
   74 
   75 &duart0 {
   76         status = "okay";
   77 };
   78 
   79 &duart1 {
   80         status = "okay";
   81 };
   82 
   83 &enetc_mdio_pf3 {
   84         phy0: ethernet-phy@5 {
   85                 reg = <0x5>;
   86                 eee-broken-1000t;
   87                 eee-broken-100tx;
   88         };
   89 };
   90 
   91 &enetc_port0 {
   92         phy-handle = <&phy0>;
   93         phy-mode = "sgmii";
   94         managed = "in-band-status";
   95         status = "okay";
   96 };
   97 
   98 &esdhc {
   99         sd-uhs-sdr104;
  100         sd-uhs-sdr50;
  101         sd-uhs-sdr25;
  102         sd-uhs-sdr12;
  103         status = "okay";
  104 };
  105 
  106 &esdhc1 {
  107         mmc-hs200-1_8v;
  108         mmc-hs400-1_8v;
  109         bus-width = <8>;
  110         status = "okay";
  111 };
  112 
  113 &fspi {
  114         status = "okay";
  115 
  116         flash@0 {
  117                 compatible = "jedec,spi-nor";
  118                 m25p,fast-read;
  119                 spi-max-frequency = <133000000>;
  120                 reg = <0>;
  121                 /* The following setting enables 1-1-2 (CMD-ADDR-DATA) mode */
  122                 spi-rx-bus-width = <2>; /* 2 SPI Rx lines */
  123                 spi-tx-bus-width = <1>; /* 1 SPI Tx line */
  124 
  125                 partitions {
  126                         compatible = "fixed-partitions";
  127                         #address-cells = <1>;
  128                         #size-cells = <1>;
  129 
  130                         partition@0 {
  131                                 reg = <0x000000 0x010000>;
  132                                 label = "rcw";
  133                                 read-only;
  134                         };
  135 
  136                         partition@10000 {
  137                                 reg = <0x010000 0x1d0000>;
  138                                 label = "failsafe bootloader";
  139                                 read-only;
  140                         };
  141 
  142                         partition@200000 {
  143                                 reg = <0x200000 0x010000>;
  144                                 label = "configuration store";
  145                         };
  146 
  147                         partition@210000 {
  148                                 reg = <0x210000 0x1d0000>;
  149                                 label = "bootloader";
  150                         };
  151 
  152                         partition@3e0000 {
  153                                 reg = <0x3e0000 0x020000>;
  154                                 label = "bootloader environment";
  155                         };
  156                 };
  157         };
  158 };
  159 
  160 &ftm_alarm0 {
  161         status = "okay";
  162 };
  163 
  164 &gpio1 {
  165         gpio-line-names =
  166                 "", "", "", "", "", "", "", "",
  167                 "", "", "", "", "", "", "", "",
  168                 "", "", "", "", "", "", "TDO", "TCK",
  169                 "", "", "", "", "", "", "", "";
  170 };
  171 
  172 &gpio2 {
  173         gpio-line-names =
  174                 "", "", "", "", "", "", "TMS", "TDI",
  175                 "", "", "", "", "", "", "", "",
  176                 "", "", "", "", "", "", "", "",
  177                 "", "", "", "", "", "", "", "";
  178 };
  179 
  180 &i2c0 {
  181         status = "okay";
  182 
  183         rtc: rtc@32 {
  184                 compatible = "microcrystal,rv8803";
  185                 reg = <0x32>;
  186         };
  187 
  188         sl28cpld@4a {
  189                 compatible = "kontron,sl28cpld";
  190                 reg = <0x4a>;
  191                 #address-cells = <1>;
  192                 #size-cells = <0>;
  193 
  194                 watchdog@4 {
  195                         compatible = "kontron,sl28cpld-wdt";
  196                         reg = <0x4>;
  197                         kontron,assert-wdt-timeout-pin;
  198                 };
  199 
  200                 hwmon@b {
  201                         compatible = "kontron,sl28cpld-fan";
  202                         reg = <0xb>;
  203                 };
  204 
  205                 sl28cpld_pwm0: pwm@c {
  206                         compatible = "kontron,sl28cpld-pwm";
  207                         reg = <0xc>;
  208                         #pwm-cells = <2>;
  209                 };
  210 
  211                 sl28cpld_pwm1: pwm@e {
  212                         compatible = "kontron,sl28cpld-pwm";
  213                         reg = <0xe>;
  214                         #pwm-cells = <2>;
  215                 };
  216 
  217                 sl28cpld_gpio0: gpio@10 {
  218                         compatible = "kontron,sl28cpld-gpio";
  219                         reg = <0x10>;
  220                         interrupts-extended = <&gpio2 6
  221                                                IRQ_TYPE_EDGE_FALLING>;
  222 
  223                         gpio-controller;
  224                         #gpio-cells = <2>;
  225                         gpio-line-names =
  226                                 "GPIO0_CAM0_PWR_N", "GPIO1_CAM1_PWR_N",
  227                                 "GPIO2_CAM0_RST_N", "GPIO3_CAM1_RST_N",
  228                                 "GPIO4_HDA_RST_N", "GPIO5_PWM_OUT",
  229                                 "GPIO6_TACHIN", "GPIO7";
  230 
  231                         interrupt-controller;
  232                         #interrupt-cells = <2>;
  233                 };
  234 
  235                 sl28cpld_gpio1: gpio@15 {
  236                         compatible = "kontron,sl28cpld-gpio";
  237                         reg = <0x15>;
  238                         interrupts-extended = <&gpio2 6
  239                                                IRQ_TYPE_EDGE_FALLING>;
  240 
  241                         gpio-controller;
  242                         #gpio-cells = <2>;
  243                         gpio-line-names =
  244                                 "GPIO8", "GPIO9", "GPIO10", "GPIO11",
  245                                 "", "", "", "";
  246 
  247                         interrupt-controller;
  248                         #interrupt-cells = <2>;
  249                 };
  250 
  251                 sl28cpld_gpio2: gpio@1a {
  252                         compatible = "kontron,sl28cpld-gpo";
  253                         reg = <0x1a>;
  254 
  255                         gpio-controller;
  256                         #gpio-cells = <2>;
  257                         gpio-line-names =
  258                                 "LCD0 voltage enable",
  259                                 "LCD0 backlight enable",
  260                                 "eMMC reset", "LVDS bridge reset",
  261                                 "LVDS bridge power-down",
  262                                 "SDIO power enable",
  263                                 "", "";
  264                 };
  265 
  266                 sl28cpld_gpio3: gpio@1b {
  267                         compatible = "kontron,sl28cpld-gpi";
  268                         reg = <0x1b>;
  269 
  270                         gpio-controller;
  271                         #gpio-cells = <2>;
  272                         gpio-line-names =
  273                                 "Power button", "Force recovery", "Sleep",
  274                                 "Battery low", "Lid state", "Charging",
  275                                 "Charger present", "";
  276                 };
  277 
  278                 sl28cpld_intc: interrupt-controller@1c {
  279                         compatible = "kontron,sl28cpld-intc";
  280                         reg = <0x1c>;
  281                         interrupts-extended = <&gpio2 6
  282                                                IRQ_TYPE_EDGE_FALLING>;
  283 
  284                         interrupt-controller;
  285                         #interrupt-cells = <2>;
  286                 };
  287         };
  288 
  289         eeprom@50 {
  290                 compatible = "atmel,24c32";
  291                 reg = <0x50>;
  292                 pagesize = <32>;
  293         };
  294 };
  295 
  296 &i2c3 {
  297         status = "okay";
  298 };
  299 
  300 &i2c4 {
  301         status = "okay";
  302 
  303         eeprom@50 {
  304                 compatible = "atmel,24c32";
  305                 reg = <0x50>;
  306                 pagesize = <32>;
  307         };
  308 };
  309 
  310 &lpuart1 {
  311         status = "okay";
  312 };
  313 
  314 &mscc_felix_port4 {
  315         dsa-tag-protocol = "ocelot-8021q";
  316 };
  317 
  318 &mscc_felix_port5 {
  319         dsa-tag-protocol = "ocelot-8021q";
  320 };
  321 
  322 &usb0 {
  323         status = "okay";
  324 };
  325 
  326 &usb1 {
  327         dr_mode = "host";
  328         status = "okay";
  329 };

Cache object: 7aeb0de032818f4164e35685d0d1c9ab


[ 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.