sun50i-a64.dtsi revision 1.4.4.1       1  1.4.4.1  pgoyette /* $NetBSD: sun50i-a64.dtsi,v 1.4.4.1 2018/05/21 04:35:59 pgoyette Exp $ */
      2      1.1  jmcneill 
      3      1.1  jmcneill /*-
      4      1.1  jmcneill  * Copyright (c) 2017 Jared McNeill <jmcneill (at) invisible.ca>
      5      1.1  jmcneill  * All rights reserved.
      6      1.1  jmcneill  *
      7      1.1  jmcneill  * Redistribution and use in source and binary forms, with or without
      8      1.1  jmcneill  * modification, are permitted provided that the following conditions
      9      1.1  jmcneill  * are met:
     10      1.1  jmcneill  * 1. Redistributions of source code must retain the above copyright
     11      1.1  jmcneill  *    notice, this list of conditions and the following disclaimer.
     12      1.1  jmcneill  * 2. Redistributions in binary form must reproduce the above copyright
     13      1.1  jmcneill  *    notice, this list of conditions and the following disclaimer in the
     14      1.1  jmcneill  *    documentation and/or other materials provided with the distribution.
     15      1.1  jmcneill  *
     16      1.1  jmcneill  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
     17      1.1  jmcneill  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
     18      1.1  jmcneill  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
     19      1.1  jmcneill  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
     20      1.1  jmcneill  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
     21      1.1  jmcneill  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
     22      1.1  jmcneill  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
     23      1.1  jmcneill  * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
     24      1.1  jmcneill  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
     25      1.1  jmcneill  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
     26      1.1  jmcneill  * SUCH DAMAGE.
     27      1.1  jmcneill  */
     28      1.1  jmcneill 
     29      1.1  jmcneill / {
     30      1.2  jmcneill 	chosen {
     31      1.2  jmcneill 		#address-cells = <1>;
     32      1.2  jmcneill 		#size-cells = <1>;
     33      1.2  jmcneill 		ranges;
     34      1.2  jmcneill 
     35      1.2  jmcneill 		framebuffer@0 {
     36      1.2  jmcneill 			compatible = "allwinner,simple-framebuffer",
     37      1.2  jmcneill 				     "simple-framebuffer";
     38      1.2  jmcneill 			allwinner,pipeline = "mixer1-lcd1-hdmi";
     39      1.2  jmcneill 			status = "disabled";
     40      1.2  jmcneill 		};
     41      1.2  jmcneill 	};
     42      1.2  jmcneill 
     43  1.4.4.1  pgoyette 	sound: sound {
     44  1.4.4.1  pgoyette 		compatible = "simple-audio-card";
     45  1.4.4.1  pgoyette 		simple-audio-card,name = "SUN50I Audio Card";
     46  1.4.4.1  pgoyette 		simple-audio-card,format = "i2s";
     47  1.4.4.1  pgoyette 		simple-audio-card,frame-master = <&cpudai>;
     48  1.4.4.1  pgoyette 		simple-audio-card,bitclock-master = <&cpudai>;
     49  1.4.4.1  pgoyette 		simple-audio-card,mclk-fs = <512>;
     50  1.4.4.1  pgoyette 		simple-audio-card,aux-devs = <&codec_analog>;
     51  1.4.4.1  pgoyette 		simple-audio-card,routing =
     52  1.4.4.1  pgoyette 				"Left DAC", "AIF1 Slot 0 Left",
     53  1.4.4.1  pgoyette 				"Right DAC", "AIF1 Slot 0 Right";
     54  1.4.4.1  pgoyette 		status = "disabled";
     55  1.4.4.1  pgoyette 
     56  1.4.4.1  pgoyette 		cpudai: simple-audio-card,cpu {
     57  1.4.4.1  pgoyette 			sound-dai = <&dai>;
     58  1.4.4.1  pgoyette 		};
     59  1.4.4.1  pgoyette 
     60  1.4.4.1  pgoyette 		link_codec: simple-audio-card,codec {
     61  1.4.4.1  pgoyette 			sound-dai = <&codec>;
     62  1.4.4.1  pgoyette 		};
     63  1.4.4.1  pgoyette 	};
     64  1.4.4.1  pgoyette 
     65      1.1  jmcneill 	soc {
     66  1.4.4.1  pgoyette 		pwm: pwm@1c21400 {
     67  1.4.4.1  pgoyette 			compatible = "allwinner,sun50i-a64-pwm";
     68  1.4.4.1  pgoyette 			reg = <0x01c21400 0x8>;
     69  1.4.4.1  pgoyette 			clocks = <&osc24M>;
     70  1.4.4.1  pgoyette 			#pwm-cells = <3>;
     71  1.4.4.1  pgoyette 			status = "disabled";
     72  1.4.4.1  pgoyette 		};
     73  1.4.4.1  pgoyette 
     74  1.4.4.1  pgoyette 		dai: dai@1c22c00 {
     75  1.4.4.1  pgoyette 			#sound-dai-cells = <0>;
     76  1.4.4.1  pgoyette 			compatible = "allwinner,sun50i-a64-acodec-i2s";
     77  1.4.4.1  pgoyette 			reg = <0x01c22c00 0x200>;
     78  1.4.4.1  pgoyette 			interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
     79  1.4.4.1  pgoyette 			clocks = <&ccu CLK_BUS_CODEC>, <&ccu CLK_AC_DIG>;
     80  1.4.4.1  pgoyette 			clock-names = "apb", "mod";
     81  1.4.4.1  pgoyette 			resets = <&ccu RST_BUS_CODEC>;
     82  1.4.4.1  pgoyette 			reset-names = "rst";
     83  1.4.4.1  pgoyette 			dmas = <&dma 15>, <&dma 15>;
     84  1.4.4.1  pgoyette 			dma-names = "rx", "tx";
     85  1.4.4.1  pgoyette 			status = "disabled";
     86  1.4.4.1  pgoyette 		};
     87  1.4.4.1  pgoyette 
     88  1.4.4.1  pgoyette 		codec: codec@1c22e00 {
     89  1.4.4.1  pgoyette 			#sound-dai-cells = <0>;
     90  1.4.4.1  pgoyette 			compatible = "allwinner,sun50i-a64-codec";
     91  1.4.4.1  pgoyette 			reg = <0x01c22e00 0x600>;
     92  1.4.4.1  pgoyette 			interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
     93  1.4.4.1  pgoyette 			clocks = <&ccu CLK_BUS_CODEC>, <&ccu CLK_AC_DIG>;
     94  1.4.4.1  pgoyette 			clock-names = "bus", "mod";
     95  1.4.4.1  pgoyette 			status = "disabled";
     96  1.4.4.1  pgoyette 		};
     97  1.4.4.1  pgoyette 
     98  1.4.4.1  pgoyette 		rtp: rtp@1c25000 {
     99  1.4.4.1  pgoyette 			compatible = "allwinner,sun50i-a64-ts";
    100  1.4.4.1  pgoyette 			reg = <0x01c25000 0x400>;
    101  1.4.4.1  pgoyette 			interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
    102  1.4.4.1  pgoyette 			clocks = <&ccu CLK_BUS_THS>, <&ccu CLK_THS>;
    103  1.4.4.1  pgoyette 			clock-names = "ahb", "ths";
    104  1.4.4.1  pgoyette 			resets = <&ccu RST_BUS_THS>;
    105  1.4.4.1  pgoyette 			#thermal-sensor-cells = <0>;
    106  1.4.4.1  pgoyette 		};
    107  1.4.4.1  pgoyette 
    108  1.4.4.1  pgoyette 		codec_analog: codec-analog@1f015c0 {
    109  1.4.4.1  pgoyette 			compatible = "allwinner,sun50i-a64-codec-analog";
    110  1.4.4.1  pgoyette 			reg = <0x01f015c0 0x4>;
    111      1.1  jmcneill 			status = "disabled";
    112      1.1  jmcneill 		};
    113      1.1  jmcneill 	};
    114      1.1  jmcneill };
    115      1.1  jmcneill 
    116  1.4.4.1  pgoyette &cpu0 {
    117  1.4.4.1  pgoyette 	clocks = <&ccu 1>; /* 1=CLK_PLL_CPUX */
    118  1.4.4.1  pgoyette };
    119      1.1  jmcneill 
    120  1.4.4.1  pgoyette &pio {
    121  1.4.4.1  pgoyette 	pwm0_pins: pwm0 {
    122  1.4.4.1  pgoyette 		pins = "PD22";
    123  1.4.4.1  pgoyette 		function = "pwm";
    124      1.1  jmcneill 	};
    125      1.1  jmcneill };
    126