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/mips/mscc/ocelot.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 OR MIT)
    2 /* Copyright (c) 2017 Microsemi Corporation */
    3 
    4 / {
    5         #address-cells = <1>;
    6         #size-cells = <1>;
    7         compatible = "mscc,ocelot";
    8 
    9         cpus {
   10                 #address-cells = <1>;
   11                 #size-cells = <0>;
   12 
   13                 cpu@0 {
   14                         compatible = "mips,mips24KEc";
   15                         device_type = "cpu";
   16                         clocks = <&cpu_clk>;
   17                         reg = <0>;
   18                 };
   19         };
   20 
   21         aliases {
   22                 serial0 = &uart0;
   23         };
   24 
   25         cpuintc: interrupt-controller {
   26                 #address-cells = <0>;
   27                 #interrupt-cells = <1>;
   28                 interrupt-controller;
   29                 compatible = "mti,cpu-interrupt-controller";
   30         };
   31 
   32         cpu_clk: cpu-clock {
   33                 compatible = "fixed-clock";
   34                 #clock-cells = <0>;
   35                 clock-frequency = <500000000>;
   36         };
   37 
   38         ahb_clk: ahb-clk {
   39                 compatible = "fixed-factor-clock";
   40                 #clock-cells = <0>;
   41                 clocks = <&cpu_clk>;
   42                 clock-div = <2>;
   43                 clock-mult = <1>;
   44         };
   45 
   46         ahb@70000000 {
   47                 compatible = "simple-bus";
   48                 #address-cells = <1>;
   49                 #size-cells = <1>;
   50                 ranges = <0 0x70000000 0x2000000>;
   51 
   52                 interrupt-parent = <&intc>;
   53 
   54                 cpu_ctrl: syscon@0 {
   55                         compatible = "mscc,ocelot-cpu-syscon", "syscon";
   56                         reg = <0x0 0x2c>;
   57                 };
   58 
   59                 intc: interrupt-controller@70 {
   60                         compatible = "mscc,ocelot-icpu-intr";
   61                         reg = <0x70 0x70>;
   62                         #interrupt-cells = <1>;
   63                         interrupt-controller;
   64                         interrupt-parent = <&cpuintc>;
   65                         interrupts = <2>;
   66                 };
   67 
   68                 uart0: serial@100000 {
   69                         pinctrl-0 = <&uart_pins>;
   70                         pinctrl-names = "default";
   71                         compatible = "ns16550a";
   72                         reg = <0x100000 0x20>;
   73                         interrupts = <6>;
   74                         clocks = <&ahb_clk>;
   75                         reg-io-width = <4>;
   76                         reg-shift = <2>;
   77 
   78                         status = "disabled";
   79                 };
   80 
   81                 i2c: i2c@100400 {
   82                         compatible = "mscc,ocelot-i2c", "snps,designware-i2c";
   83                         pinctrl-0 = <&i2c_pins>;
   84                         pinctrl-names = "default";
   85                         reg = <0x100400 0x100>, <0x198 0x8>;
   86                         #address-cells = <1>;
   87                         #size-cells = <0>;
   88                         interrupts = <8>;
   89                         clocks = <&ahb_clk>;
   90 
   91                         status = "disabled";
   92                 };
   93 
   94                 uart2: serial@100800 {
   95                         pinctrl-0 = <&uart2_pins>;
   96                         pinctrl-names = "default";
   97                         compatible = "ns16550a";
   98                         reg = <0x100800 0x20>;
   99                         interrupts = <7>;
  100                         clocks = <&ahb_clk>;
  101                         reg-io-width = <4>;
  102                         reg-shift = <2>;
  103 
  104                         status = "disabled";
  105                 };
  106 
  107                 spi: spi@101000 {
  108                         compatible = "mscc,ocelot-spi", "snps,dw-apb-ssi";
  109                         #address-cells = <1>;
  110                         #size-cells = <0>;
  111                         reg = <0x101000 0x100>, <0x3c 0x18>;
  112                         interrupts = <9>;
  113                         clocks = <&ahb_clk>;
  114 
  115                         status = "disabled";
  116                 };
  117 
  118                 switch@1010000 {
  119                         compatible = "mscc,vsc7514-switch";
  120                         reg = <0x1010000 0x10000>,
  121                               <0x1030000 0x10000>,
  122                               <0x1080000 0x100>,
  123                               <0x10e0000 0x10000>,
  124                               <0x11e0000 0x100>,
  125                               <0x11f0000 0x100>,
  126                               <0x1200000 0x100>,
  127                               <0x1210000 0x100>,
  128                               <0x1220000 0x100>,
  129                               <0x1230000 0x100>,
  130                               <0x1240000 0x100>,
  131                               <0x1250000 0x100>,
  132                               <0x1260000 0x100>,
  133                               <0x1270000 0x100>,
  134                               <0x1280000 0x100>,
  135                               <0x1800000 0x80000>,
  136                               <0x1880000 0x10000>,
  137                               <0x1040000 0x10000>,
  138                               <0x1050000 0x10000>,
  139                               <0x1060000 0x10000>,
  140                               <0x1a0 0x1c4>;
  141                         reg-names = "sys", "rew", "qs", "ptp", "port0", "port1",
  142                                     "port2", "port3", "port4", "port5", "port6",
  143                                     "port7", "port8", "port9", "port10", "qsys",
  144                                     "ana", "s0", "s1", "s2", "fdma";
  145                         interrupts = <18 21 22 16>;
  146                         interrupt-names = "ptp_rdy", "xtr", "inj", "fdma";
  147 
  148                         ethernet-ports {
  149                                 #address-cells = <1>;
  150                                 #size-cells = <0>;
  151 
  152                                 port0: port@0 {
  153                                         reg = <0>;
  154                                         status = "disabled";
  155                                 };
  156                                 port1: port@1 {
  157                                         reg = <1>;
  158                                         status = "disabled";
  159                                 };
  160                                 port2: port@2 {
  161                                         reg = <2>;
  162                                         status = "disabled";
  163                                 };
  164                                 port3: port@3 {
  165                                         reg = <3>;
  166                                         status = "disabled";
  167                                 };
  168                                 port4: port@4 {
  169                                         reg = <4>;
  170                                         status = "disabled";
  171                                 };
  172                                 port5: port@5 {
  173                                         reg = <5>;
  174                                         status = "disabled";
  175                                 };
  176                                 port6: port@6 {
  177                                         reg = <6>;
  178                                         status = "disabled";
  179                                 };
  180                                 port7: port@7 {
  181                                         reg = <7>;
  182                                         status = "disabled";
  183                                 };
  184                                 port8: port@8 {
  185                                         reg = <8>;
  186                                         status = "disabled";
  187                                 };
  188                                 port9: port@9 {
  189                                         reg = <9>;
  190                                         status = "disabled";
  191                                 };
  192                                 port10: port@10 {
  193                                         reg = <10>;
  194                                         status = "disabled";
  195                                 };
  196                         };
  197                 };
  198 
  199                 reset@1070008 {
  200                         compatible = "mscc,ocelot-chip-reset";
  201                         reg = <0x1070008 0x4>;
  202                 };
  203 
  204                 gpio: pinctrl@1070034 {
  205                         compatible = "mscc,ocelot-pinctrl";
  206                         reg = <0x1070034 0x68>;
  207                         gpio-controller;
  208                         #gpio-cells = <2>;
  209                         gpio-ranges = <&gpio 0 0 22>;
  210                         interrupt-controller;
  211                         interrupts = <13>;
  212                         #interrupt-cells = <2>;
  213 
  214                         i2c_pins: i2c-pins {
  215                                 pins = "GPIO_16", "GPIO_17";
  216                                 function = "twi";
  217                         };
  218 
  219                         uart_pins: uart-pins {
  220                                 pins = "GPIO_6", "GPIO_7";
  221                                 function = "uart";
  222                         };
  223 
  224                         uart2_pins: uart2-pins {
  225                                 pins = "GPIO_12", "GPIO_13";
  226                                 function = "uart2";
  227                         };
  228 
  229                         miim1_pins: miim1-pins {
  230                                 pins = "GPIO_14", "GPIO_15";
  231                                 function = "miim";
  232                         };
  233 
  234                 };
  235 
  236                 mdio0: mdio@107009c {
  237                         #address-cells = <1>;
  238                         #size-cells = <0>;
  239                         compatible = "mscc,ocelot-miim";
  240                         reg = <0x107009c 0x24>, <0x10700f0 0x8>;
  241                         interrupts = <14>;
  242                         status = "disabled";
  243 
  244                         phy0: ethernet-phy@0 {
  245                                 reg = <0>;
  246                         };
  247                         phy1: ethernet-phy@1 {
  248                                 reg = <1>;
  249                         };
  250                         phy2: ethernet-phy@2 {
  251                                 reg = <2>;
  252                         };
  253                         phy3: ethernet-phy@3 {
  254                                 reg = <3>;
  255                         };
  256                 };
  257 
  258                 mdio1: mdio@10700c0 {
  259                         #address-cells = <1>;
  260                         #size-cells = <0>;
  261                         compatible = "mscc,ocelot-miim";
  262                         reg = <0x10700c0 0x24>;
  263                         interrupts = <15>;
  264                         pinctrl-names = "default";
  265                         pinctrl-0 = <&miim1_pins>;
  266                         status = "disabled";
  267                 };
  268 
  269                 hsio: syscon@10d0000 {
  270                         compatible = "mscc,ocelot-hsio", "syscon", "simple-mfd";
  271                         reg = <0x10d0000 0x10000>;
  272 
  273                         serdes: serdes {
  274                                 compatible = "mscc,vsc7514-serdes";
  275                                 #phy-cells = <2>;
  276                         };
  277                 };
  278         };
  279 };

Cache object: faecaf8f2906b41c7c81af7848f72cd4


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