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/r8a7745-iwg22d-sodimm.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 iWave-RZG1E SODIMM carrier board
    4  *
    5  * Copyright (C) 2017 Renesas Electronics Corp.
    6  */
    7 
    8 /*
    9  * SSI-SGTL5000
   10  *
   11  * This command is required when Playback/Capture
   12  *
   13  *      amixer set "DVC Out" 100%
   14  *      amixer set "DVC In" 100%
   15  *
   16  * You can use Mute
   17  *
   18  *      amixer set "DVC Out Mute" on
   19  *      amixer set "DVC In Mute" on
   20  *
   21  * You can use Volume Ramp
   22  *
   23  *      amixer set "DVC Out Ramp Up Rate"   "0.125 dB/64 steps"
   24  *      amixer set "DVC Out Ramp Down Rate" "0.125 dB/512 steps"
   25  *      amixer set "DVC Out Ramp" on
   26  *      aplay xxx.wav &
   27  *      amixer set "DVC Out"  80%  // Volume Down
   28  *      amixer set "DVC Out" 100%  // Volume Up
   29  */
   30 
   31 /dts-v1/;
   32 #include "r8a7745-iwg22m.dtsi"
   33 #include <dt-bindings/pwm/pwm.h>
   34 
   35 / {
   36         model = "iWave Systems RainboW-G22D-SODIMM board based on RZ/G1E";
   37         compatible = "iwave,g22d", "iwave,g22m", "renesas,r8a7745";
   38 
   39         aliases {
   40                 ethernet0 = &avb;
   41                 serial3 = &scif4;
   42                 serial5 = &hscif1;
   43         };
   44 
   45         chosen {
   46                 bootargs = "ignore_loglevel rw root=/dev/nfs ip=on";
   47                 stdout-path = "serial3:115200n8";
   48         };
   49 
   50         audio_clock: audio_clock {
   51                 compatible = "fixed-clock";
   52                 #clock-cells = <0>;
   53                 clock-frequency = <26000000>;
   54         };
   55 
   56         backlight_lcd: backlight {
   57                 compatible = "pwm-backlight";
   58                 pwms = <&tpu 3 5000000 PWM_POLARITY_INVERTED>;
   59                 brightness-levels = <0 4 8 16 32 64 128 255>;
   60                 default-brightness-level = <7>;
   61         };
   62 
   63         lcd_panel: lcd {
   64                 compatible = "edt,etm043080dh6gp";
   65                 power-supply = <&vccq_panel>;
   66                 backlight = <&backlight_lcd>;
   67 
   68                 port {
   69                         lcd_in: endpoint {
   70                                 remote-endpoint = <&du_out_rgb0>;
   71                         };
   72                 };
   73         };
   74 
   75         vccq_panel: regulator-vccq-panel {
   76                 compatible = "regulator-fixed";
   77                 regulator-name = "Panel VccQ";
   78                 regulator-min-microvolt = <3300000>;
   79                 regulator-max-microvolt = <3300000>;
   80                 gpio = <&gpio1 13 GPIO_ACTIVE_LOW>;
   81                 enable-active-high;
   82         };
   83 
   84         vccq_sdhi0: regulator-vccq-sdhi0 {
   85                 compatible = "regulator-gpio";
   86 
   87                 regulator-name = "SDHI0 VccQ";
   88                 regulator-min-microvolt = <1800000>;
   89                 regulator-max-microvolt = <3300000>;
   90 
   91                 gpios = <&gpio0 20 GPIO_ACTIVE_LOW>;
   92                 gpios-states = <1>;
   93                 states = <3300000 1>, <1800000 0>;
   94         };
   95 
   96         rsnd_sgtl5000: sound {
   97                 compatible = "simple-audio-card";
   98                 simple-audio-card,format = "i2s";
   99                 simple-audio-card,bitclock-master = <&sndcodec>;
  100                 simple-audio-card,frame-master = <&sndcodec>;
  101 
  102                 sndcpu: simple-audio-card,cpu {
  103                         sound-dai = <&rcar_sound>;
  104                 };
  105 
  106                 sndcodec: simple-audio-card,codec {
  107                         sound-dai = <&sgtl5000>;
  108                 };
  109         };
  110 };
  111 
  112 &avb {
  113         pinctrl-0 = <&avb_pins>;
  114         pinctrl-names = "default";
  115 
  116         phy-handle = <&phy3>;
  117         phy-mode = "gmii";
  118         renesas,no-ether-link;
  119         status = "okay";
  120 
  121         phy3: ethernet-phy@3 {
  122         /*
  123          * On some older versions of the platform (before R4.0) the phy address
  124          * may be 1 or 3. The address is fixed to 3 for R4.0 onwards.
  125          */
  126                 compatible = "ethernet-phy-id0022.1622",
  127                              "ethernet-phy-ieee802.3-c22";
  128                 reg = <3>;
  129                 micrel,led-mode = <1>;
  130         };
  131 };
  132 
  133 &can0 {
  134         pinctrl-0 = <&can0_pins>;
  135         pinctrl-names = "default";
  136 
  137         status = "okay";
  138 };
  139 
  140 &du {
  141         pinctrl-0 = <&du0_pins>;
  142         pinctrl-names = "default";
  143 
  144         status = "okay";
  145 
  146         ports {
  147                 port@0 {
  148                         endpoint {
  149                                 remote-endpoint = <&lcd_in>;
  150                         };
  151                 };
  152         };
  153 };
  154 
  155 &hscif1 {
  156         pinctrl-0 = <&hscif1_pins>;
  157         pinctrl-names = "default";
  158 
  159         uart-has-rtscts;
  160         status = "okay";
  161 };
  162 
  163 &hsusb {
  164         status = "okay";
  165         pinctrl-0 = <&usb0_pins>;
  166         pinctrl-names = "default";
  167 };
  168 
  169 &i2c5 {
  170         pinctrl-0 = <&i2c5_pins>;
  171         pinctrl-names = "default";
  172 
  173         status = "okay";
  174         clock-frequency = <400000>;
  175 
  176         sgtl5000: codec@a {
  177                 compatible = "fsl,sgtl5000";
  178                 #sound-dai-cells = <0>;
  179                 reg = <0x0a>;
  180                 clocks = <&audio_clock>;
  181                 VDDA-supply = <&reg_3p3v>;
  182                 VDDIO-supply = <&reg_3p3v>;
  183         };
  184 
  185         stmpe811@44 {
  186                 compatible = "st,stmpe811";
  187                 reg = <0x44>;
  188                 interrupt-parent = <&gpio4>;
  189                 interrupts = <4 IRQ_TYPE_LEVEL_LOW>;
  190 
  191                 /* 3.25 MHz ADC clock speed */
  192                 st,adc-freq = <1>;
  193                 /* ADC conversion time: 80 clocks */
  194                 st,sample-time = <4>;
  195                 /* 12-bit ADC */
  196                 st,mod-12b = <1>;
  197                 /* internal ADC reference */
  198                 st,ref-sel = <0>;
  199 
  200                 stmpe_touchscreen {
  201                         compatible = "st,stmpe-ts";
  202                         /* 8 sample average control */
  203                         st,ave-ctrl = <3>;
  204                         /* 7 length fractional part in z */
  205                         st,fraction-z = <7>;
  206                         /*
  207                          * 50 mA typical 80 mA max touchscreen drivers
  208                          * current limit value
  209                          */
  210                         st,i-drive = <1>;
  211                         /* 1 ms panel driver settling time */
  212                         st,settling = <3>;
  213                         /* 5 ms touch detect interrupt delay */
  214                         st,touch-det-delay = <5>;
  215                 };
  216         };
  217 };
  218 
  219 &pci1 {
  220         status = "okay";
  221         pinctrl-0 = <&usb1_pins>;
  222         pinctrl-names = "default";
  223 };
  224 
  225 &pfc {
  226         avb_pins: avb {
  227                 groups = "avb_mdio", "avb_gmii";
  228                 function = "avb";
  229         };
  230 
  231         backlight_pins: backlight {
  232                 groups = "tpu_to3_c";
  233                 function = "tpu";
  234         };
  235 
  236         can0_pins: can0 {
  237                 groups = "can0_data";
  238                 function = "can0";
  239         };
  240 
  241         du0_pins: du0 {
  242                 groups = "du0_rgb666", "du0_sync", "du0_disp", "du0_clk0_out";
  243                 function = "du0";
  244         };
  245 
  246         hscif1_pins: hscif1 {
  247                 groups = "hscif1_data", "hscif1_ctrl";
  248                 function = "hscif1";
  249         };
  250 
  251         i2c5_pins: i2c5 {
  252                 groups = "i2c5_b";
  253                 function = "i2c5";
  254         };
  255 
  256         scif4_pins: scif4 {
  257                 groups = "scif4_data_b";
  258                 function = "scif4";
  259         };
  260 
  261         sdhi0_pins: sd0 {
  262                 groups = "sdhi0_data4", "sdhi0_ctrl";
  263                 function = "sdhi0";
  264                 power-source = <3300>;
  265         };
  266 
  267         sound_pins: sound {
  268                 groups = "ssi34_ctrl", "ssi3_data", "ssi4_data";
  269                 function = "ssi";
  270         };
  271 
  272         usb0_pins: usb0 {
  273                 groups = "usb0";
  274                 function = "usb0";
  275         };
  276 
  277         usb1_pins: usb1 {
  278                 groups = "usb1";
  279                 function = "usb1";
  280         };
  281 };
  282 
  283 &rcar_sound {
  284         pinctrl-0 = <&sound_pins>;
  285         pinctrl-names = "default";
  286         status = "okay";
  287 
  288         /* Single DAI */
  289 
  290         #sound-dai-cells = <0>;
  291 
  292         rcar_sound,dai {
  293                 dai0 {
  294                         playback = <&ssi3>, <&src3>, <&dvc0>;
  295                         capture = <&ssi4>, <&src4>, <&dvc1>;
  296                 };
  297         };
  298 };
  299 
  300 &scif4 {
  301         pinctrl-0 = <&scif4_pins>;
  302         pinctrl-names = "default";
  303 
  304         status = "okay";
  305 };
  306 
  307 &sdhi0 {
  308         pinctrl-0 = <&sdhi0_pins>;
  309         pinctrl-names = "default";
  310 
  311         vmmc-supply = <&reg_3p3v>;
  312         vqmmc-supply = <&vccq_sdhi0>;
  313         cd-gpios = <&gpio6 6 GPIO_ACTIVE_LOW>;
  314         status = "okay";
  315 };
  316 
  317 &ssi4 {
  318         shared-pin;
  319 };
  320 
  321 &tpu {
  322         pinctrl-0 = <&backlight_pins>;
  323         pinctrl-names = "default";
  324         status = "okay";
  325 };
  326 
  327 &usbphy {
  328         status = "okay";
  329 };

Cache object: 3523bbb6d5e0df3f6f3c51d4d3094a39


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