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/jz4740.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,jz4740-cgu.h>
    3 #include <dt-bindings/clock/ingenic,tcu.h>
    4 
    5 / {
    6         #address-cells = <1>;
    7         #size-cells = <1>;
    8         compatible = "ingenic,jz4740";
    9 
   10         cpus {
   11                 #address-cells = <1>;
   12                 #size-cells = <0>;
   13 
   14                 cpu0: cpu@0 {
   15                         device_type = "cpu";
   16                         compatible = "ingenic,xburst-mxu1.0";
   17                         reg = <0>;
   18 
   19                         clocks = <&cgu JZ4740_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,jz4740-intc";
   33                 reg = <0x10001000 0x14>;
   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         rtc: rtc {
   48                 compatible = "fixed-clock";
   49                 #clock-cells = <0>;
   50                 clock-frequency = <32768>;
   51         };
   52 
   53         cgu: jz4740-cgu@10000000 {
   54                 compatible = "ingenic,jz4740-cgu";
   55                 reg = <0x10000000 0x100>;
   56 
   57                 clocks = <&ext>, <&rtc>;
   58                 clock-names = "ext", "rtc";
   59 
   60                 #clock-cells = <1>;
   61         };
   62 
   63         tcu: timer@10002000 {
   64                 compatible = "ingenic,jz4740-tcu", "simple-mfd";
   65                 reg = <0x10002000 0x1000>;
   66                 #address-cells = <1>;
   67                 #size-cells = <1>;
   68                 ranges = <0x0 0x10002000 0x1000>;
   69 
   70                 #clock-cells = <1>;
   71 
   72                 clocks = <&cgu JZ4740_CLK_RTC>,
   73                          <&cgu JZ4740_CLK_EXT>,
   74                          <&cgu JZ4740_CLK_PCLK>,
   75                          <&cgu JZ4740_CLK_TCU>;
   76                 clock-names = "rtc", "ext", "pclk", "tcu";
   77 
   78                 interrupt-controller;
   79                 #interrupt-cells = <1>;
   80 
   81                 interrupt-parent = <&intc>;
   82                 interrupts = <23 22 21>;
   83 
   84                 watchdog: watchdog@0 {
   85                         compatible = "ingenic,jz4740-watchdog";
   86                         reg = <0x0 0xc>;
   87 
   88                         clocks = <&tcu TCU_CLK_WDT>;
   89                         clock-names = "wdt";
   90                 };
   91 
   92                 pwm: pwm@40 {
   93                         compatible = "ingenic,jz4740-pwm";
   94                         reg = <0x40 0x80>;
   95 
   96                         #pwm-cells = <3>;
   97 
   98                         clocks = <&tcu TCU_CLK_TIMER0>, <&tcu TCU_CLK_TIMER1>,
   99                                  <&tcu TCU_CLK_TIMER2>, <&tcu TCU_CLK_TIMER3>,
  100                                  <&tcu TCU_CLK_TIMER4>, <&tcu TCU_CLK_TIMER5>,
  101                                  <&tcu TCU_CLK_TIMER6>, <&tcu TCU_CLK_TIMER7>;
  102                         clock-names = "timer0", "timer1", "timer2", "timer3",
  103                                       "timer4", "timer5", "timer6", "timer7";
  104                 };
  105         };
  106 
  107         rtc_dev: rtc@10003000 {
  108                 compatible = "ingenic,jz4740-rtc";
  109                 reg = <0x10003000 0x40>;
  110 
  111                 interrupt-parent = <&intc>;
  112                 interrupts = <15>;
  113 
  114                 clocks = <&cgu JZ4740_CLK_RTC>;
  115                 clock-names = "rtc";
  116         };
  117 
  118         pinctrl: pin-controller@10010000 {
  119                 compatible = "ingenic,jz4740-pinctrl";
  120                 reg = <0x10010000 0x400>;
  121 
  122                 #address-cells = <1>;
  123                 #size-cells = <0>;
  124 
  125                 gpa: gpio@0 {
  126                         compatible = "ingenic,jz4740-gpio";
  127                         reg = <0>;
  128 
  129                         gpio-controller;
  130                         gpio-ranges = <&pinctrl 0 0 32>;
  131                         #gpio-cells = <2>;
  132 
  133                         interrupt-controller;
  134                         #interrupt-cells = <2>;
  135 
  136                         interrupt-parent = <&intc>;
  137                         interrupts = <28>;
  138                 };
  139 
  140                 gpb: gpio@1 {
  141                         compatible = "ingenic,jz4740-gpio";
  142                         reg = <1>;
  143 
  144                         gpio-controller;
  145                         gpio-ranges = <&pinctrl 0 32 32>;
  146                         #gpio-cells = <2>;
  147 
  148                         interrupt-controller;
  149                         #interrupt-cells = <2>;
  150 
  151                         interrupt-parent = <&intc>;
  152                         interrupts = <27>;
  153                 };
  154 
  155                 gpc: gpio@2 {
  156                         compatible = "ingenic,jz4740-gpio";
  157                         reg = <2>;
  158 
  159                         gpio-controller;
  160                         gpio-ranges = <&pinctrl 0 64 32>;
  161                         #gpio-cells = <2>;
  162 
  163                         interrupt-controller;
  164                         #interrupt-cells = <2>;
  165 
  166                         interrupt-parent = <&intc>;
  167                         interrupts = <26>;
  168                 };
  169 
  170                 gpd: gpio@3 {
  171                         compatible = "ingenic,jz4740-gpio";
  172                         reg = <3>;
  173 
  174                         gpio-controller;
  175                         gpio-ranges = <&pinctrl 0 96 32>;
  176                         #gpio-cells = <2>;
  177 
  178                         interrupt-controller;
  179                         #interrupt-cells = <2>;
  180 
  181                         interrupt-parent = <&intc>;
  182                         interrupts = <25>;
  183                 };
  184         };
  185 
  186         aic: audio-controller@10020000 {
  187                 compatible = "ingenic,jz4740-i2s";
  188                 reg = <0x10020000 0x38>;
  189 
  190                 #sound-dai-cells = <0>;
  191 
  192                 interrupt-parent = <&intc>;
  193                 interrupts = <18>;
  194 
  195                 clocks = <&cgu JZ4740_CLK_AIC>,
  196                          <&cgu JZ4740_CLK_I2S>,
  197                          <&cgu JZ4740_CLK_EXT>,
  198                          <&cgu JZ4740_CLK_PLL_HALF>;
  199                 clock-names = "aic", "i2s", "ext", "pll half";
  200 
  201                 dmas = <&dmac 25 0xffffffff>, <&dmac 24 0xffffffff>;
  202                 dma-names = "rx", "tx";
  203         };
  204 
  205         codec: audio-codec@100200a4 {
  206                 compatible = "ingenic,jz4740-codec";
  207                 reg = <0x10020080 0x8>;
  208 
  209                 #sound-dai-cells = <0>;
  210 
  211                 clocks = <&cgu JZ4740_CLK_AIC>;
  212                 clock-names = "aic";
  213         };
  214 
  215         mmc: mmc@10021000 {
  216                 compatible = "ingenic,jz4740-mmc";
  217                 reg = <0x10021000 0x1000>;
  218 
  219                 clocks = <&cgu JZ4740_CLK_MMC>;
  220                 clock-names = "mmc";
  221 
  222                 interrupt-parent = <&intc>;
  223                 interrupts = <14>;
  224 
  225                 dmas = <&dmac 27 0xffffffff>, <&dmac 26 0xffffffff>;
  226                 dma-names = "rx", "tx";
  227 
  228                 cap-sd-highspeed;
  229                 cap-mmc-highspeed;
  230                 cap-sdio-irq;
  231         };
  232 
  233         uart0: serial@10030000 {
  234                 compatible = "ingenic,jz4740-uart";
  235                 reg = <0x10030000 0x100>;
  236 
  237                 interrupt-parent = <&intc>;
  238                 interrupts = <9>;
  239 
  240                 clocks = <&ext>, <&cgu JZ4740_CLK_UART0>;
  241                 clock-names = "baud", "module";
  242         };
  243 
  244         uart1: serial@10031000 {
  245                 compatible = "ingenic,jz4740-uart";
  246                 reg = <0x10031000 0x100>;
  247 
  248                 interrupt-parent = <&intc>;
  249                 interrupts = <8>;
  250 
  251                 clocks = <&ext>, <&cgu JZ4740_CLK_UART1>;
  252                 clock-names = "baud", "module";
  253         };
  254 
  255         adc: adc@10070000 {
  256                 compatible = "ingenic,jz4740-adc";
  257                 reg = <0x10070000 0x30>;
  258                 #io-channel-cells = <1>;
  259 
  260                 clocks = <&cgu JZ4740_CLK_ADC>;
  261                 clock-names = "adc";
  262 
  263                 interrupt-parent = <&intc>;
  264                 interrupts = <12>;
  265         };
  266 
  267         nemc: memory-controller@13010000 {
  268                 compatible = "ingenic,jz4740-nemc";
  269                 reg = <0x13010000 0x54>;
  270                 #address-cells = <2>;
  271                 #size-cells = <1>;
  272                 ranges = <1 0 0x18000000 0x4000000>,
  273                          <2 0 0x14000000 0x4000000>,
  274                          <3 0 0x0c000000 0x4000000>,
  275                          <4 0 0x08000000 0x4000000>;
  276 
  277                 clocks = <&cgu JZ4740_CLK_MCLK>;
  278         };
  279 
  280         ecc: ecc-controller@13010100 {
  281                 compatible = "ingenic,jz4740-ecc";
  282                 reg = <0x13010100 0x2C>;
  283 
  284                 clocks = <&cgu JZ4740_CLK_MCLK>;
  285         };
  286 
  287         dmac: dma-controller@13020000 {
  288                 compatible = "ingenic,jz4740-dma";
  289                 reg = <0x13020000 0xbc>, <0x13020300 0x14>;
  290                 #dma-cells = <2>;
  291 
  292                 interrupt-parent = <&intc>;
  293                 interrupts = <20>;
  294 
  295                 clocks = <&cgu JZ4740_CLK_DMA>;
  296         };
  297 
  298         uhc: usb@13030000 {
  299                 compatible = "ingenic,jz4740-ohci", "generic-ohci";
  300                 reg = <0x13030000 0x1000>;
  301 
  302                 clocks = <&cgu JZ4740_CLK_UHC>;
  303                 assigned-clocks = <&cgu JZ4740_CLK_UHC>;
  304                 assigned-clock-rates = <48000000>;
  305 
  306                 interrupt-parent = <&intc>;
  307                 interrupts = <3>;
  308 
  309                 status = "disabled";
  310         };
  311 
  312         udc: usb@13040000 {
  313                 compatible = "ingenic,jz4740-musb";
  314                 reg = <0x13040000 0x10000>;
  315 
  316                 interrupt-parent = <&intc>;
  317                 interrupts = <24>;
  318                 interrupt-names = "mc";
  319 
  320                 clocks = <&cgu JZ4740_CLK_UDC>;
  321                 clock-names = "udc";
  322         };
  323 
  324         lcd: lcd-controller@13050000 {
  325                 compatible = "ingenic,jz4740-lcd";
  326                 reg = <0x13050000 0x60>; /* LCDCMD1+4 */
  327 
  328                 interrupt-parent = <&intc>;
  329                 interrupts = <30>;
  330 
  331                 clocks = <&cgu JZ4740_CLK_LCD_PCLK>, <&cgu JZ4740_CLK_LCD>;
  332                 clock-names = "lcd_pclk", "lcd";
  333         };
  334 };

Cache object: 83486711e8d1656f6c2d6ec50a417bde


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