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/ingenic/jz4770.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 #include <dt-bindings/clock/ingenic,jz4770-cgu.h>
    3 #include <dt-bindings/clock/ingenic,tcu.h>
    4 
    5 / {
    6         #address-cells = <1>;
    7         #size-cells = <1>;
    8         compatible = "ingenic,jz4770";
    9 
   10         cpus {
   11                 #address-cells = <1>;
   12                 #size-cells = <0>;
   13 
   14                 cpu0: cpu@0 {
   15                         device_type = "cpu";
   16                         compatible = "ingenic,xburst-fpu1.0-mxu1.1";
   17                         reg = <0>;
   18 
   19                         clocks = <&cgu JZ4770_CLK_CCLK>;
   20                         clock-names = "cpu";
   21                 };
   22         };
   23 
   24         cpuintc: interrupt-controller {
   25                 #address-cells = <0>;
   26                 #interrupt-cells = <1>;
   27                 interrupt-controller;
   28                 compatible = "mti,cpu-interrupt-controller";
   29         };
   30 
   31         intc: interrupt-controller@10001000 {
   32                 compatible = "ingenic,jz4770-intc";
   33                 reg = <0x10001000 0x40>;
   34 
   35                 interrupt-controller;
   36                 #interrupt-cells = <1>;
   37 
   38                 interrupt-parent = <&cpuintc>;
   39                 interrupts = <2>;
   40         };
   41 
   42         ext: ext {
   43                 compatible = "fixed-clock";
   44                 #clock-cells = <0>;
   45         };
   46 
   47         osc32k: osc32k {
   48                 compatible = "fixed-clock";
   49                 #clock-cells = <0>;
   50                 clock-frequency = <32768>;
   51         };
   52 
   53         cgu: jz4770-cgu@10000000 {
   54                 compatible = "ingenic,jz4770-cgu", "simple-mfd";
   55                 reg = <0x10000000 0x100>;
   56                 #address-cells = <1>;
   57                 #size-cells = <1>;
   58                 ranges = <0x0 0x10000000 0x100>;
   59 
   60                 clocks = <&ext>, <&osc32k>;
   61                 clock-names = "ext", "osc32k";
   62 
   63                 #clock-cells = <1>;
   64 
   65                 otg_phy: usb-phy@3c {
   66                         compatible = "ingenic,jz4770-phy";
   67                         reg = <0x3c 0x10>;
   68 
   69                         clocks = <&cgu JZ4770_CLK_OTG_PHY>;
   70 
   71                         #phy-cells = <0>;
   72                 };
   73         };
   74 
   75         tcu: timer@10002000 {
   76                 compatible = "ingenic,jz4770-tcu", "simple-mfd";
   77                 reg = <0x10002000 0x1000>;
   78                 #address-cells = <1>;
   79                 #size-cells = <1>;
   80                 ranges = <0x0 0x10002000 0x1000>;
   81 
   82                 #clock-cells = <1>;
   83 
   84                 clocks = <&cgu JZ4770_CLK_RTC>,
   85                          <&cgu JZ4770_CLK_EXT>,
   86                          <&cgu JZ4770_CLK_PCLK>;
   87                 clock-names = "rtc", "ext", "pclk";
   88 
   89                 interrupt-controller;
   90                 #interrupt-cells = <1>;
   91 
   92                 interrupt-parent = <&intc>;
   93                 interrupts = <27 26 25>;
   94 
   95                 watchdog: watchdog@0 {
   96                         compatible = "ingenic,jz4770-watchdog",
   97                                      "ingenic,jz4740-watchdog";
   98                         reg = <0x0 0xc>;
   99 
  100                         clocks = <&tcu TCU_CLK_WDT>;
  101                         clock-names = "wdt";
  102                 };
  103 
  104                 pwm: pwm@40 {
  105                         compatible = "ingenic,jz4770-pwm", "ingenic,jz4740-pwm";
  106                         reg = <0x40 0x80>;
  107 
  108                         #pwm-cells = <3>;
  109 
  110                         clocks = <&tcu TCU_CLK_TIMER0>, <&tcu TCU_CLK_TIMER1>,
  111                                  <&tcu TCU_CLK_TIMER2>, <&tcu TCU_CLK_TIMER3>,
  112                                  <&tcu TCU_CLK_TIMER4>, <&tcu TCU_CLK_TIMER5>,
  113                                  <&tcu TCU_CLK_TIMER6>, <&tcu TCU_CLK_TIMER7>;
  114                         clock-names = "timer0", "timer1", "timer2", "timer3",
  115                                       "timer4", "timer5", "timer6", "timer7";
  116                 };
  117 
  118                 ost: timer@e0 {
  119                         compatible = "ingenic,jz4770-ost";
  120                         reg = <0xe0 0x20>;
  121 
  122                         clocks = <&tcu TCU_CLK_OST>;
  123                         clock-names = "ost";
  124 
  125                         interrupts = <15>;
  126                 };
  127         };
  128 
  129         rtc: rtc@10003000 {
  130                 compatible = "ingenic,jz4770-rtc", "ingenic,jz4760-rtc";
  131                 reg = <0x10003000 0x40>;
  132 
  133                 interrupt-parent = <&intc>;
  134                 interrupts = <32>;
  135         };
  136 
  137         pinctrl: pin-controller@10010000 {
  138                 compatible = "ingenic,jz4770-pinctrl";
  139                 reg = <0x10010000 0x600>;
  140 
  141                 #address-cells = <1>;
  142                 #size-cells = <0>;
  143 
  144                 gpa: gpio@0 {
  145                         compatible = "ingenic,jz4770-gpio";
  146                         reg = <0>;
  147 
  148                         gpio-controller;
  149                         gpio-ranges = <&pinctrl 0 0 32>;
  150                         #gpio-cells = <2>;
  151 
  152                         interrupt-controller;
  153                         #interrupt-cells = <2>;
  154 
  155                         interrupt-parent = <&intc>;
  156                         interrupts = <17>;
  157                 };
  158 
  159                 gpb: gpio@1 {
  160                         compatible = "ingenic,jz4770-gpio";
  161                         reg = <1>;
  162 
  163                         gpio-controller;
  164                         gpio-ranges = <&pinctrl 0 32 32>;
  165                         #gpio-cells = <2>;
  166 
  167                         interrupt-controller;
  168                         #interrupt-cells = <2>;
  169 
  170                         interrupt-parent = <&intc>;
  171                         interrupts = <16>;
  172                 };
  173 
  174                 gpc: gpio@2 {
  175                         compatible = "ingenic,jz4770-gpio";
  176                         reg = <2>;
  177 
  178                         gpio-controller;
  179                         gpio-ranges = <&pinctrl 0 64 32>;
  180                         #gpio-cells = <2>;
  181 
  182                         interrupt-controller;
  183                         #interrupt-cells = <2>;
  184 
  185                         interrupt-parent = <&intc>;
  186                         interrupts = <15>;
  187                 };
  188 
  189                 gpd: gpio@3 {
  190                         compatible = "ingenic,jz4770-gpio";
  191                         reg = <3>;
  192 
  193                         gpio-controller;
  194                         gpio-ranges = <&pinctrl 0 96 32>;
  195                         #gpio-cells = <2>;
  196 
  197                         interrupt-controller;
  198                         #interrupt-cells = <2>;
  199 
  200                         interrupt-parent = <&intc>;
  201                         interrupts = <14>;
  202                 };
  203 
  204                 gpe: gpio@4 {
  205                         compatible = "ingenic,jz4770-gpio";
  206                         reg = <4>;
  207 
  208                         gpio-controller;
  209                         gpio-ranges = <&pinctrl 0 128 32>;
  210                         #gpio-cells = <2>;
  211 
  212                         interrupt-controller;
  213                         #interrupt-cells = <2>;
  214 
  215                         interrupt-parent = <&intc>;
  216                         interrupts = <13>;
  217                 };
  218 
  219                 gpf: gpio@5 {
  220                         compatible = "ingenic,jz4770-gpio";
  221                         reg = <5>;
  222 
  223                         gpio-controller;
  224                         gpio-ranges = <&pinctrl 0 160 32>;
  225                         #gpio-cells = <2>;
  226 
  227                         interrupt-controller;
  228                         #interrupt-cells = <2>;
  229 
  230                         interrupt-parent = <&intc>;
  231                         interrupts = <12>;
  232                 };
  233         };
  234 
  235         aic: audio-controller@10020000 {
  236                 compatible = "ingenic,jz4770-i2s";
  237                 reg = <0x10020000 0x94>;
  238 
  239                 #sound-dai-cells = <0>;
  240 
  241                 clocks = <&cgu JZ4770_CLK_AIC>, <&cgu JZ4770_CLK_I2S>,
  242                          <&cgu JZ4770_CLK_EXT>, <&cgu JZ4770_CLK_PLL0>;
  243                 clock-names = "aic", "i2s", "ext", "pll half";
  244 
  245                 interrupt-parent = <&intc>;
  246                 interrupts = <34>;
  247 
  248                 dmas = <&dmac0 25 0xffffffff>, <&dmac0 24 0xffffffff>;
  249                 dma-names = "rx", "tx";
  250         };
  251 
  252         codec: audio-codec@100200a0 {
  253                 compatible = "ingenic,jz4770-codec";
  254                 reg = <0x100200a4 0x8>;
  255 
  256                 #sound-dai-cells = <0>;
  257 
  258                 clocks = <&cgu JZ4770_CLK_AIC>;
  259                 clock-names = "aic";
  260         };
  261 
  262         mmc0: mmc@10021000 {
  263                 compatible = "ingenic,jz4770-mmc", "ingenic,jz4760-mmc";
  264                 reg = <0x10021000 0x1000>;
  265 
  266                 clocks = <&cgu JZ4770_CLK_MMC0>;
  267                 clock-names = "mmc";
  268 
  269                 interrupt-parent = <&intc>;
  270                 interrupts = <37>;
  271 
  272                 dmas = <&dmac1 27 0xffffffff>, <&dmac1 26 0xffffffff>;
  273                 dma-names = "rx", "tx";
  274 
  275                 cap-sd-highspeed;
  276                 cap-mmc-highspeed;
  277                 cap-sdio-irq;
  278 
  279                 status = "disabled";
  280         };
  281 
  282         mmc1: mmc@10022000 {
  283                 compatible = "ingenic,jz4770-mmc", "ingenic,jz4760-mmc";
  284                 reg = <0x10022000 0x1000>;
  285 
  286                 clocks = <&cgu JZ4770_CLK_MMC1>;
  287                 clock-names = "mmc";
  288 
  289                 interrupt-parent = <&intc>;
  290                 interrupts = <36>;
  291 
  292                 dmas = <&dmac1 31 0xffffffff>, <&dmac1 30 0xffffffff>;
  293                 dma-names = "rx", "tx";
  294 
  295                 cap-sd-highspeed;
  296                 cap-mmc-highspeed;
  297                 cap-sdio-irq;
  298 
  299                 status = "disabled";
  300         };
  301 
  302         mmc2: mmc@10023000 {
  303                 compatible = "ingenic,jz4770-mmc", "ingenic,jz4760-mmc";
  304                 reg = <0x10023000 0x1000>;
  305 
  306                 clocks = <&cgu JZ4770_CLK_MMC2>;
  307                 clock-names = "mmc";
  308 
  309                 interrupt-parent = <&intc>;
  310                 interrupts = <35>;
  311 
  312                 dmas = <&dmac1 37 0xffffffff>, <&dmac1 36 0xffffffff>;
  313                 dma-names = "rx", "tx";
  314 
  315                 cap-sd-highspeed;
  316                 cap-mmc-highspeed;
  317                 cap-sdio-irq;
  318 
  319                 status = "disabled";
  320         };
  321 
  322         uart0: serial@10030000 {
  323                 compatible = "ingenic,jz4770-uart";
  324                 reg = <0x10030000 0x100>;
  325 
  326                 clocks = <&ext>, <&cgu JZ4770_CLK_UART0>;
  327                 clock-names = "baud", "module";
  328 
  329                 interrupt-parent = <&intc>;
  330                 interrupts = <5>;
  331 
  332                 status = "disabled";
  333         };
  334 
  335         uart1: serial@10031000 {
  336                 compatible = "ingenic,jz4770-uart";
  337                 reg = <0x10031000 0x100>;
  338 
  339                 clocks = <&ext>, <&cgu JZ4770_CLK_UART1>;
  340                 clock-names = "baud", "module";
  341 
  342                 interrupt-parent = <&intc>;
  343                 interrupts = <4>;
  344 
  345                 status = "disabled";
  346         };
  347 
  348         uart2: serial@10032000 {
  349                 compatible = "ingenic,jz4770-uart";
  350                 reg = <0x10032000 0x100>;
  351 
  352                 clocks = <&ext>, <&cgu JZ4770_CLK_UART2>;
  353                 clock-names = "baud", "module";
  354 
  355                 interrupt-parent = <&intc>;
  356                 interrupts = <3>;
  357 
  358                 status = "disabled";
  359         };
  360 
  361         uart3: serial@10033000 {
  362                 compatible = "ingenic,jz4770-uart";
  363                 reg = <0x10033000 0x100>;
  364 
  365                 clocks = <&ext>, <&cgu JZ4770_CLK_UART3>;
  366                 clock-names = "baud", "module";
  367 
  368                 interrupt-parent = <&intc>;
  369                 interrupts = <2>;
  370 
  371                 status = "disabled";
  372         };
  373 
  374         adc: adc@10070000 {
  375                 compatible = "ingenic,jz4770-adc";
  376                 reg = <0x10070000 0x30>;
  377 
  378                 #io-channel-cells = <1>;
  379 
  380                 clocks = <&cgu JZ4770_CLK_ADC>;
  381                 clock-names = "adc";
  382 
  383                 interrupt-parent = <&intc>;
  384                 interrupts = <18>;
  385         };
  386 
  387         gpu: gpu@13040000 {
  388                 compatible = "vivante,gc";
  389                 reg = <0x13040000 0x10000>;
  390 
  391                 clocks = <&cgu JZ4770_CLK_GPU>,
  392                          <&cgu JZ4770_CLK_GPU>,
  393                          <&cgu JZ4770_CLK_GPU>;
  394                 clock-names = "bus", "core", "shader";
  395 
  396                 interrupt-parent = <&intc>;
  397                 interrupts = <6>;
  398         };
  399 
  400         lcd: lcd-controller@13050000 {
  401                 compatible = "ingenic,jz4770-lcd";
  402                 reg = <0x13050000 0x130>; /* tbc */
  403 
  404                 interrupt-parent = <&intc>;
  405                 interrupts = <31>;
  406 
  407                 clocks = <&cgu JZ4770_CLK_LPCLK_MUX>;
  408                 clock-names = "lcd_pclk";
  409         };
  410 
  411         dmac0: dma-controller@13420000 {
  412                 compatible = "ingenic,jz4770-dma";
  413                 reg = <0x13420000 0xC0>, <0x13420300 0x20>;
  414 
  415                 #dma-cells = <2>;
  416 
  417                 clocks = <&cgu JZ4770_CLK_DMA>;
  418                 interrupt-parent = <&intc>;
  419                 interrupts = <24>;
  420         };
  421 
  422         dmac1: dma-controller@13420100 {
  423                 compatible = "ingenic,jz4770-dma";
  424                 reg = <0x13420100 0xC0>, <0x13420400 0x20>;
  425 
  426                 #dma-cells = <2>;
  427 
  428                 clocks = <&cgu JZ4770_CLK_DMA>;
  429                 interrupt-parent = <&intc>;
  430                 interrupts = <23>;
  431         };
  432 
  433         uhc: usb@13430000 {
  434                 compatible = "generic-ohci";
  435                 reg = <0x13430000 0x1000>;
  436 
  437                 clocks = <&cgu JZ4770_CLK_UHC>, <&cgu JZ4770_CLK_UHC_PHY>;
  438                 assigned-clocks = <&cgu JZ4770_CLK_UHC>;
  439                 assigned-clock-rates = <48000000>;
  440 
  441                 interrupt-parent = <&intc>;
  442                 interrupts = <20>;
  443 
  444                 status = "disabled";
  445         };
  446 
  447         usb_otg: usb@13440000 {
  448                 compatible = "ingenic,jz4770-musb";
  449                 reg = <0x13440000 0x10000>;
  450 
  451                 clocks = <&cgu JZ4770_CLK_OTG>;
  452                 clock-names = "udc";
  453 
  454                 interrupt-parent = <&intc>;
  455                 interrupts = <21>;
  456                 interrupt-names = "mc";
  457 
  458                 phys = <&otg_phy>;
  459 
  460                 usb-role-switch;
  461         };
  462 
  463         rom: memory@1fc00000 {
  464                 compatible = "mtd-rom";
  465                 probe-type = "map_rom";
  466                 reg = <0x1fc00000 0x2000>;
  467 
  468                 bank-width = <4>;
  469                 device-width = <1>;
  470         };
  471 };

Cache object: 75cc944eea636f9338d2cadcd9a2f50d


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