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/r8a7794-silk.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 Source for the SILK board
    4  *
    5  * Copyright (C) 2014 Renesas Electronics Corporation
    6  * Copyright (C) 2014-2015 Renesas Solutions Corp.
    7  * Copyright (C) 2014-2015 Cogent Embedded, Inc.
    8  */
    9 
   10 /*
   11  * SSI-AK4643
   12  *
   13  * SW1: 2-1: AK4643
   14  *      2-3: ADV7511
   15  *
   16  * This command is required before playback/capture:
   17  *
   18  *      amixer set "LINEOUT Mixer DACL" on
   19  */
   20 
   21 /dts-v1/;
   22 #include "r8a7794.dtsi"
   23 #include <dt-bindings/gpio/gpio.h>
   24 #include <dt-bindings/input/input.h>
   25 
   26 / {
   27         model = "SILK";
   28         compatible = "renesas,silk", "renesas,r8a7794";
   29 
   30         aliases {
   31                 serial0 = &scif2;
   32                 i2c9 = &gpioi2c1;
   33                 i2c10 = &i2chdmi;
   34                 mmc0 = &mmcif0;
   35                 mmc1 = &sdhi1;
   36         };
   37 
   38         chosen {
   39                 bootargs = "ignore_loglevel rw root=/dev/nfs ip=on";
   40                 stdout-path = "serial0:115200n8";
   41         };
   42 
   43         memory@40000000 {
   44                 device_type = "memory";
   45                 reg = <0 0x40000000 0 0x40000000>;
   46         };
   47 
   48         keyboard {
   49                 compatible = "gpio-keys";
   50 
   51                 pinctrl-0 = <&keyboard_pins>;
   52                 pinctrl-names = "default";
   53 
   54                 key-3 {
   55                         gpios = <&gpio5 10 GPIO_ACTIVE_LOW>;
   56                         linux,code = <KEY_3>;
   57                         label = "SW3";
   58                         wakeup-source;
   59                         debounce-interval = <20>;
   60                 };
   61                 key-4 {
   62                         gpios = <&gpio5 11 GPIO_ACTIVE_LOW>;
   63                         linux,code = <KEY_4>;
   64                         label = "SW4";
   65                         wakeup-source;
   66                         debounce-interval = <20>;
   67                 };
   68                 key-6 {
   69                         gpios = <&gpio5 12 GPIO_ACTIVE_LOW>;
   70                         linux,code = <KEY_6>;
   71                         label = "SW6";
   72                         wakeup-source;
   73                         debounce-interval = <20>;
   74                 };
   75                 key-a {
   76                         gpios = <&gpio3 9 GPIO_ACTIVE_LOW>;
   77                         linux,code = <KEY_A>;
   78                         label = "SW12-1";
   79                         wakeup-source;
   80                         debounce-interval = <20>;
   81                 };
   82                 key-b {
   83                         gpios = <&gpio3 10 GPIO_ACTIVE_LOW>;
   84                         linux,code = <KEY_B>;
   85                         label = "SW12-2";
   86                         wakeup-source;
   87                         debounce-interval = <20>;
   88                 };
   89                 key-c {
   90                         gpios = <&gpio3 11 GPIO_ACTIVE_LOW>;
   91                         linux,code = <KEY_C>;
   92                         label = "SW12-3";
   93                         wakeup-source;
   94                         debounce-interval = <20>;
   95                 };
   96                 key-d {
   97                         gpios = <&gpio3 12 GPIO_ACTIVE_LOW>;
   98                         linux,code = <KEY_D>;
   99                         label = "SW12-4";
  100                         wakeup-source;
  101                         debounce-interval = <20>;
  102                 };
  103         };
  104 
  105         d3_3v: regulator-d3-3v {
  106                 compatible = "regulator-fixed";
  107                 regulator-name = "D3.3V";
  108                 regulator-min-microvolt = <3300000>;
  109                 regulator-max-microvolt = <3300000>;
  110                 regulator-boot-on;
  111                 regulator-always-on;
  112         };
  113 
  114         vcc_sdhi1: regulator-vcc-sdhi1 {
  115                 compatible = "regulator-fixed";
  116 
  117                 regulator-name = "SDHI1 Vcc";
  118                 regulator-min-microvolt = <3300000>;
  119                 regulator-max-microvolt = <3300000>;
  120 
  121                 gpio = <&gpio4 26 GPIO_ACTIVE_HIGH>;
  122                 enable-active-high;
  123         };
  124 
  125         vccq_sdhi1: regulator-vccq-sdhi1 {
  126                 compatible = "regulator-gpio";
  127 
  128                 regulator-name = "SDHI1 VccQ";
  129                 regulator-min-microvolt = <1800000>;
  130                 regulator-max-microvolt = <3300000>;
  131 
  132                 gpios = <&gpio4 29 GPIO_ACTIVE_HIGH>;
  133                 gpios-states = <1>;
  134                 states = <3300000 1>, <1800000 0>;
  135         };
  136 
  137         vga-encoder {
  138                 compatible = "adi,adv7123";
  139 
  140                 ports {
  141                         #address-cells = <1>;
  142                         #size-cells = <0>;
  143 
  144                         port@0 {
  145                                 reg = <0>;
  146                                 adv7123_in: endpoint {
  147                                         remote-endpoint = <&du_out_rgb1>;
  148                                 };
  149                         };
  150                         port@1 {
  151                                 reg = <1>;
  152                                 adv7123_out: endpoint {
  153                                         remote-endpoint = <&vga_in>;
  154                                 };
  155                         };
  156                 };
  157         };
  158 
  159         hdmi-out {
  160                 compatible = "hdmi-connector";
  161                 type = "a";
  162 
  163                 port {
  164                         hdmi_con: endpoint {
  165                                 remote-endpoint = <&adv7511_out>;
  166                         };
  167                 };
  168         };
  169 
  170         vga {
  171                 compatible = "vga-connector";
  172 
  173                 port {
  174                         vga_in: endpoint {
  175                                 remote-endpoint = <&adv7123_out>;
  176                         };
  177                 };
  178         };
  179 
  180         x2_clk: x2-clock {
  181                 compatible = "fixed-clock";
  182                 #clock-cells = <0>;
  183                 clock-frequency = <148500000>;
  184         };
  185 
  186         x3_clk: x3-clock {
  187                 compatible = "fixed-clock";
  188                 #clock-cells = <0>;
  189                 clock-frequency = <74250000>;
  190         };
  191 
  192         x9_clk: audio_clock {
  193                 compatible = "fixed-clock";
  194                 #clock-cells = <0>;
  195                 clock-frequency = <12288000>;
  196         };
  197 
  198         sound {
  199                 compatible = "simple-audio-card";
  200 
  201                 simple-audio-card,format = "left_j";
  202                 simple-audio-card,bitclock-master = <&soundcodec>;
  203                 simple-audio-card,frame-master = <&soundcodec>;
  204 
  205                 simple-audio-card,cpu {
  206                         sound-dai = <&rcar_sound>;
  207                 };
  208 
  209                 soundcodec: simple-audio-card,codec {
  210                         sound-dai = <&ak4643>;
  211                         clocks = <&x9_clk>;
  212                 };
  213         };
  214 
  215         gpioi2c1: i2c-9 {
  216                 #address-cells = <1>;
  217                 #size-cells = <0>;
  218                 compatible = "i2c-gpio";
  219                 status = "disabled";
  220                 scl-gpios = <&gpio4 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
  221                 sda-gpios = <&gpio4 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
  222                 i2c-gpio,delay-us = <5>;
  223         };
  224 
  225         /*
  226          * A fallback to GPIO is provided for I2C1.
  227          */
  228         i2chdmi: i2c-10 {
  229                 compatible = "i2c-demux-pinctrl";
  230                 i2c-parent = <&i2c1>, <&gpioi2c1>;
  231                 i2c-bus-name = "i2c-hdmi";
  232                 #address-cells = <1>;
  233                 #size-cells = <0>;
  234 
  235                 ak4643: codec@12 {
  236                         compatible = "asahi-kasei,ak4643";
  237                         #sound-dai-cells = <0>;
  238                         reg = <0x12>;
  239                 };
  240 
  241                 composite-in@20 {
  242                         compatible = "adi,adv7180";
  243                         reg = <0x20>;
  244 
  245                         port {
  246                                 adv7180: endpoint {
  247                                         bus-width = <8>;
  248                                         remote-endpoint = <&vin0ep>;
  249                                 };
  250                         };
  251                 };
  252 
  253                 hdmi@39 {
  254                         compatible = "adi,adv7511w";
  255                         reg = <0x39>;
  256                         interrupt-parent = <&gpio5>;
  257                         interrupts = <23 IRQ_TYPE_LEVEL_LOW>;
  258 
  259                         adi,input-depth = <8>;
  260                         adi,input-colorspace = "rgb";
  261                         adi,input-clock = "1x";
  262 
  263                         ports {
  264                                 #address-cells = <1>;
  265                                 #size-cells = <0>;
  266 
  267                                 port@0 {
  268                                         reg = <0>;
  269                                         adv7511_in: endpoint {
  270                                                 remote-endpoint = <&du_out_rgb0>;
  271                                         };
  272                                 };
  273 
  274                                 port@1 {
  275                                         reg = <1>;
  276                                         adv7511_out: endpoint {
  277                                                 remote-endpoint = <&hdmi_con>;
  278                                         };
  279                                 };
  280                         };
  281                 };
  282 
  283                 eeprom@50 {
  284                         compatible = "renesas,r1ex24002", "atmel,24c02";
  285                         reg = <0x50>;
  286                         pagesize = <16>;
  287                 };
  288         };
  289 };
  290 
  291 &extal_clk {
  292         clock-frequency = <20000000>;
  293 };
  294 
  295 &pfc {
  296         pinctrl-0 = <&scif_clk_pins>;
  297         pinctrl-names = "default";
  298 
  299         scif2_pins: scif2 {
  300                 groups = "scif2_data";
  301                 function = "scif2";
  302         };
  303 
  304         scif_clk_pins: scif_clk {
  305                 groups = "scif_clk";
  306                 function = "scif_clk";
  307         };
  308 
  309         ether_pins: ether {
  310                 groups = "eth_link", "eth_mdio", "eth_rmii";
  311                 function = "eth";
  312         };
  313 
  314         phy1_pins: phy1 {
  315                 groups = "intc_irq8";
  316                 function = "intc";
  317         };
  318 
  319         i2c1_pins: i2c1 {
  320                 groups = "i2c1";
  321                 function = "i2c1";
  322         };
  323 
  324         mmcif0_pins: mmcif0 {
  325                 groups = "mmc_data8", "mmc_ctrl";
  326                 function = "mmc";
  327         };
  328 
  329         sdhi1_pins: sd1 {
  330                 groups = "sdhi1_data4", "sdhi1_ctrl";
  331                 function = "sdhi1";
  332         };
  333 
  334         qspi_pins: qspi {
  335                 groups = "qspi_ctrl", "qspi_data4";
  336                 function = "qspi";
  337         };
  338 
  339         vin0_pins: vin0 {
  340                 groups = "vin0_data8", "vin0_clk";
  341                 function = "vin0";
  342         };
  343 
  344         usb0_pins: usb0 {
  345                 groups = "usb0";
  346                 function = "usb0";
  347         };
  348 
  349         usb1_pins: usb1 {
  350                 groups = "usb1";
  351                 function = "usb1";
  352         };
  353 
  354         du0_pins: du0 {
  355                 groups = "du0_rgb888", "du0_sync", "du0_disp", "du0_clk0_out";
  356                 function = "du0";
  357         };
  358 
  359         du1_pins: du1 {
  360                 groups = "du1_rgb666", "du1_sync", "du1_disp", "du1_clk0_out";
  361                 function = "du1";
  362         };
  363 
  364         keyboard_pins: keyboard {
  365                 pins = "GP_3_9", "GP_3_10", "GP_3_11", "GP_3_12";
  366                 bias-pull-up;
  367         };
  368 
  369         ssi_pins: sound {
  370                 groups = "ssi0129_ctrl", "ssi0_data", "ssi1_data";
  371                 function = "ssi";
  372         };
  373 
  374         audio_clk_pins: audio_clk {
  375                 groups = "audio_clkc";
  376                 function = "audio_clk";
  377         };
  378 };
  379 
  380 &scif2 {
  381         pinctrl-0 = <&scif2_pins>;
  382         pinctrl-names = "default";
  383 
  384         status = "okay";
  385 };
  386 
  387 &scif_clk {
  388         clock-frequency = <14745600>;
  389 };
  390 
  391 &ether {
  392         pinctrl-0 = <&ether_pins>, <&phy1_pins>;
  393         pinctrl-names = "default";
  394 
  395         phy-handle = <&phy1>;
  396         renesas,ether-link-active-low;
  397         status = "okay";
  398 
  399         phy1: ethernet-phy@1 {
  400                 compatible = "ethernet-phy-id0022.1537",
  401                              "ethernet-phy-ieee802.3-c22";
  402                 reg = <1>;
  403                 interrupt-parent = <&irqc0>;
  404                 interrupts = <8 IRQ_TYPE_LEVEL_LOW>;
  405                 micrel,led-mode = <1>;
  406                 reset-gpios = <&gpio1 24 GPIO_ACTIVE_LOW>;
  407         };
  408 };
  409 
  410 &i2c1 {
  411         pinctrl-0 = <&i2c1_pins>;
  412         pinctrl-names = "i2c-hdmi";
  413 
  414         clock-frequency = <400000>;
  415 };
  416 
  417 &i2c7 {
  418         status = "okay";
  419         clock-frequency = <100000>;
  420 
  421         pmic@58 {
  422                 compatible = "dlg,da9063";
  423                 reg = <0x58>;
  424                 interrupt-parent = <&gpio3>;
  425                 interrupts = <31 IRQ_TYPE_LEVEL_LOW>;
  426                 interrupt-controller;
  427 
  428                 onkey {
  429                         compatible = "dlg,da9063-onkey";
  430                 };
  431 
  432                 rtc {
  433                         compatible = "dlg,da9063-rtc";
  434                 };
  435 
  436                 watchdog {
  437                         compatible = "dlg,da9063-watchdog";
  438                 };
  439         };
  440 };
  441 
  442 &mmcif0 {
  443         pinctrl-0 = <&mmcif0_pins>;
  444         pinctrl-names = "default";
  445 
  446         vmmc-supply = <&d3_3v>;
  447         vqmmc-supply = <&d3_3v>;
  448         bus-width = <8>;
  449         non-removable;
  450         status = "okay";
  451 };
  452 
  453 &sdhi1 {
  454         pinctrl-0 = <&sdhi1_pins>;
  455         pinctrl-names = "default";
  456 
  457         vmmc-supply = <&vcc_sdhi1>;
  458         vqmmc-supply = <&vccq_sdhi1>;
  459         cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>;
  460         status = "okay";
  461 };
  462 
  463 &qspi {
  464         pinctrl-0 = <&qspi_pins>;
  465         pinctrl-names = "default";
  466 
  467         status = "okay";
  468 
  469         flash@0 {
  470                 compatible = "spansion,s25fl512s", "jedec,spi-nor";
  471                 reg = <0>;
  472                 spi-max-frequency = <30000000>;
  473                 spi-tx-bus-width = <4>;
  474                 spi-rx-bus-width = <4>;
  475                 spi-cpol;
  476                 spi-cpha;
  477                 m25p,fast-read;
  478 
  479                 partitions {
  480                         compatible = "fixed-partitions";
  481                         #address-cells = <1>;
  482                         #size-cells = <1>;
  483 
  484                         partition@0 {
  485                                 label = "loader";
  486                                 reg = <0x00000000 0x00040000>;
  487                                 read-only;
  488                         };
  489                         partition@40000 {
  490                                 label = "user";
  491                                 reg = <0x00040000 0x00400000>;
  492                                 read-only;
  493                         };
  494                         partition@440000 {
  495                                 label = "flash";
  496                                 reg = <0x00440000 0x03bc0000>;
  497                         };
  498                 };
  499         };
  500 };
  501 
  502 /* composite video input */
  503 &vin0 {
  504         status = "okay";
  505         pinctrl-0 = <&vin0_pins>;
  506         pinctrl-names = "default";
  507 
  508         port {
  509                 vin0ep: endpoint {
  510                         remote-endpoint = <&adv7180>;
  511                         bus-width = <8>;
  512                 };
  513         };
  514 };
  515 
  516 &pci0 {
  517         status = "okay";
  518         pinctrl-0 = <&usb0_pins>;
  519         pinctrl-names = "default";
  520 };
  521 
  522 &pci1 {
  523         status = "okay";
  524         pinctrl-0 = <&usb1_pins>;
  525         pinctrl-names = "default";
  526 };
  527 
  528 &usbphy {
  529         status = "okay";
  530 };
  531 
  532 &du {
  533         pinctrl-0 = <&du0_pins>, <&du1_pins>;
  534         pinctrl-names = "default";
  535         status = "okay";
  536 
  537         clocks = <&cpg CPG_MOD 724>, <&cpg CPG_MOD 723>,
  538                  <&x2_clk>, <&x3_clk>;
  539         clock-names = "du.0", "du.1", "dclkin.0", "dclkin.1";
  540 
  541         ports {
  542                 port@0 {
  543                         endpoint {
  544                                 remote-endpoint = <&adv7511_in>;
  545                         };
  546                 };
  547                 port@1 {
  548                         endpoint {
  549                                 remote-endpoint = <&adv7123_in>;
  550                         };
  551                 };
  552         };
  553 };
  554 
  555 &rcar_sound {
  556         pinctrl-0 = <&ssi_pins>, <&audio_clk_pins>;
  557         pinctrl-names = "default";
  558         status = "okay";
  559 
  560         /* Single DAI */
  561         #sound-dai-cells = <0>;
  562 
  563         rcar_sound,dai {
  564                 dai0 {
  565                         playback = <&ssi0>;
  566                         capture  = <&ssi1>;
  567                 };
  568         };
  569 };
  570 
  571 &rwdt {
  572         timeout-sec = <60>;
  573         status = "okay";
  574 };
  575 
  576 &ssi1 {
  577         shared-pin;
  578 };

Cache object: 8e979f54bc09f83ab7e7435b3179fbdb


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