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/renesas/ulcb-kf.dtsi

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 Kingfisher (ULCB extension) board
    4  *
    5  * Copyright (C) 2017 Renesas Electronics Corp.
    6  * Copyright (C) 2017 Cogent Embedded, Inc.
    7  */
    8 
    9 /*
   10  * SSI-PCM3168A
   11  *      aplay   -D plughw:0,2 xxx.wav
   12  *      arecord -D plughw:0,3 xxx.wav
   13  */
   14 
   15 / {
   16         aliases {
   17                 serial1 = &hscif0;
   18                 serial2 = &scif1;
   19                 mmc2 = &sdhi3;
   20         };
   21 
   22         clksndsel: clksndsel {
   23                 #clock-cells = <0>;
   24                 compatible = "gpio-mux-clock";
   25                 clocks = <&cs2000>, <&audio_clk_a>; /* clk8snd, clksnd */
   26                 select-gpios = <&gpio_exp_75 13 GPIO_ACTIVE_HIGH>;
   27         };
   28 
   29         hdmi1-out {
   30                 compatible = "hdmi-connector";
   31                 type = "a";
   32 
   33                 port {
   34                         hdmi1_con: endpoint {
   35                                 remote-endpoint = <&adv7513_out>;
   36                         };
   37                 };
   38         };
   39 
   40         accel_3v3: regulator-acc-3v3 {
   41                 compatible = "regulator-fixed";
   42                 regulator-name = "accel-3v3";
   43                 regulator-min-microvolt = <3300000>;
   44                 regulator-max-microvolt = <3300000>;
   45         };
   46 
   47         hdmi_1v8: regulator-hdmi-1v8 {
   48                 compatible = "regulator-fixed";
   49                 regulator-name = "hdmi-1v8";
   50                 regulator-min-microvolt = <1800000>;
   51                 regulator-max-microvolt = <1800000>;
   52         };
   53 
   54         hdmi_3v3: regulator-hdmi-3v3 {
   55                 compatible = "regulator-fixed";
   56                 regulator-name = "hdmi-3v3";
   57                 regulator-min-microvolt = <3300000>;
   58                 regulator-max-microvolt = <3300000>;
   59         };
   60 
   61         snd_3p3v: regulator-snd_3p3v {
   62                 compatible = "regulator-fixed";
   63                 regulator-name = "snd-3.3v";
   64                 regulator-min-microvolt = <3300000>;
   65                 regulator-max-microvolt = <3300000>;
   66         };
   67 
   68         snd_vcc5v: regulator-snd_vcc5v {
   69                 compatible = "regulator-fixed";
   70                 regulator-name = "snd-vcc5v";
   71                 regulator-min-microvolt = <5000000>;
   72                 regulator-max-microvolt = <5000000>;
   73         };
   74 
   75         wlan_en: regulator-wlan_en {
   76                 compatible = "regulator-fixed";
   77                 regulator-name = "wlan-en-regulator";
   78 
   79                 regulator-min-microvolt = <3300000>;
   80                 regulator-max-microvolt = <3300000>;
   81 
   82                 gpio = <&gpio_exp_74 4 GPIO_ACTIVE_HIGH>;
   83                 startup-delay-us = <70000>;
   84                 enable-active-high;
   85         };
   86 };
   87 
   88 &can0 {
   89         pinctrl-0 = <&can0_pins>;
   90         pinctrl-names = "default";
   91         status = "okay";
   92 };
   93 
   94 &can1 {
   95         pinctrl-0 = <&can1_pins>;
   96         pinctrl-names = "default";
   97         status = "okay";
   98 };
   99 
  100 &du {
  101         ports {
  102                 port@0 {
  103                         du_out_rgb: endpoint {
  104                                 remote-endpoint = <&adv7513_in>;
  105                         };
  106                 };
  107         };
  108 };
  109 
  110 &ehci0 {
  111         dr_mode = "otg";
  112         status = "okay";
  113 };
  114 
  115 &hscif0 {
  116         pinctrl-0 = <&hscif0_pins>;
  117         pinctrl-names = "default";
  118         uart-has-rtscts;
  119 
  120         status = "okay";
  121 };
  122 
  123 &hsusb {
  124         dr_mode = "otg";
  125         status = "okay";
  126 };
  127 
  128 &i2c2 {
  129         i2cswitch2: i2c-switch@71 {
  130                 compatible = "nxp,pca9548";
  131                 #address-cells = <1>;
  132                 #size-cells = <0>;
  133                 reg = <0x71>;
  134                 reset-gpios = <&gpio5 3 GPIO_ACTIVE_LOW>;
  135 
  136                 /* HDMIoSDA, HDMIoSCL */
  137                 i2c@4 {
  138                         #address-cells = <1>;
  139                         #size-cells = <0>;
  140                         reg = <4>;
  141 
  142                         hdmi@3d {
  143                                 compatible = "adi,adv7513";
  144                                 reg = <0x3d>;
  145 
  146                                 pinctrl-0 = <&hdmi1_pins>;
  147                                 pinctrl-names = "default";
  148 
  149                                 interrupt-parent = <&gpio2>;
  150                                 interrupts = <14 IRQ_TYPE_LEVEL_LOW>;
  151 
  152                                 clocks = <&cs2000>;
  153                                 clock-names = "cec";
  154 
  155                                 pd-gpios = <&gpio_exp_75 5 GPIO_ACTIVE_LOW>;
  156 
  157                                 avdd-supply = <&hdmi_1v8>;
  158                                 dvdd-supply = <&hdmi_1v8>;
  159                                 pvdd-supply = <&hdmi_1v8>;
  160                                 dvdd-3v-supply = <&hdmi_3v3>;
  161                                 bgvdd-supply = <&hdmi_1v8>;
  162 
  163                                 adi,input-depth = <8>;
  164                                 adi,input-colorspace = "rgb";
  165                                 adi,input-clock = "1x";
  166 
  167                                 ports {
  168                                         #address-cells = <1>;
  169                                         #size-cells = <0>;
  170 
  171                                         port@0 {
  172                                                 reg = <0>;
  173                                                 adv7513_in: endpoint {
  174                                                         remote-endpoint = <&du_out_rgb>;
  175                                                 };
  176                                         };
  177 
  178                                         port@1 {
  179                                                 reg = <1>;
  180                                                 adv7513_out: endpoint {
  181                                                         remote-endpoint = <&hdmi1_con>;
  182                                                 };
  183                                         };
  184                                 };
  185                         };
  186                 };
  187 
  188                 /* Audio_SDA, Audio_SCL */
  189                 i2c@7 {
  190                         #address-cells = <1>;
  191                         #size-cells = <0>;
  192                         reg = <7>;
  193 
  194                         accelerometer@1d {
  195                                 compatible = "st,lsm9ds0-imu";
  196                                 reg = <0x1d>;
  197 
  198                                 vdd-supply = <&accel_3v3>;
  199                                 vddio-supply = <&accel_3v3>;
  200                         };
  201 
  202                         pcm3168a: audio-codec@44 {
  203                                 #sound-dai-cells = <0>;
  204                                 compatible = "ti,pcm3168a";
  205                                 reg = <0x44>;
  206                                 clocks = <&clksndsel>;
  207                                 clock-names = "scki";
  208 
  209                                 VDD1-supply = <&snd_3p3v>;
  210                                 VDD2-supply = <&snd_3p3v>;
  211                                 VCCAD1-supply = <&snd_vcc5v>;
  212                                 VCCAD2-supply = <&snd_vcc5v>;
  213                                 VCCDA1-supply = <&snd_vcc5v>;
  214                                 VCCDA2-supply = <&snd_vcc5v>;
  215 
  216                                 ports {
  217                                         #address-cells = <1>;
  218                                         #size-cells = <0>;
  219                                         mclk-fs = <512>;
  220                                         port@0 {
  221                                                 reg = <0>;
  222                                                 pcm3168a_endpoint_p: endpoint {
  223                                                         remote-endpoint = <&rsnd_for_pcm3168a_play>;
  224                                                         clocks = <&clksndsel>;
  225                                                 };
  226                                         };
  227                                         port@1 {
  228                                                 reg = <1>;
  229                                                 pcm3168a_endpoint_c: endpoint {
  230                                                         remote-endpoint = <&rsnd_for_pcm3168a_capture>;
  231                                                         clocks = <&clksndsel>;
  232                                                 };
  233                                         };
  234                                 };
  235                         };
  236 
  237                         gyroscope@6b {
  238                                 compatible = "st,lsm9ds0-gyro";
  239                                 reg = <0x6b>;
  240 
  241                                 vdd-supply = <&accel_3v3>;
  242                                 vddio-supply = <&accel_3v3>;
  243                         };
  244                 };
  245         };
  246 
  247         /* U11 */
  248         gpio_exp_74: gpio@74 {
  249                 compatible = "ti,tca9539";
  250                 reg = <0x74>;
  251                 gpio-controller;
  252                 #gpio-cells = <2>;
  253                 interrupt-controller;
  254                 interrupt-parent = <&gpio6>;
  255                 interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
  256 
  257                 audio-out-off-hog {
  258                         gpio-hog;
  259                         gpios = <0 GPIO_ACTIVE_HIGH>; /* P00 */
  260                         output-high;
  261                         line-name = "Audio_Out_OFF";
  262                 };
  263 
  264                 hub-pwen-hog {
  265                         gpio-hog;
  266                         gpios = <6 GPIO_ACTIVE_HIGH>;
  267                         output-high;
  268                         line-name = "HUB pwen";
  269                 };
  270 
  271                 hub-rst-hog {
  272                         gpio-hog;
  273                         gpios = <7 GPIO_ACTIVE_HIGH>;
  274                         output-high;
  275                         line-name = "HUB rst";
  276                 };
  277 
  278                 otg-extlpn-hog {
  279                         gpio-hog;
  280                         gpios = <9 GPIO_ACTIVE_HIGH>;
  281                         output-high;
  282                         line-name = "OTG EXTLPn";
  283                 };
  284 
  285                 otg-offvbusn-hog {
  286                         gpio-hog;
  287                         gpios = <8 GPIO_ACTIVE_HIGH>;
  288                         output-low;
  289                         line-name = "OTG OFFVBUSn";
  290                 };
  291 
  292                 sd-wifi-mux-hog {
  293                         gpio-hog;
  294                         gpios = <5 GPIO_ACTIVE_HIGH>;
  295                         output-low;     /* Connect WL1837 */
  296                         line-name = "SD WiFi mux";
  297                 };
  298 
  299                 snd-rst-hog {
  300                         gpio-hog;
  301                         gpios = <15 GPIO_ACTIVE_HIGH>; /* P17 */
  302                         output-high;
  303                         line-name = "SND_RST";
  304                 };
  305         };
  306 
  307         /* U5 */
  308         gpio_exp_75: gpio@75 {
  309                 compatible = "ti,tca9539";
  310                 reg = <0x75>;
  311                 gpio-controller;
  312                 #gpio-cells = <2>;
  313                 interrupt-controller;
  314                 interrupt-parent = <&gpio6>;
  315                 interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
  316         };
  317 };
  318 
  319 &i2c4 {
  320         i2cswitch4: i2c-switch@71 {
  321                 compatible = "nxp,pca9548";
  322                 #address-cells = <1>;
  323                 #size-cells = <0>;
  324                 reg = <0x71>;
  325                 reset-gpios = <&gpio3 15 GPIO_ACTIVE_LOW>;
  326         };
  327 
  328         gpio_exp_76: gpio@76 {
  329                 compatible = "ti,tca9539";
  330                 reg = <0x76>;
  331                 gpio-controller;
  332                 #gpio-cells = <2>;
  333                 interrupt-controller;
  334                 interrupt-parent = <&gpio7>;
  335                 interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
  336         };
  337 
  338         gpio_exp_77: gpio@77 {
  339                 compatible = "ti,tca9539";
  340                 reg = <0x77>;
  341                 gpio-controller;
  342                 #gpio-cells = <2>;
  343                 interrupt-controller;
  344                 interrupt-parent = <&gpio5>;
  345                 interrupts = <9 IRQ_TYPE_EDGE_FALLING>;
  346         };
  347 };
  348 
  349 &ohci0 {
  350         dr_mode = "otg";
  351         status = "okay";
  352 };
  353 
  354 &pcie_bus_clk {
  355         clock-frequency = <100000000>;
  356 };
  357 
  358 &pciec0 {
  359         status = "okay";
  360 };
  361 
  362 &pciec1 {
  363         status = "okay";
  364 };
  365 
  366 &pfc {
  367         can0_pins: can0 {
  368                 groups = "can0_data_a";
  369                 function = "can0";
  370         };
  371 
  372         can1_pins: can1 {
  373                 groups = "can1_data";
  374                 function = "can1";
  375         };
  376 
  377         hdmi1_pins: hdmi1 {
  378                 adv7513-interrupt {
  379                         pins = "GP_2_14";
  380                         bias-pull-up;
  381                 };
  382 
  383                 du {
  384                         groups = "du_rgb888", "du_sync", "du_clk_out_0",
  385                                  "du_disp";
  386                         function = "du";
  387                 };
  388         };
  389 
  390         hscif0_pins: hscif0 {
  391                 groups = "hscif0_data", "hscif0_ctrl";
  392                 function = "hscif0";
  393         };
  394 
  395         scif1_pins: scif1 {
  396                 groups = "scif1_data_b", "scif1_ctrl";
  397                 function = "scif1";
  398         };
  399 
  400         sdhi3_pins: sdhi3 {
  401                 groups = "sdhi3_data4", "sdhi3_ctrl";
  402                 function = "sdhi3";
  403                 power-source = <3300>;
  404         };
  405 
  406         sound_pcm_pins: sound-pcm {
  407                 groups = "ssi349_ctrl", "ssi3_data", "ssi4_data";
  408                 function = "ssi";
  409         };
  410 
  411         usb0_pins: usb0 {
  412                 groups = "usb0";
  413                 function = "usb0";
  414         };
  415 };
  416 
  417 &rcar_sound {
  418         pinctrl-0 = <&sound_pins
  419                      &sound_clk_pins
  420                      &sound_pcm_pins>;
  421 
  422         ports {
  423                 /* rsnd_port0/1 are defined in ulcb.dtsi */
  424                 rsnd_port2: port@2 {
  425                         reg = <2>;
  426                         rsnd_for_pcm3168a_play: endpoint {
  427                                 remote-endpoint = <&pcm3168a_endpoint_p>;
  428                                 bitclock-master;
  429                                 frame-master;
  430                                 dai-tdm-slot-num = <8>;
  431                                 playback = <&ssi3>;
  432                         };
  433                 };
  434                 rsnd_port3: port@3 {
  435                         reg = <3>;
  436                         rsnd_for_pcm3168a_capture: endpoint {
  437                                 remote-endpoint = <&pcm3168a_endpoint_c>;
  438                                 bitclock-master;
  439                                 frame-master;
  440                                 dai-tdm-slot-num = <6>;
  441                                 capture = <&ssi4>;
  442                         };
  443                 };
  444         };
  445 };
  446 
  447 &scif1 {
  448         pinctrl-0 = <&scif1_pins>;
  449         pinctrl-names = "default";
  450         uart-has-rtscts;
  451 
  452         status = "okay";
  453 };
  454 
  455 &sdhi3 {
  456         pinctrl-0 = <&sdhi3_pins>;
  457         pinctrl-names = "default";
  458 
  459         vmmc-supply = <&wlan_en>;
  460         vqmmc-supply = <&wlan_en>;
  461         bus-width = <4>;
  462         no-1-8-v;
  463         non-removable;
  464         cap-power-off-card;
  465         keep-power-in-suspend;
  466         max-frequency = <26000000>;
  467         status = "okay";
  468 
  469         #address-cells = <1>;
  470         #size-cells = <0>;
  471         wlcore: wlcore@2 {
  472                 compatible = "ti,wl1837";
  473                 reg = <2>;
  474                 interrupt-parent = <&gpio1>;
  475                 interrupts = <25 IRQ_TYPE_EDGE_FALLING>;
  476         };
  477 };
  478 
  479 &sound_card {
  480         links = <&rsnd_port0    /* ak4613 */
  481                  &rsnd_port1    /* HDMI0  */
  482                  &rsnd_port2    /* pcm3168a playback */
  483                  &rsnd_port3    /* pcm3168a capture  */
  484                 >;
  485 };
  486 
  487 &ssi4 {
  488         shared-pin;
  489 };
  490 
  491 &usb2_phy0 {
  492         pinctrl-0 = <&usb0_pins>;
  493         pinctrl-names = "default";
  494 
  495         status = "okay";
  496 };
  497 
  498 &xhci0 {
  499         status = "okay";
  500 };

Cache object: f79d71e506c740da52d84eae4530263d


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