mirror of
				https://github.com/smaeul/u-boot.git
				synced 2025-11-03 21:48:15 +00:00 
			
		
		
		
	Update snow's device tree and config to use driver model for sound. Also update the others as best we can. Spring does not appear to have audio support in the kernel. The smdk5250 and smdk5420 boards use a wolfson codec which I cannot test with. So the only boards that is tested and known to work are snow, pit and pi. Signed-off-by: Simon Glass <sjg@chromium.org>
		
			
				
	
	
		
			290 lines
		
	
	
		
			5.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			290 lines
		
	
	
		
			5.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
// SPDX-License-Identifier: GPL-2.0+
 | 
						|
/*
 | 
						|
 * SAMSUNG/GOOGLE Peach-Pit board device tree source
 | 
						|
 *
 | 
						|
 * Copyright (c) 2013 Samsung Electronics Co., Ltd.
 | 
						|
 *		http://www.samsung.com
 | 
						|
 */
 | 
						|
 | 
						|
/dts-v1/;
 | 
						|
#include "exynos54xx.dtsi"
 | 
						|
 | 
						|
/ {
 | 
						|
	model = "Samsung/Google Peach Pi board based on Exynos5800";
 | 
						|
	cpu-model = "Exynos5800";
 | 
						|
 | 
						|
	compatible = "google,pit-rev#", "google,pit",
 | 
						|
		"google,peach", "samsung,exynos5800", "samsung,exynos5";
 | 
						|
 | 
						|
	config {
 | 
						|
		google,bad-wake-gpios = <&gpx0 6 GPIO_ACTIVE_HIGH>;
 | 
						|
		hwid = "PIT TEST A-A 7848";
 | 
						|
		lazy-init = <1>;
 | 
						|
	};
 | 
						|
 | 
						|
	aliases {
 | 
						|
		serial0 = "/serial@12C30000";
 | 
						|
		console = "/serial@12C30000";
 | 
						|
		pmic = "/i2c@12CA0000";
 | 
						|
		i2c104 = &i2c_tunnel;
 | 
						|
	};
 | 
						|
 | 
						|
	backlight: backlight {
 | 
						|
		compatible = "pwm-backlight";
 | 
						|
		pwms = <&pwm 0 1000000 0>;
 | 
						|
		brightness-levels = <0 100 500 1000 1500 2000 2500 2800>;
 | 
						|
		default-brightness-level = <7>;
 | 
						|
		enable-gpios = <&gpx2 2 GPIO_ACTIVE_HIGH>;
 | 
						|
		power-supply = <&tps65090_fet1>;
 | 
						|
	};
 | 
						|
 | 
						|
	panel: panel {
 | 
						|
		compatible = "auo,b133htn01";
 | 
						|
		power-supply = <&tps65090_fet6>;
 | 
						|
		backlight = <&backlight>;
 | 
						|
 | 
						|
		port {
 | 
						|
			panel_in: endpoint {
 | 
						|
				remote-endpoint = <&dp_out>;
 | 
						|
			};
 | 
						|
		};
 | 
						|
	};
 | 
						|
 | 
						|
	dmc {
 | 
						|
		mem-manuf = "samsung";
 | 
						|
		mem-type = "ddr3";
 | 
						|
		clock-frequency = <800000000>;
 | 
						|
		arm-frequency = <900000000>;
 | 
						|
	};
 | 
						|
 | 
						|
	tmu@10060000 {
 | 
						|
		samsung,min-temp	= <25>;
 | 
						|
		samsung,max-temp	= <125>;
 | 
						|
		samsung,start-warning	= <95>;
 | 
						|
		samsung,start-tripping	= <105>;
 | 
						|
		samsung,hw-tripping	= <110>;
 | 
						|
		samsung,efuse-min-value	= <40>;
 | 
						|
		samsung,efuse-value	= <55>;
 | 
						|
		samsung,efuse-max-value	= <100>;
 | 
						|
		samsung,slope		= <274761730>;
 | 
						|
		samsung,dc-value	= <25>;
 | 
						|
	};
 | 
						|
 | 
						|
	/* MAX77802 is on i2c bus 4 */
 | 
						|
	i2c@12CA0000 {
 | 
						|
		clock-frequency = <400000>;
 | 
						|
		power-regulator@9 {
 | 
						|
			compatible = "maxim,max77802-pmic";
 | 
						|
			reg = <0x9>;
 | 
						|
		};
 | 
						|
	};
 | 
						|
 | 
						|
	sound {
 | 
						|
		compatible = "google,peach-audio-max98090";
 | 
						|
 | 
						|
		samsung,model = "PEACH-I2S-MAX98090";
 | 
						|
		samsung,audio-codec = <&max98090>;
 | 
						|
 | 
						|
		cpu {
 | 
						|
			sound-dai = <&i2s0 0>;
 | 
						|
		};
 | 
						|
 | 
						|
		codec {
 | 
						|
			sound-dai = <&max98090 0>;
 | 
						|
		};
 | 
						|
	};
 | 
						|
 | 
						|
	i2c@12CD0000 { /* i2c7 */
 | 
						|
		clock-frequency = <100000>;
 | 
						|
		max98090: soundcodec@10 {
 | 
						|
			reg = <0x10>;
 | 
						|
			compatible = "maxim,max98090";
 | 
						|
			#sound-dai-cells = <1>;
 | 
						|
		};
 | 
						|
	};
 | 
						|
 | 
						|
        sound@3830000 {
 | 
						|
                samsung,codec-type = "max98090";
 | 
						|
        };
 | 
						|
 | 
						|
	i2c@12E10000 { /* i2c9 */
 | 
						|
		clock-frequency = <400000>;
 | 
						|
		tpm@20 {
 | 
						|
			compatible = "infineon,slb9645tt";
 | 
						|
			reg = <0x20>;
 | 
						|
		};
 | 
						|
	};
 | 
						|
 | 
						|
	spi@12d30000 { /* spi1 */
 | 
						|
		spi-max-frequency = <50000000>;
 | 
						|
		firmware_storage_spi: flash@0 {
 | 
						|
			reg = <0>;
 | 
						|
 | 
						|
			/*
 | 
						|
			 * A region for the kernel to store a panic event
 | 
						|
			 * which the firmware will add to the log.
 | 
						|
			*/
 | 
						|
			elog-panic-event-offset = <0x01e00000 0x100000>;
 | 
						|
 | 
						|
			elog-shrink-size = <0x400>;
 | 
						|
			elog-full-threshold = <0xc00>;
 | 
						|
		};
 | 
						|
	};
 | 
						|
 | 
						|
	xhci@12000000 {
 | 
						|
		samsung,vbus-gpio = <&gph0 0 GPIO_ACTIVE_HIGH>;
 | 
						|
	};
 | 
						|
 | 
						|
	xhci@12400000 {
 | 
						|
		samsung,vbus-gpio = <&gph0 1 GPIO_ACTIVE_HIGH>;
 | 
						|
	};
 | 
						|
 | 
						|
	fimd@14400000 {
 | 
						|
		samsung,vl-freq = <60>;
 | 
						|
		samsung,vl-col = <1920>;
 | 
						|
		samsung,vl-row = <1080>;
 | 
						|
		samsung,vl-width = <1920>;
 | 
						|
		samsung,vl-height = <1080>;
 | 
						|
 | 
						|
		samsung,vl-clkp;
 | 
						|
		samsung,vl-dp;
 | 
						|
		samsung,vl-bpix = <4>;
 | 
						|
 | 
						|
		samsung,vl-hspw = <80>;
 | 
						|
		samsung,vl-hbpd = <172>;
 | 
						|
		samsung,vl-hfpd = <60>;
 | 
						|
		samsung,vl-vspw = <10>;
 | 
						|
		samsung,vl-vbpd = <25>;
 | 
						|
		samsung,vl-vfpd = <10>;
 | 
						|
		samsung,vl-cmd-allow-len = <0xf>;
 | 
						|
 | 
						|
		samsung,power-on-delay = <30000>;
 | 
						|
		samsung,winid = <3>;
 | 
						|
		samsung,interface-mode = <1>;
 | 
						|
		samsung,dp-enabled = <1>;
 | 
						|
		samsung,dual-lcd-enabled = <0>;
 | 
						|
 | 
						|
		samsung,bl-en-gpio = <&gpx2 2 GPIO_ACTIVE_HIGH>;
 | 
						|
	};
 | 
						|
};
 | 
						|
 | 
						|
&dp {
 | 
						|
	status = "okay";
 | 
						|
	samsung,color-space = <0>;
 | 
						|
	samsung,dynamic-range = <0>;
 | 
						|
	samsung,ycbcr-coeff = <0>;
 | 
						|
	samsung,color-depth = <1>;
 | 
						|
	samsung,link-rate = <0x0a>;
 | 
						|
	samsung,lane-count = <2>;
 | 
						|
	samsung,hpd-gpio = <&gpx2 6 GPIO_ACTIVE_HIGH>;
 | 
						|
 | 
						|
	ports {
 | 
						|
		port {
 | 
						|
			dp_out: endpoint {
 | 
						|
				remote-endpoint = <&panel_in>;
 | 
						|
			};
 | 
						|
		};
 | 
						|
	};
 | 
						|
};
 | 
						|
 | 
						|
&spi_2 {
 | 
						|
	spi-max-frequency = <3125000>;
 | 
						|
	spi-deactivate-delay = <200>;
 | 
						|
	status = "okay";
 | 
						|
	num-cs = <1>;
 | 
						|
	samsung,spi-src-clk = <0>;
 | 
						|
	cs-gpios = <&gpb1 2 0>;
 | 
						|
 | 
						|
	cros_ec: cros-ec@0 {
 | 
						|
		compatible = "google,cros-ec-spi";
 | 
						|
		interrupt-parent = <&gpx1>;
 | 
						|
		interrupts = <5 0>;
 | 
						|
		reg = <0>;
 | 
						|
		spi-half-duplex;
 | 
						|
		spi-max-timeout-ms = <1100>;
 | 
						|
		ec-interrupt = <&gpx1 5 GPIO_ACTIVE_LOW>;
 | 
						|
 | 
						|
		/*
 | 
						|
		 * This describes the flash memory within the EC. Note
 | 
						|
		 * that the STM32L flash erases to 0, not 0xff.
 | 
						|
		 */
 | 
						|
		#address-cells = <1>;
 | 
						|
		#size-cells = <1>;
 | 
						|
		flash@8000000 {
 | 
						|
			reg = <0x08000000 0x20000>;
 | 
						|
			erase-value = <0>;
 | 
						|
		};
 | 
						|
 | 
						|
		controller-data {
 | 
						|
			samsung,spi-feedback-delay = <1>;
 | 
						|
		};
 | 
						|
 | 
						|
		i2c_tunnel: i2c-tunnel {
 | 
						|
			compatible = "google,cros-ec-i2c-tunnel";
 | 
						|
			#address-cells = <1>;
 | 
						|
			#size-cells = <0>;
 | 
						|
			google,remote-bus = <0>;
 | 
						|
 | 
						|
			battery: sbs-battery@b {
 | 
						|
				compatible = "sbs,sbs-battery";
 | 
						|
				reg = <0xb>;
 | 
						|
				sbs,poll-retry-count = <1>;
 | 
						|
				sbs,i2c-retry-count = <2>;
 | 
						|
			};
 | 
						|
 | 
						|
			power-regulator@48 {
 | 
						|
				compatible = "ti,tps65090";
 | 
						|
				reg = <0x48>;
 | 
						|
 | 
						|
				regulators {
 | 
						|
					tps65090_dcdc1: dcdc1 {
 | 
						|
						ti,enable-ext-control;
 | 
						|
					};
 | 
						|
					tps65090_dcdc2: dcdc2 {
 | 
						|
						ti,enable-ext-control;
 | 
						|
					};
 | 
						|
					tps65090_dcdc3: dcdc3 {
 | 
						|
						ti,enable-ext-control;
 | 
						|
					};
 | 
						|
					tps65090_fet1: fet1 {
 | 
						|
						regulator-name = "vcd_led";
 | 
						|
					};
 | 
						|
					tps65090_fet2: fet2 {
 | 
						|
						regulator-name = "video_mid";
 | 
						|
						regulator-always-on;
 | 
						|
					};
 | 
						|
					tps65090_fet3: fet3 {
 | 
						|
						regulator-name = "wwan_r";
 | 
						|
						regulator-always-on;
 | 
						|
					};
 | 
						|
					tps65090_fet4: fet4 {
 | 
						|
						regulator-name = "sdcard";
 | 
						|
						regulator-always-on;
 | 
						|
					};
 | 
						|
					tps65090_fet5: fet5 {
 | 
						|
						regulator-name = "camout";
 | 
						|
						regulator-always-on;
 | 
						|
					};
 | 
						|
					tps65090_fet6: fet6 {
 | 
						|
						regulator-name = "lcd_vdd";
 | 
						|
					};
 | 
						|
					tps65090_fet7: fet7 {
 | 
						|
						regulator-name = "video_mid_1a";
 | 
						|
						regulator-always-on;
 | 
						|
					};
 | 
						|
					tps65090_ldo1: ldo1 {
 | 
						|
					};
 | 
						|
					tps65090_ldo2: ldo2 {
 | 
						|
					};
 | 
						|
				};
 | 
						|
 | 
						|
				charger {
 | 
						|
					compatible = "ti,tps65090-charger";
 | 
						|
				};
 | 
						|
			};
 | 
						|
		};
 | 
						|
	};
 | 
						|
};
 | 
						|
 | 
						|
#include "cros-ec-keyboard.dtsi"
 |