418 lines
		
	
	
		
			8.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			418 lines
		
	
	
		
			8.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| /dts-v1/;
 | |
| 
 | |
| #include <dt-bindings/input/input.h>
 | |
| #include "tegra124.dtsi"
 | |
| 
 | |
| / {
 | |
| 	model = "Acer Chromebook 13 CB5-311";
 | |
| 	compatible = "google,nyan-big", "nvidia,tegra124";
 | |
| 
 | |
| 	aliases {
 | |
| 		console = &uarta;
 | |
| 		i2c0 = "/i2c@7000d000";
 | |
| 		i2c1 = "/i2c@7000c000";
 | |
| 		i2c2 = "/i2c@7000c400";
 | |
| 		i2c3 = "/i2c@7000c500";
 | |
| 		i2c4 = "/i2c@7000c700";
 | |
| 		i2c5 = "/i2c@7000d100";
 | |
| 		rtc0 = "/i2c@0,7000d000/pmic@40";
 | |
| 		rtc1 = "/rtc@0,7000e000";
 | |
| 		sdhci0 = "/sdhci@700b0600";
 | |
| 		sdhci1 = "/sdhci@700b0400";
 | |
| 		spi0 = "/spi@7000d400";
 | |
| 		spi1 = "/spi@7000da00";
 | |
| 		usb0 = "/usb@7d000000";
 | |
| 		usb1 = "/usb@7d008000";
 | |
| 	};
 | |
| 
 | |
| 	memory {
 | |
| 		reg = <0x80000000 0x80000000>;
 | |
| 	};
 | |
| 
 | |
| 	host1x@50000000 {
 | |
| 		dc@54200000 {
 | |
| 			display-timings {
 | |
| 				timing@0 {
 | |
| 					clock-frequency = <69500000>;
 | |
| 					hactive = <1366>;
 | |
| 					vactive = <768>;
 | |
| 					hsync-len = <32>;
 | |
| 					hfront-porch = <48>;
 | |
| 					hback-porch = <20>;
 | |
| 					vfront-porch = <3>;
 | |
| 					vback-porch = <13>;
 | |
| 					vsync-len = <6>;
 | |
| 				};
 | |
| 			};
 | |
| 		};
 | |
| 
 | |
| 		sor@54540000 {
 | |
| 			status = "okay";
 | |
| 
 | |
| 			nvidia,dpaux = <&dpaux>;
 | |
| 			nvidia,panel = <&panel>;
 | |
| 		};
 | |
| 
 | |
| 		dpaux@545c0000 {
 | |
| 			status = "okay";
 | |
| 		};
 | |
| 	};
 | |
| 
 | |
| 	serial@70006000 {
 | |
| 		/* Debug connector on the bottom of the board near SD card. */
 | |
| 		status = "okay";
 | |
| 	};
 | |
| 
 | |
| 	pwm@7000a000 {
 | |
| 		status = "okay";
 | |
| 	};
 | |
| 
 | |
| 	i2c@7000c000 {
 | |
| 		status = "okay";
 | |
| 		clock-frequency = <100000>;
 | |
| 
 | |
| 		acodec: audio-codec@10 {
 | |
| 			compatible = "maxim,max98090";
 | |
| 			reg = <0x10>;
 | |
| 			interrupt-parent = <&gpio>;
 | |
| 			interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>;
 | |
| 		};
 | |
| 
 | |
| 		temperature-sensor@4c {
 | |
| 			compatible = "ti,tmp451";
 | |
| 			reg = <0x4c>;
 | |
| 			interrupt-parent = <&gpio>;
 | |
| 			interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>;
 | |
| 
 | |
| 			#thermal-sensor-cells = <1>;
 | |
| 		};
 | |
| 	};
 | |
| 
 | |
| 	i2c@7000c400 {
 | |
| 		status = "okay";
 | |
| 		clock-frequency = <100000>;
 | |
| 	};
 | |
| 
 | |
| 	i2c@7000c500 {
 | |
| 		status = "okay";
 | |
| 		clock-frequency = <400000>;
 | |
| 
 | |
| 		tpm@20 {
 | |
| 			compatible = "infineon,slb9645tt";
 | |
| 			reg = <0x20>;
 | |
| 		};
 | |
| 	};
 | |
| 
 | |
| 	hdmi_ddc: i2c@7000c700 {
 | |
| 		status = "okay";
 | |
| 		clock-frequency = <100000>;
 | |
| 	};
 | |
| 
 | |
| 	i2c@7000d000 {
 | |
| 		status = "okay";
 | |
| 		clock-frequency = <400000>;
 | |
| 
 | |
| 		pmic: pmic@40 {
 | |
| 			compatible = "ams,as3722";
 | |
| 			reg = <0x40>;
 | |
| 			interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>;
 | |
| 
 | |
| 			ams,system-power-controller;
 | |
| 
 | |
| 			#interrupt-cells = <2>;
 | |
| 			interrupt-controller;
 | |
| 
 | |
| 			gpio-controller;
 | |
| 			#gpio-cells = <2>;
 | |
| 
 | |
| 			pinctrl-names = "default";
 | |
| 			pinctrl-0 = <&as3722_default>;
 | |
| 
 | |
| 			as3722_default: pinmux {
 | |
| 				gpio0 {
 | |
| 					pins = "gpio0";
 | |
| 					function = "gpio";
 | |
| 					bias-pull-down;
 | |
| 				};
 | |
| 
 | |
| 				gpio1 {
 | |
| 					pins = "gpio1";
 | |
| 					function = "gpio";
 | |
| 					bias-pull-up;
 | |
| 				};
 | |
| 
 | |
| 				gpio2_4_7 {
 | |
| 					pins = "gpio2", "gpio4", "gpio7";
 | |
| 					function = "gpio";
 | |
| 					bias-pull-up;
 | |
| 				};
 | |
| 
 | |
| 				gpio3_6 {
 | |
| 					pins = "gpio3", "gpio6";
 | |
| 					bias-high-impedance;
 | |
| 				};
 | |
| 
 | |
| 				gpio5 {
 | |
| 					pins = "gpio5";
 | |
| 					function = "clk32k-out";
 | |
| 					bias-pull-down;
 | |
| 				};
 | |
| 			};
 | |
| 		};
 | |
| 	};
 | |
| 
 | |
| 	spi@7000d400 {
 | |
| 		status = "okay";
 | |
| 		spi-deactivate-delay = <200>;
 | |
| 		spi-max-frequency = <3000000>;
 | |
| 
 | |
| 		cros_ec: cros-ec@0 {
 | |
| 			compatible = "google,cros-ec-spi";
 | |
| 			spi-max-frequency = <3000000>;
 | |
| 			interrupt-parent = <&gpio>;
 | |
| 			interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>;
 | |
| 			ec-interrupt = <&gpio TEGRA_GPIO(C, 7) GPIO_ACTIVE_LOW>;
 | |
| 			reg = <0>;
 | |
| 
 | |
| 			google,cros-ec-spi-msg-delay = <2000>;
 | |
| 
 | |
| 			i2c-tunnel {
 | |
| 				compatible = "google,cros-ec-i2c-tunnel";
 | |
| 				#address-cells = <1>;
 | |
| 				#size-cells = <0>;
 | |
| 
 | |
| 				google,remote-bus = <0>;
 | |
| 
 | |
| 				charger: bq24735@9 {
 | |
| 					compatible = "ti,bq24735";
 | |
| 					reg = <0x9>;
 | |
| 					interrupt-parent = <&gpio>;
 | |
| 					interrupts = <TEGRA_GPIO(J, 0)
 | |
| 							GPIO_ACTIVE_HIGH>;
 | |
| 					ti,ac-detect-gpios = <&gpio
 | |
| 							TEGRA_GPIO(J, 0)
 | |
| 							GPIO_ACTIVE_HIGH>;
 | |
| 				};
 | |
| 
 | |
| 				battery: sbs-battery@b {
 | |
| 					compatible = "sbs,sbs-battery";
 | |
| 					reg = <0xb>;
 | |
| 					sbs,i2c-retry-count = <2>;
 | |
| 					sbs,poll-retry-count = <10>;
 | |
| 					power-supplies = <&charger>;
 | |
| 				};
 | |
| 			};
 | |
| 		};
 | |
| 	};
 | |
| 
 | |
| 	spi@7000da00 {
 | |
| 		status = "okay";
 | |
| 		spi-max-frequency = <25000000>;
 | |
| 
 | |
| 		flash@0 {
 | |
| 			compatible = "winbond,w25q32dw";
 | |
| 			reg = <0>;
 | |
| 		};
 | |
| 	};
 | |
| 
 | |
| 	pmc@7000e400 {
 | |
| 		nvidia,invert-interrupt;
 | |
| 		nvidia,suspend-mode = <0>;
 | |
| 		nvidia,cpu-pwr-good-time = <500>;
 | |
| 		nvidia,cpu-pwr-off-time = <300>;
 | |
| 		nvidia,core-pwr-good-time = <641 3845>;
 | |
| 		nvidia,core-pwr-off-time = <61036>;
 | |
| 		nvidia,core-power-req-active-high;
 | |
| 		nvidia,sys-clock-req-active-high;
 | |
| 	};
 | |
| 
 | |
| 	hda@70030000 {
 | |
| 		status = "okay";
 | |
| 	};
 | |
| 
 | |
| 	sdhci@700b0000 { /* WiFi/BT on this bus */
 | |
| 		status = "okay";
 | |
| 		power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>;
 | |
| 		bus-width = <4>;
 | |
| 		no-1-8-v;
 | |
| 		non-removable;
 | |
| 	};
 | |
| 
 | |
| 	sdhci@700b0400 { /* SD Card on this bus */
 | |
| 		status = "okay";
 | |
| 		cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>;
 | |
| 		power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>;
 | |
| 		wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>;
 | |
| 		bus-width = <4>;
 | |
| 		no-1-8-v;
 | |
| 	};
 | |
| 
 | |
| 	sdhci@700b0600 { /* eMMC on this bus */
 | |
| 		status = "okay";
 | |
| 		bus-width = <8>;
 | |
| 		no-1-8-v;
 | |
| 		non-removable;
 | |
| 	};
 | |
| 
 | |
| 	ahub@70300000 {
 | |
| 		i2s@70301100 {
 | |
| 			status = "okay";
 | |
| 		};
 | |
| 	};
 | |
| 
 | |
| 	usb@7d000000 { /* Rear external USB port. */
 | |
| 		status = "okay";
 | |
| 		nvidia,vbus-gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>;
 | |
| 	};
 | |
| 
 | |
| 	usb-phy@7d000000 {
 | |
| 		status = "okay";
 | |
| 	};
 | |
| 
 | |
| 	usb@7d004000 { /* Internal webcam. */
 | |
| 		status = "okay";
 | |
| 	};
 | |
| 
 | |
| 	usb-phy@7d004000 {
 | |
| 		status = "okay";
 | |
| 	};
 | |
| 
 | |
| 	usb@7d008000 { /* Left external USB port. */
 | |
| 		status = "okay";
 | |
| 		nvidia,vbus-gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>;
 | |
| 	};
 | |
| 
 | |
| 	usb-phy@7d008000 {
 | |
| 		status = "okay";
 | |
| 	};
 | |
| 
 | |
| 	backlight: backlight {
 | |
| 		compatible = "pwm-backlight";
 | |
| 
 | |
| 		enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>;
 | |
| 		power-supply = <&vdd_led>;
 | |
| 		pwms = <&pwm 1 1000000>;
 | |
| 
 | |
| 		default-brightness-level = <224>;
 | |
| 		brightness-levels =
 | |
| 			<  0   1   2   3   4   5   6   7
 | |
| 			   8   9  10  11  12  13  14  15
 | |
| 			  16  17  18  19  20  21  22  23
 | |
| 			  24  25  26  27  28  29  30  31
 | |
| 			  32  33  34  35  36  37  38  39
 | |
| 			  40  41  42  43  44  45  46  47
 | |
| 			  48  49  50  51  52  53  54  55
 | |
| 			  56  57  58  59  60  61  62  63
 | |
| 			  64  65  66  67  68  69  70  71
 | |
| 			  72  73  74  75  76  77  78  79
 | |
| 			  80  81  82  83  84  85  86  87
 | |
| 			  88  89  90  91  92  93  94  95
 | |
| 			  96  97  98  99 100 101 102 103
 | |
| 			 104 105 106 107 108 109 110 111
 | |
| 			 112 113 114 115 116 117 118 119
 | |
| 			 120 121 122 123 124 125 126 127
 | |
| 			 128 129 130 131 132 133 134 135
 | |
| 			 136 137 138 139 140 141 142 143
 | |
| 			 144 145 146 147 148 149 150 151
 | |
| 			 152 153 154 155 156 157 158 159
 | |
| 			 160 161 162 163 164 165 166 167
 | |
| 			 168 169 170 171 172 173 174 175
 | |
| 			 176 177 178 179 180 181 182 183
 | |
| 			 184 185 186 187 188 189 190 191
 | |
| 			 192 193 194 195 196 197 198 199
 | |
| 			 200 201 202 203 204 205 206 207
 | |
| 			 208 209 210 211 212 213 214 215
 | |
| 			 216 217 218 219 220 221 222 223
 | |
| 			 224 225 226 227 228 229 230 231
 | |
| 			 232 233 234 235 236 237 238 239
 | |
| 			 240 241 242 243 244 245 246 247
 | |
| 			 248 249 250 251 252 253 254 255
 | |
| 			 256>;
 | |
| 	};
 | |
| 
 | |
| 	clocks {
 | |
| 		compatible = "simple-bus";
 | |
| 		#address-cells = <1>;
 | |
| 		#size-cells = <0>;
 | |
| 
 | |
| 		clk32k_in: clock@0 {
 | |
| 			compatible = "fixed-clock";
 | |
| 			reg = <0>;
 | |
| 			#clock-cells = <0>;
 | |
| 			clock-frequency = <32768>;
 | |
| 		};
 | |
| 	};
 | |
| 
 | |
| 	gpio@6000d000 {
 | |
| 		u-boot,dm-pre-reloc;
 | |
| 	};
 | |
| 
 | |
| 	gpio-keys {
 | |
| 		compatible = "gpio-keys";
 | |
| 
 | |
| 		lid {
 | |
| 			label = "Lid";
 | |
| 			gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>;
 | |
| 			linux,input-type = <5>;
 | |
| 			linux,code = <KEY_RESERVED>;
 | |
| 			debounce-interval = <1>;
 | |
| 			gpio-key,wakeup;
 | |
| 		};
 | |
| 
 | |
| 		power {
 | |
| 			label = "Power";
 | |
| 			gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>;
 | |
| 			linux,code = <KEY_POWER>;
 | |
| 			debounce-interval = <30>;
 | |
| 			gpio-key,wakeup;
 | |
| 		};
 | |
| 	};
 | |
| 
 | |
| 	panel: panel {
 | |
| 		compatible = "auo,b133xtn01";
 | |
| 
 | |
| 		backlight = <&backlight>;
 | |
| 	};
 | |
| 
 | |
| 	regulators {
 | |
| 		compatible = "simple-bus";
 | |
| 		#address-cells = <1>;
 | |
| 		#size-cells = <0>;
 | |
| 		vdd_led: regulator@5 {
 | |
| 			compatible = "regulator-fixed";
 | |
| 			reg = <5>;
 | |
| 			regulator-name = "+VDD_LED";
 | |
| 			gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>;
 | |
| 			enable-active-high;
 | |
| 		};
 | |
| 	};
 | |
| 
 | |
| 	sound {
 | |
| 		compatible = "nvidia,tegra-audio-max98090-nyan-big",
 | |
| 			     "nvidia,tegra-audio-max98090";
 | |
| 		nvidia,model = "Acer Chromebook 13";
 | |
| 
 | |
| 		nvidia,audio-routing =
 | |
| 			"Headphones", "HPR",
 | |
| 			"Headphones", "HPL",
 | |
| 			"Speakers", "SPKR",
 | |
| 			"Speakers", "SPKL",
 | |
| 			"Mic Jack", "MICBIAS",
 | |
| 			"DMICL", "Int Mic",
 | |
| 			"DMICR", "Int Mic",
 | |
| 			"IN34", "Mic Jack";
 | |
| 
 | |
| 		nvidia,i2s-controller = <&tegra_i2s1>;
 | |
| 		nvidia,audio-codec = <&acodec>;
 | |
| 
 | |
| 		clocks = <&tegra_car TEGRA124_CLK_PLL_A>,
 | |
| 			 <&tegra_car TEGRA124_CLK_PLL_A_OUT0>,
 | |
| 			 <&tegra_car TEGRA124_CLK_EXTERN1>;
 | |
| 		clock-names = "pll_a", "pll_a_out0", "mclk";
 | |
| 
 | |
| 		nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>;
 | |
| 	};
 | |
| };
 | |
| 
 | |
| #include "cros-ec-keyboard.dtsi"
 |