From: Youngmin Nam Date: Wed, 25 Jul 2018 05:26:37 +0000 (+0900) Subject: [9610][WING] arm64: dts: enable dtbo overlay to make dtbo image X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=58ca362b2b4dfb7ce1727d740e2f9ce1167daedf;p=GitHub%2FLineageOS%2Fandroid_kernel_motorola_exynos9610.git [9610][WING] arm64: dts: enable dtbo overlay to make dtbo image Change-Id: I196924b37c8b7482262cff47851b91625d5bb8d5 Signed-off-by: Youngmin Nam --- diff --git a/arch/arm64/boot/dts/exynos/exynos9609-wing.dts b/arch/arm64/boot/dts/exynos/exynos9609-wing.dts index 756bfd81ba46..e97e1f132188 100755 --- a/arch/arm64/boot/dts/exynos/exynos9609-wing.dts +++ b/arch/arm64/boot/dts/exynos/exynos9609-wing.dts @@ -10,2043 +10,1927 @@ */ /dts-v1/; -#include "exynos9610-rmem.dtsi" -#include "exynos9610.dtsi" +/plugin/; + #include "exynos9610_battery_data.dtsi" +#include #include "modem-ss360ap-sit-pdata.dtsi" -#include "exynos9610-debug.dtsi" #include "exynos9610-display-lcd.dtsi" #include "novatek-nt36xxx-i2c.dtsi" / { - model = "Samsung Wing board based on EXYNOS9610"; compatible = "samsung,exynos9610", "samsung,WING"; + board_id = <0x0>; + board_rev = <0x0>; - ect { - parameter_address = <0x90000000>; - parameter_size = <0x19000>; - }; + fragment@model { + target-path = "/"; + __overlay__ { + #address-cells = <2>; + #size-cells = <1>; + model = "Samsung Wing board based on EXYNOS9610"; - chosen { - bootargs = "console=ram root=/dev/ram0 clk_ignore_unused bcm_setup=0xffffff80f8e00000 androidboot.hardware=samsungexynos9610 androidboot.selinux=permissive androidboot.debug_level=0x4948 firmware_class.path=/vendor/firmware ecd_setup=disable reserve-fimc=0xffffff80fa000000 pmic_info=0x3"; - linux,initrd-start = <0x84000000>; - linux,initrd-end = <0x841FFFFF>; - }; + ect { + parameter_address = <0x90000000>; + parameter_size = <0x19000>; + }; - fixed-rate-clocks { - oscclk { - compatible = "samsung,exynos9610-oscclk"; - clock-frequency = <26000000>; - }; - }; + chosen { + bootargs = "ccic_info=0x1 console=ram root=/dev/ram0 clk_ignore_unused bcm_setup=0xffffff80f8e00000 androidboot.hardware=samsungexynos9610 androidboot.selinux=permissive androidboot.debug_level=0x4948 firmware_class.path=/vendor/firmware ecd_setup=disable reserve-fimc=0xffffff80fa000000 pmic_info=0x3"; + linux,initrd-start = <0x84000000>; + linux,initrd-end = <0x841FFFFF>; + }; - firmware { - android { - compatible = "android,firmware"; - fstab { - compatible = "android,fstab"; - system { - compatible = "android,system"; - dev = "/dev/block/platform/13520000.ufs/by-name/system"; - type = "ext4"; - mnt_flags = "ro"; - fsmgr_flags = "wait"; - }; - vendor { - compatible = "android,vendor"; - dev = "/dev/block/platform/13520000.ufs/by-name/vendor"; - type = "ext4"; - mnt_flags = "ro"; - fsmgr_flags = "wait"; + fixed-rate-clocks { + oscclk { + compatible = "samsung,exynos9610-oscclk"; + clock-frequency = <26000000>; }; }; - }; - }; - - serial_0: uart@13820000 { - status = "okay"; - }; - dsim_0: dsim@0x148E0000 { - lcd_info = <&nt36672a>; - /* reset, lcd_bias_enp, lcd_bias_enn, lcd_bl_en*/ - gpios = <&gpg1 4 0x1>, <&gpg3 1 0x1>, <&gpg3 0 0x1>, <&gpg2 1 0x1>; - }; - - /* USI_0_SHUB */ - usi_0_shub: usi@11013000 { - usi_v2_mode = "spi"; - status = "okay"; - }; - - /* USI_SHUB_0_I2C */ - usi_0_shub_i2c: usi@11013004 { - /* usi_v2_mode = "i2c" or "spi" or "uart" */ - status = "disabled"; - }; - - /* USI_0_CMGP */ - usi_0_cmgp: usi@11C12000 { - /* usi_v2_mode = "i2c" or "spi" or "uart" */ - usi_v2_mode = "i2c"; - status = "okay"; - }; - - /* USI_0_CMGP_I2C */ - usi_0_cmgp_i2c: usi@11C12004 { - usi_v2_mode = "i2c"; - status = "okay"; - }; - - /* USI_1_CMGP */ - usi_1_cmgp: usi@11C12010 { - usi_v2_mode = "i2c"; - status = "okay"; - }; - - /* USI_1_CMGP_I2C */ - usi_1_cmgp_i2c: usi@11C12014 { - usi_v2_mode = "i2c"; - status = "okay"; - }; - - /* USI_2_CMGP */ - usi_2_cmgp: usi@11C12020 { - /* usi_v2_mode = "i2c" or "spi" or "uart" */ - usi_v2_mode = "i2c"; - status = "okay"; - }; - - /* USI_2_CMGP_I2C */ - usi_2_cmgp_i2c: usi@11C12024 { - usi_v2_mode = "i2c"; - status = "okay"; - }; - - /* USI_3_CMGP */ - usi_3_cmgp: usi@11C12030 { - /* usi_v2_mode = "i2c" or "spi" or "uart" */ - status = "disabled"; - }; - - /* USI_3_CMGP_I2C */ - usi_3_cmgp_i2c: usi@11C12034 { - /* usi_v2_mode = "i2c" or "spi" or "uart" */ - status = "disabled"; - }; - - /* USI_4_CMGP */ - usi_4_cmgp: usi@11C12040 { - /* usi_v2_mode = "i2c" or "spi" or "uart" */ - status = "disabled"; - }; + firmware { + android { + compatible = "android,firmware"; + fstab { + compatible = "android,fstab"; + system { + compatible = "android,system"; + dev = "/dev/block/platform/13520000.ufs/by-name/system"; + type = "ext4"; + mnt_flags = "ro"; + fsmgr_flags = "wait"; + }; + vendor { + compatible = "android,vendor"; + dev = "/dev/block/platform/13520000.ufs/by-name/vendor"; + type = "ext4"; + mnt_flags = "ro"; + fsmgr_flags = "wait"; + }; + }; + }; + }; - /* USI_4_CMGP_I2C */ - usi_4_cmgp_i2c: usi@11C12044 { - /* usi_v2_mode = "i2c" or "spi" or "uart" */ - status = "disabled"; - }; + serial_0: uart@13820000 { + status = "okay"; + }; - /* USI_PERI_UART */ - usi_peri_uart: usi@10011010 { - usi_v2_mode = "uart"; - status = "okay"; - }; + dsim_0: dsim@0x148E0000 { + lcd_info = <&nt36672a>; + /* reset, lcd_bias_enp, lcd_bias_enn, lcd_bl_en*/ + gpios = <&gpg1 4 0x1>, <&gpg3 1 0x1>, <&gpg3 0 0x1>, <&gpg2 1 0x1>; + }; - /* USI_PERI_CAMI2C_0 */ - usi_peri_cami2c_0: usi@10011020 { - usi_v2_mode = "i2c"; - status = "okay"; - }; + /* USI_0_SHUB */ + usi_0_shub: usi@11013000 { + usi_v2_mode = "spi"; + status = "okay"; + }; - /* USI_PERI_CAMI2C_1 */ - usi_peri_cami2c_1: usi@10011024 { - usi_v2_mode = "i2c"; - status = "okay"; - }; + /* USI_SHUB_0_I2C */ + usi_0_shub_i2c: usi@11013004 { + /* usi_v2_mode = "i2c" or "spi" or "uart" */ + status = "disabled"; + }; - /* USI_PERI_CAMI2C_2 */ - usi_peri_cami2c_2: usi@10011028 { - usi_v2_mode = "i2c"; - status = "okay"; - }; + /* USI_0_CMGP */ + usi_0_cmgp: usi@11C12000 { + /* usi_v2_mode = "i2c" or "spi" or "uart" */ + usi_v2_mode = "i2c"; + status = "okay"; + }; - /* USI_PERI_CAMI2C_3 */ - usi_peri_cami2c_3: usi@1001102C { - usi_v2_mode = "i2c"; - status = "okay"; - }; + /* USI_0_CMGP_I2C */ + usi_0_cmgp_i2c: usi@11C12004 { + usi_v2_mode = "i2c"; + status = "okay"; + }; - /* USI_PERI_SPI_0 */ - usi_peri_spi_0: usi@10011030 { - usi_v2_mode = "spi"; - status = "okay"; - }; + /* USI_1_CMGP */ + usi_1_cmgp: usi@11C12010 { + usi_v2_mode = "i2c"; + status = "okay"; + }; - /* USI_PERI_SPI_1 */ - usi_peri_spi_1: usi@10011034 { - usi_v2_mode = "spi"; - status = "okay"; - }; + /* USI_1_CMGP_I2C */ + usi_1_cmgp_i2c: usi@11C12014 { + usi_v2_mode = "i2c"; + status = "okay"; + }; - /* USI_PERI_USI_0 */ - usi_peri_usi_0: usi@1001103C { - /* usi_v2_mode = "i2c" or "spi" or "uart" */ - status = "disabled"; - }; + /* USI_2_CMGP */ + usi_2_cmgp: usi@11C12020 { + /* usi_v2_mode = "i2c" or "spi" or "uart" */ + usi_v2_mode = "i2c"; + status = "okay"; + }; - /* USI_PERI_USI_0_I2C */ - usi_peri_usi_0_i2c: usi@10011040 { - /* usi_v2_mode = "i2c" or "spi" or "uart" */ - status = "disabled"; - }; + /* USI_2_CMGP_I2C */ + usi_2_cmgp_i2c: usi@11C12024 { + usi_v2_mode = "i2c"; + status = "okay"; + }; - /* USI_PERI_SPI_2 */ - usi_peri_spi_2: usi@10011038 { - usi_v2_mode = "spi"; - status = "okay"; - }; + /* USI_3_CMGP */ + usi_3_cmgp: usi@11C12030 { + /* usi_v2_mode = "i2c" or "spi" or "uart" */ + status = "disabled"; + }; - pinctrl@11850000 { - pmic_irq: pmic-irq { - samsung,pins = "gpa2-0"; - samsung,pin-pud = <3>; - samsung,pin-drv = <3>; - }; - sub_pmic_irq: sub-pmic-irq { - samsung,pins = "gpa1-3"; - samsung,pin-function = <0>; - samsung,pin-pud = <0>; - samsung,pin-drv = <0>; - }; - }; + /* USI_3_CMGP_I2C */ + usi_3_cmgp_i2c: usi@11C12034 { + /* usi_v2_mode = "i2c" or "spi" or "uart" */ + status = "disabled"; + }; - pinctrl@139B0000 { - /* Warm reset information from AP */ - pm_wrsti: pm-wrsti { - samsung,pins = "gpg0-7"; - samsung,pin-con-pdn = <3>; - }; + /* USI_4_CMGP */ + usi_4_cmgp: usi@11C12040 { + /* usi_v2_mode = "i2c" or "spi" or "uart" */ + status = "disabled"; + }; - motor_pwm: motor_pwm { - samsung,pins = "gpg4-2"; - samsung,pin-function = <2>; - samsung,pin-pud = <1>; - samsung,pin-drv = <0>; - }; - }; + /* USI_4_CMGP_I2C */ + usi_4_cmgp_i2c: usi@11C12044 { + /* usi_v2_mode = "i2c" or "spi" or "uart" */ + status = "disabled"; + }; + /* USI_PERI_UART */ + usi_peri_uart: usi@10011010 { + usi_v2_mode = "uart"; + status = "okay"; + }; - ifconn { - status = "okay"; - compatible = "samsung,ifconn"; - ifconn,usbpd = "s2mm005"; - ifconn,muic = "s2mu106-muic"; - }; + /* USI_PERI_CAMI2C_0 */ + usi_peri_cami2c_0: usi@10011020 { + usi_v2_mode = "i2c"; + status = "okay"; + }; - speedy@11a10000 { - status = "okay"; + /* USI_PERI_CAMI2C_1 */ + usi_peri_cami2c_1: usi@10011024 { + usi_v2_mode = "i2c"; + status = "okay"; + }; - s2mpu09mfd@00 { - compatible = "samsung,s2mpu09mfd"; - acpm-ipc-channel = <2>; - i2c-speedy-address; - s2mpu09,wakeup = "enabled"; - s2mpu09,irq-gpio = <&gpa2 0 0>; - reg = <0x00>; - interrupts = <2 0 0>; - interrupt-parent = <&gpa2>; - pinctrl-names = "default"; - pinctrl-0 = <&pmic_irq &pm_wrsti>; - /* RTC: wtsr/smpl */ - wtsr_en = "enabled"; /* enable */ - smpl_en = "enabled"; /* enable */ - wtsr_timer_val = <3>; /* 1000ms */ - smpl_timer_val = <4>; /* 500ms */ - check_jigon = <0>; /* do not check jigon */ - /* RTC: If it's first boot, reset rtc to 1/1/2017 12:00:00(Sun) */ - init_time,sec = <0>; - init_time,min = <0>; - init_time,hour = <12>; - init_time,mday = <1>; - init_time,mon = <0>; - init_time,year = <117>; - init_time,wday = <0>; - - regulators { - b1_reg: BUCK1 { - regulator-name = "vdd_mif"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1100000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <2>; - }; - - b2_reg: BUCK2 { - regulator-name = "vdd_cpucl1"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1300000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <1>; - }; - - b3_reg: BUCK3 { - regulator-name = "vdd_cpucl0"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1300000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <1>; - }; - - b4_reg: BUCK4{ - regulator-name = "vdd_int"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1100000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <2>; - }; - - b5_reg: BUCK5 { - regulator-name = "vdd_g3d"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1200000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <2>; - }; - - b6_reg: BUCK6 { - regulator-name = "vdd_cam_vipx"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1300000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <2>; - }; - - b7_reg: BUCK7 { - regulator-name = "vdd2_mem"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1300000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <3>; - }; - - b8_reg: BUCK8 { - regulator-name = "vdd_lldo"; - regulator-min-microvolt = <1200000>; - regulator-max-microvolt = <1500000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <3>; - }; - - b9_reg: BUCK9 { - regulator-name = "vdd_mldo"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <2100000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <3>; - }; - - l1_reg: LDO1 { - regulator-name = "vdd_ldo1"; - regulator-min-microvolt = <700000>; - regulator-max-microvolt = <1300000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <3>; - }; - - l2_reg: LDO2 { - regulator-name = "vqmmc"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <3375000>; - regulator-ramp-delay = <12000>; - }; - - l3_reg: LDO3 { - regulator-name = "vdd_ldo3"; - regulator-min-microvolt = <800000>; - regulator-max-microvolt = <1950000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <3>; - }; - - l4_reg: LDO4 { - regulator-name = "vdd_ldo4"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1100000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <1>; - }; - - l5_reg: LDO5 { - regulator-name = "vdd_ldo5"; - regulator-min-microvolt = <800000>; - regulator-max-microvolt = <1300000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <1>; - }; - - l6_reg: LDO6 { - regulator-name = "vdd_ldo6"; - regulator-min-microvolt = <800000>; - regulator-max-microvolt = <1300000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <1>; - }; - - l7_reg: LDO7 { - regulator-name = "vdd_ldo7"; - regulator-min-microvolt = <800000>; - regulator-max-microvolt = <1950000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <1>; - }; - - l8_reg: LDO8 { - regulator-name = "vdd_ldo8"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1300000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <1>; - }; - - l9_reg: LDO9 { - regulator-name = "vdd_ldo9"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1300000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <1>; - }; - - l10_reg: LDO10 { - regulator-name = "vdd_ldo10"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1300000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <1>; - }; - - l11_reg: LDO11 { - regulator-name = "vdd_ldo11"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1300000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <1>; - }; - - l12_reg: LDO12 { - regulator-name = "vdd_ldo12"; - regulator-min-microvolt = <800000>; - regulator-max-microvolt = <1300000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <1>; - }; - - l13_reg: LDO13 { - regulator-name = "vdd_ldo13"; - regulator-min-microvolt = <800000>; - regulator-max-microvolt = <1950000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <1>; - }; - - l14_reg: LDO14 { - regulator-name = "vdd_ldo14"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <3375000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <1>; - }; + /* USI_PERI_CAMI2C_2 */ + usi_peri_cami2c_2: usi@10011028 { + usi_v2_mode = "i2c"; + status = "okay"; + }; - l33_reg: LDO33 { - regulator-name = "vdd_ldo33"; - regulator-min-microvolt = <800000>; - regulator-max-microvolt = <1950000>; - regulator-ramp-delay = <12000>; - }; - - l34_reg: LDO34 { - regulator-name = "vdd_ldo34"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <3375000>; - regulator-ramp-delay = <12000>; - }; - - l35_reg: LDO35 { - regulator-name = "vmmc"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <3375000>; - regulator-ramp-delay = <12000>; - }; - - l36_reg: LDO36 { - regulator-name = "vdd_ldo36"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1300000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <1>; - }; - - l37_reg: LDO37 { - regulator-name = "vdd_ldo37"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <3375000>; - regulator-ramp-delay = <12000>; - }; + /* USI_PERI_CAMI2C_3 */ + usi_peri_cami2c_3: usi@1001102C { + usi_v2_mode = "i2c"; + status = "okay"; + }; - l38_reg: LDO38 { - regulator-name = "vdd_ldo38"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <3375000>; - regulator-ramp-delay = <12000>; - regulator-always-on; - }; + /* USI_PERI_SPI_0 */ + usi_peri_spi_0: usi@10011030 { + usi_v2_mode = "spi"; + status = "okay"; + }; - l39_reg: LDO39 { - regulator-name = "vdd_ldo39"; - regulator-min-microvolt = <800000>; - regulator-max-microvolt = <1950000>; - regulator-ramp-delay = <12000>; - regulator-always-on; - }; + /* USI_PERI_SPI_1 */ + usi_peri_spi_1: usi@10011034 { + usi_v2_mode = "spi"; + status = "okay"; + }; - l40_reg: LDO40 { - regulator-name = "vdd_ldo40"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <3375000>; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <3>; - regulator-always-on; - }; + /* USI_PERI_USI_0 */ + usi_peri_usi_0: usi@1001103C { + /* usi_v2_mode = "i2c" or "spi" or "uart" */ + status = "disabled"; + }; - l41_reg: LDO41 { - regulator-name = "vdd_ldo41"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <3375000>; - regulator-ramp-delay = <12000>; - }; + /* USI_PERI_USI_0_I2C */ + usi_peri_usi_0_i2c: usi@10011040 { + /* usi_v2_mode = "i2c" or "spi" or "uart" */ + status = "disabled"; + }; - l42_reg: LDO42 { - regulator-name = "vdd_ldo42"; - regulator-min-microvolt = <800000>; - regulator-max-microvolt = <1950000>; - regulator-ramp-delay = <12000>; - regulator-always-on; - }; + /* USI_PERI_SPI_2 */ + usi_peri_spi_2: usi@10011038 { + usi_v2_mode = "spi"; + status = "okay"; + }; - l43_reg: LDO43 { - regulator-name = "vdd_ldo43"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1300000>; - regulator-always-on; - regulator-ramp-delay = <12000>; - regulator-initial-mode = <1>; - }; + ifconn { + status = "okay"; + compatible = "samsung,ifconn"; + ifconn,usbpd = "s2mm005"; + ifconn,muic = "s2mu106-muic"; + }; - l44_reg: LDO44 { - regulator-name = "vdd_ldo44"; - regulator-min-microvolt = <800000>; - regulator-max-microvolt = <1300000>; - regulator-ramp-delay = <12000>; - regulator-always-on; + speedy@11a10000 { + status = "okay"; + #address-cells = <1>; + #size-cells = <0>; + s2mpu09mfd@00 { + compatible = "samsung,s2mpu09mfd"; + acpm-ipc-channel = <2>; + i2c-speedy-address; + s2mpu09,wakeup = "enabled"; + s2mpu09,irq-gpio = <&gpa2 0 0>; + reg = <0x00>; + interrupts = <2 0 0>; + interrupt-parent = <&gpa2>; + pinctrl-names = "default"; + pinctrl-0 = <&pmic_irq &pm_wrsti>; + /* RTC: wtsr/smpl */ + wtsr_en = "enabled"; /* enable */ + smpl_en = "enabled"; /* enable */ + wtsr_timer_val = <3>; /* 1000ms */ + smpl_timer_val = <4>; /* 500ms */ + check_jigon = <0>; /* do not check jigon */ + /* RTC: If it's first boot, reset rtc to 1/1/2017 12:00:00(Sun) */ + init_time,sec = <0>; + init_time,min = <0>; + init_time,hour = <12>; + init_time,mday = <1>; + init_time,mon = <0>; + init_time,year = <117>; + init_time,wday = <0>; + + regulators { + b1_reg: BUCK1 { + regulator-name = "vdd_mif"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <1100000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <2>; + }; + + b2_reg: BUCK2 { + regulator-name = "vdd_cpucl1"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <1300000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <1>; + }; + + b3_reg: BUCK3 { + regulator-name = "vdd_cpucl0"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <1300000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <1>; + }; + + b4_reg: BUCK4{ + regulator-name = "vdd_int"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <1100000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <2>; + }; + + b5_reg: BUCK5 { + regulator-name = "vdd_g3d"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <1200000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <2>; + }; + + b6_reg: BUCK6 { + regulator-name = "vdd_cam_vipx"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <1300000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <2>; + }; + + b7_reg: BUCK7 { + regulator-name = "vdd2_mem"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <1300000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <3>; + }; + + b8_reg: BUCK8 { + regulator-name = "vdd_lldo"; + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <1500000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <3>; + }; + + b9_reg: BUCK9 { + regulator-name = "vdd_mldo"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <2100000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <3>; + }; + + l1_reg: LDO1 { + regulator-name = "vdd_ldo1"; + regulator-min-microvolt = <700000>; + regulator-max-microvolt = <1300000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <3>; + }; + + l2_reg: LDO2 { + regulator-name = "vqmmc"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3375000>; + regulator-ramp-delay = <12000>; + }; + + l3_reg: LDO3 { + regulator-name = "vdd_ldo3"; + regulator-min-microvolt = <800000>; + regulator-max-microvolt = <1950000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <3>; + }; + + l4_reg: LDO4 { + regulator-name = "vdd_ldo4"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <1100000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <1>; + }; + + l5_reg: LDO5 { + regulator-name = "vdd_ldo5"; + regulator-min-microvolt = <800000>; + regulator-max-microvolt = <1300000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <1>; + }; + + l6_reg: LDO6 { + regulator-name = "vdd_ldo6"; + regulator-min-microvolt = <800000>; + regulator-max-microvolt = <1300000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <1>; + }; + + l7_reg: LDO7 { + regulator-name = "vdd_ldo7"; + regulator-min-microvolt = <800000>; + regulator-max-microvolt = <1950000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <1>; + }; + + l8_reg: LDO8 { + regulator-name = "vdd_ldo8"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <1300000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <1>; + }; + + l9_reg: LDO9 { + regulator-name = "vdd_ldo9"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <1300000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <1>; + }; + + l10_reg: LDO10 { + regulator-name = "vdd_ldo10"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <1300000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <1>; + }; + + l11_reg: LDO11 { + regulator-name = "vdd_ldo11"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <1300000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <1>; + }; + + l12_reg: LDO12 { + regulator-name = "vdd_ldo12"; + regulator-min-microvolt = <800000>; + regulator-max-microvolt = <1300000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <1>; + }; + + l13_reg: LDO13 { + regulator-name = "vdd_ldo13"; + regulator-min-microvolt = <800000>; + regulator-max-microvolt = <1950000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <1>; + }; + + l14_reg: LDO14 { + regulator-name = "vdd_ldo14"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3375000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <1>; + }; + + l33_reg: LDO33 { + regulator-name = "vdd_ldo33"; + regulator-min-microvolt = <800000>; + regulator-max-microvolt = <1950000>; + regulator-ramp-delay = <12000>; + }; + + l34_reg: LDO34 { + regulator-name = "vdd_ldo34"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3375000>; + regulator-ramp-delay = <12000>; + }; + + l35_reg: LDO35 { + regulator-name = "vmmc"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3375000>; + regulator-ramp-delay = <12000>; + }; + + l36_reg: LDO36 { + regulator-name = "vdd_ldo36"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <1300000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <1>; + }; + + l37_reg: LDO37 { + regulator-name = "vdd_ldo37"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3375000>; + regulator-ramp-delay = <12000>; + }; + + l38_reg: LDO38 { + regulator-name = "vdd_ldo38"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3375000>; + regulator-ramp-delay = <12000>; + regulator-always-on; + }; + + l39_reg: LDO39 { + regulator-name = "vdd_ldo39"; + regulator-min-microvolt = <800000>; + regulator-max-microvolt = <1950000>; + regulator-ramp-delay = <12000>; + regulator-always-on; + }; + + l40_reg: LDO40 { + regulator-name = "vdd_ldo40"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3375000>; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <3>; + regulator-always-on; + }; + + l41_reg: LDO41 { + regulator-name = "vdd_ldo41"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3375000>; + regulator-ramp-delay = <12000>; + }; + + l42_reg: LDO42 { + regulator-name = "vdd_ldo42"; + regulator-min-microvolt = <800000>; + regulator-max-microvolt = <1950000>; + regulator-ramp-delay = <12000>; + regulator-always-on; + }; + + l43_reg: LDO43 { + regulator-name = "vdd_ldo43"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <1300000>; + regulator-always-on; + regulator-ramp-delay = <12000>; + regulator-initial-mode = <1>; + }; + + l44_reg: LDO44 { + regulator-name = "vdd_ldo44"; + regulator-min-microvolt = <800000>; + regulator-max-microvolt = <1300000>; + regulator-ramp-delay = <12000>; + regulator-always-on; + }; + }; }; }; - }; - }; - - - exynos_rgt { - compatible = "samsung,exynos-rgt"; - }; - - mailbox_cp: mcu_ipc@11920000 { - compatible = "samsung,exynos-shd-ipc-mailbox"; - reg = <0x0 0x11920000 0x180>; - mcu,name = "mcu_ipc_cp"; - mcu,id = <0>; - interrupts = <0 40 0 >; - }; - mailbox_gnss: mcu_ipc@11A00000 { - compatible = "samsung,exynos-shd-ipc-mailbox"; - reg = <0x0 0x11A00000 0x180>; - mcu,name = "mcu_ipc_gnss"; - mcu,id = <1>; - interrupts = ; /* INTREQ__MAILBOX_GNSS2AP */ - }; - - gnss_pdata { - status = "okay"; - compatible = "samsung,gnss_shdmem_if"; - shmem,name = "KEPLER"; - shmem,device_node_name = "gnss_ipc"; - - /* INTREQ__ALIVE_GNSS_ACTIVE, INTREQ__GNSS2AP_WDOG_RESET, INTREQ__GNSS2AP_WAKEUP, INTREQ__GNSS2AP */ - interrupts = , , , ; - interrupt-names = "ACTIVE", "WATCHDOG", "WAKEUP", "REQ_INIT"; - - memory-region = <&gnss_reserved>; - mbox_info = <&mailbox_gnss>; - - mbx,int_ap2gnss_bcmd = <0>; - mbx,int_ap2gnss_req_fault_info = <1>; - mbx,int_ap2gnss_ipc_msg = <2>; - mbx,int_ap2gnss_ack_wake_set = <3>; - mbx,int_ap2gnss_ack_wake_clr = <4>; - - mbx,irq_gnss2ap_bcmd = <0>; - mbx,irq_gnss2ap_rsp_fault_info = <1>; - mbx,irq_gnss2ap_ipc_msg = <2>; - mbx,irq_gnss2ap_req_wake_clr = <4>; - - mbx,reg_bcmd_ctrl = <0>, <1>, <2>, <3>; - - reg_rx_ipc_msg = <1 5>; - reg_tx_ipc_msg = <1 4>; - reg_rx_head = <1 3>; - reg_rx_tail = <1 2>; - reg_tx_head = <1 1>; - reg_tx_tail = <1 0>; - fault_info = <1 0x200000 0x180000>; - - shmem,ipc_offset = <0x380000>; - shmem,ipc_size = <0x80000>; - shmem,ipc_reg_cnt = <32>; - }; - - gpio_keys { - status = "okay"; - compatible = "gpio-keys"; - #address-cells = <1>; - #size-cells = <0>; - pinctrl-names = "default"; - pinctrl-0 = <&key_voldown &key_volup &key_power>; - button@1 { - label = "gpio-keys: KEY_VOLUMEDOWN"; - linux,code = <114>; - gpios = <&gpa1 6 0xf>; - }; - button@2 { - label = "gpio-keys: KEY_VOLUMEUP"; - linux,code = <115>; - gpios = <&gpa1 5 0xf>; - }; - button@3 { - label = "gpio-keys: KEY_POWER"; - linux,code = <116>; - gpios = <&gpa1 7 0xf>; - gpio-key,wakeup = <1>; - }; - }; - - pinctrl@11850000 { - key_voldown: key-voldown { - samsung,pins = "gpa1-6"; - samsung,pin-function = <0xf>; - samsung,pin-pud = <0>; - samsung,pin-drv = <0>; - }; - - key_volup: key-volup { - samsung,pins = "gpa1-5"; - samsung,pin-function = <0xf>; - samsung,pin-pud = <0>; - samsung,pin-drv = <0>; - }; - - key_power: key-power { - samsung,pins = "gpa1-7"; - samsung,pin-function = <0xf>; - samsung,pin-pud = <0>; - samsung,pin-drv = <0>; - }; - }; + exynos_rgt { + compatible = "samsung,exynos-rgt"; + }; - pinctrl@11850000 { - dwmmc2_cd_ext_irq: dwmmc2_cd_ext_irq { - samsung,pins = "gpa0-7"; - samsung,pin-function = <0xf>; - samsung,pin-pud = <0>; - samsung,pin-drv = <3>; - }; - }; + mailbox_cp: mcu_ipc@11920000 { + compatible = "samsung,exynos-shd-ipc-mailbox"; + reg = <0x0 0x11920000 0x180>; + mcu,name = "mcu_ipc_cp"; + mcu,id = <0>; + interrupts = <0 40 0 >; + }; - dwmmc2@13550000 { - status = "okay"; - num-slots = <1>; - supports-4bit; - supports-cmd23; - supports-erase; - supports-highspeed; - sd-uhs-sdr50; - sd-uhs-sdr104; - card-detect-invert; - card-detect-gpio; - bypass-for-allpass; - card-init-hwacg-ctrl; - skip-init-mmc-scan; - qos-dvfs-level = <100000>; - fifo-depth = <0x40>; - desc-size = <4>; - card-detect-delay = <200>; - data-timeout = <200>; - hto-timeout = <80>; - samsung,dw-mshc-ciu-div = <3>; - clock-frequency = <800000000>; - samsung,dw-mshc-sdr-timing = <3 0 2 0>; - samsung,dw-mshc-ddr-timing = <3 0 2 1>; - samsung,dw-mshc-sdr50-timing = <3 0 4 2>; - samsung,dw-mshc-sdr104-timing = <3 0 3 0>; - - num-ref-clks = <9>; - ciu_clkin = <25 50 50 25 50 100 200 50 50>; - - /* Swapping clock drive strength */ - clk-drive-number = <4>; - pinctrl-names = "default", - "fast-slew-rate-1x", - "fast-slew-rate-2x", - "fast-slew-rate-3x", - "fast-slew-rate-4x"; - pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus1 &sd2_bus4 &dwmmc2_cd_ext_irq>; - pinctrl-1 = <&sd2_clk_fast_slew_rate_1x>; - pinctrl-2 = <&sd2_clk_fast_slew_rate_2x>; - pinctrl-3 = <&sd2_clk_fast_slew_rate_3x>; - pinctrl-4 = <&sd2_clk_fast_slew_rate_4x>; - - card-detect = <&gpa0 7 0xf>; - slot@0 { - reg = <0>; - bus-width = <4>; - disable-wp; - }; - }; + mailbox_gnss: mcu_ipc@11A00000 { + compatible = "samsung,exynos-shd-ipc-mailbox"; + reg = <0x0 0x11A00000 0x180>; + mcu,name = "mcu_ipc_gnss"; + mcu,id = <1>; + interrupts = <0 43 0>; /* INTREQ__MAILBOX_GNSS2AP */ + }; - pinctrl@11850000 { - attn_irq: attn-irq { - samsung,pins = "gpa2-4"; - samsung,pin-function = <0xf>; - samsung,pin-pud = <0>; - samsung,pin-drv = <0>; - }; - attn_input: attn-input { - samsung,pins = "gpa2-4"; - samsung,pin-function = <0>; - samsung,pin-pud = <1>; - }; - }; + gnss_pdata { + status = "okay"; - usb_notifier { - compatible = "samsung,usb-notifier"; - udc = <&udc>; - }; + compatible = "samsung,gnss_shdmem_if"; + shmem,name = "KEPLER"; + shmem,device_node_name = "gnss_ipc"; - usb@13200000 { - status = "okay"; - dwc3 { - dr_mode = "otg"; - maximum-speed = "high-speed"; - }; - }; + /* INTREQ__ALIVE_GNSS_ACTIVE, INTREQ__GNSS2AP_WDOG_RESET, INTREQ__GNSS2AP_WAKEUP, INTREQ__GNSS2AP */ + interrupts = <0 27 0>, <0 81 0>, <0 80 0>, <0 79 0>; + interrupt-names = "ACTIVE", "WATCHDOG", "WAKEUP", "REQ_INIT"; - usbdrd_phy:phy@131D0000 { - status = "okay"; - usb3phy-isolation = <1>; + memory-region = <&gnss_reserved>; + mbox_info = <&mailbox_gnss>; - hs_tune_param = <&usb_hs_tune>; - }; + mbx,int_ap2gnss_bcmd = <0>; + mbx,int_ap2gnss_req_fault_info = <1>; + mbx,int_ap2gnss_ipc_msg = <2>; + mbx,int_ap2gnss_ack_wake_set = <3>; + mbx,int_ap2gnss_ack_wake_clr = <4>; - usbdrd3_phy:phy@131F0000 { - status = "okay"; - usb3phy-isolation = <1>; + mbx,irq_gnss2ap_bcmd = <0>; + mbx,irq_gnss2ap_rsp_fault_info = <1>; + mbx,irq_gnss2ap_ipc_msg = <2>; + mbx,irq_gnss2ap_req_wake_clr = <4>; - hs_tune_param = <&usb3_hs_tune>; - ss_tune_param = <&usb3_ss_tune>; - }; + mbx,reg_bcmd_ctrl = <0>, <1>, <2>, <3>; - usb_hs_tune:hs_tune { - hs_tune_cnt = <12>; + reg_rx_ipc_msg = <1 5>; + reg_tx_ipc_msg = <1 4>; + reg_rx_head = <1 3>; + reg_rx_tail = <1 2>; + reg_tx_head = <1 1>; + reg_tx_tail = <1 0>; + fault_info = <1 0x200000 0x180000>; - /* value = */ - hs_tune1 { - tune_name = "tx_vref"; - tune_value = <0xf 0xf>; - }; + shmem,ipc_offset = <0x380000>; + shmem,ipc_size = <0x80000>; + shmem,ipc_reg_cnt = <32>; + }; - hs_tune2 { - tune_name = "tx_pre_emp"; - tune_value = <0x3 0x3>; - }; + gpio_keys { + status = "okay"; + compatible = "gpio-keys"; + #address-cells = <1>; + #size-cells = <0>; + pinctrl-names = "default"; + pinctrl-0 = <&key_voldown &key_volup &key_power>; + button@1 { + label = "gpio-keys: KEY_VOLUMEDOWN"; + linux,code = <114>; + gpios = <&gpa1 6 0xf>; + }; + button@2 { + label = "gpio-keys: KEY_VOLUMEUP"; + linux,code = <115>; + gpios = <&gpa1 5 0xf>; + }; + button@3 { + label = "gpio-keys: KEY_POWER"; + linux,code = <116>; + gpios = <&gpa1 7 0xf>; + gpio-key,wakeup = <1>; + }; + }; - hs_tune3 { - tune_name = "tx_pre_emp_plus"; - tune_value = <0x0 0x0>; - }; + dwmmc2@13550000 { + status = "okay"; + num-slots = <1>; + supports-4bit; + supports-cmd23; + supports-erase; + supports-highspeed; + sd-uhs-sdr50; + sd-uhs-sdr104; + card-detect-invert; + card-detect-gpio; + bypass-for-allpass; + card-init-hwacg-ctrl; + skip-init-mmc-scan; + qos-dvfs-level = <100000>; + fifo-depth = <0x40>; + desc-size = <4>; + card-detect-delay = <200>; + data-timeout = <200>; + hto-timeout = <80>; + samsung,dw-mshc-ciu-div = <3>; + clock-frequency = <800000000>; + samsung,dw-mshc-sdr-timing = <3 0 2 0>; + samsung,dw-mshc-ddr-timing = <3 0 2 1>; + samsung,dw-mshc-sdr50-timing = <3 0 4 2>; + samsung,dw-mshc-sdr104-timing = <3 0 3 0>; + + num-ref-clks = <9>; + ciu_clkin = <25 50 50 25 50 100 200 50 50>; + + /* Swapping clock drive strength */ + clk-drive-number = <4>; + pinctrl-names = "default", + "fast-slew-rate-1x", + "fast-slew-rate-2x", + "fast-slew-rate-3x", + "fast-slew-rate-4x"; + pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus1 &sd2_bus4 &dwmmc2_cd_ext_irq>; + pinctrl-1 = <&sd2_clk_fast_slew_rate_1x>; + pinctrl-2 = <&sd2_clk_fast_slew_rate_2x>; + pinctrl-3 = <&sd2_clk_fast_slew_rate_3x>; + pinctrl-4 = <&sd2_clk_fast_slew_rate_4x>; + + card-detect = <&gpa0 7 0xf>; + #address-cells = <1>; + #size-cells = <0>; + slot@0 { + reg = <0>; + bus-width = <4>; + disable-wp; + }; + }; - hs_tune4 { - tune_name = "tx_res"; - tune_value = <0x3 0x3>; - }; + usb_notifier { + compatible = "samsung,usb-notifier"; + udc = <&udc>; + }; - hs_tune5 { - tune_name = "tx_rise"; - tune_value = <0x3 0x3>; - }; + usb@13200000 { + status = "okay"; + dwc3 { + dr_mode = "otg"; + maximum-speed = "high-speed"; + }; + }; - hs_tune6 { - tune_name = "tx_hsxv"; - tune_value = <0x3 0x3>; - }; + usbdrd_phy:phy@131D0000 { + status = "okay"; + usb3phy-isolation = <1>; - hs_tune7 { - tune_name = "tx_fsls"; - tune_value = <0x3 0x3>; - }; + hs_tune_param = <&usb_hs_tune>; + }; - hs_tune8 { - tune_name = "rx_sqrx"; - tune_value = <0x7 0x7>; - }; + usbdrd3_phy:phy@131F0000 { + status = "okay"; + usb3phy-isolation = <1>; - hs_tune9 { - tune_name = "compdis"; - tune_value = <0x7 0x7>; - }; + hs_tune_param = <&usb3_hs_tune>; + ss_tune_param = <&usb3_ss_tune>; + }; - hs_tune10 { - tune_name = "otg"; - tune_value = <0x2 0x2>; - }; + usb_hs_tune:usb_hs_tune { + hs_tune_cnt = <12>; - hs_tune11 { - /* true : 1, false: 0 */ - /* */ - tune_name = "enable_user_imp"; - tune_value = <0x0 0x0>; - }; + /* value = */ + hs_tune1 { + tune_name = "tx_vref"; + tune_value = <0xf 0xf>; + }; - hs_tune12 { - /* PHY clk : 1 , FREE clk : 0 */ - tune_name = "is_phyclock"; - tune_value = <0x1 0x1>; - }; - }; + hs_tune2 { + tune_name = "tx_pre_emp"; + tune_value = <0x3 0x3>; + }; - usb3_ss_tune:ss_tune { - ss_tune_cnt = <15>; + hs_tune3 { + tune_name = "tx_pre_emp_plus"; + tune_value = <0x0 0x0>; + }; - /* value = */ - ss_tune1 { - tune_name = "tx0_term_offset"; - tune_value = <0x0 0x0>; - }; + hs_tune4 { + tune_name = "tx_res"; + tune_value = <0x3 0x3>; + }; - ss_tune2 { - tune_name = "pcs_tx_swing_full"; - tune_value = <0x7f 0x7f>; - }; + hs_tune5 { + tune_name = "tx_rise"; + tune_value = <0x3 0x3>; + }; - ss_tune3 { - tune_name = "pcs_tx_deemph_6db"; - tune_value = <0x1c 0x1c>; - }; + hs_tune6 { + tune_name = "tx_hsxv"; + tune_value = <0x3 0x3>; + }; - ss_tune4 { - tune_name = "pcs_tx_deemph_3p5db"; - tune_value = <0x1c 0x1c>; - }; + hs_tune7 { + tune_name = "tx_fsls"; + tune_value = <0x3 0x3>; + }; - ss_tune5 { - tune_name = "tx_vboost_lvl_sstx"; - tune_value = <0x7 0x7>; - }; + hs_tune8 { + tune_name = "rx_sqrx"; + tune_value = <0x7 0x7>; + }; - ss_tune6 { - tune_name = "tx_vboost_lvl"; - tune_value = <0x4 0x4>; - }; + hs_tune9 { + tune_name = "compdis"; + tune_value = <0x7 0x7>; + }; - ss_tune7 { - tune_name = "los_level"; - tune_value = <0x9 0x9>; - }; + hs_tune10 { + tune_name = "otg"; + tune_value = <0x2 0x2>; + }; - ss_tune8 { - tune_name = "los_bias"; - tune_value = <0x5 0x5>; - }; + hs_tune11 { + /* true : 1, false: 0 */ + /* */ + tune_name = "enable_user_imp"; + tune_value = <0x0 0x0>; + }; - ss_tune9 { - tune_name = "pcs_rx_los_mask_val"; - tune_value = <0x104 0x104>; - }; + hs_tune12 { + /* PHY clk : 1 , FREE clk : 0 */ + tune_name = "is_phyclock"; + tune_value = <0x1 0x1>; + }; + }; - ss_tune10 { - tune_name = "tx_eye_height_cntl_en"; - tune_value = <0x1 0x1>; - }; + usb3_ss_tune:ss_tune { + ss_tune_cnt = <15>; - ss_tune11 { - tune_name = "pipe_tx_deemph_update_delay"; - tune_value = <0x2 0x2>; - }; + /* value = */ + ss_tune1 { + tune_name = "tx0_term_offset"; + tune_value = <0x0 0x0>; + }; - ss_tune12 { - tune_name = "pcs_tx_swing_full_sstx"; - tune_value = <0x7f 0x7f>; - }; - ss_tune13 { - tune_name = "rx_eq_fix_val"; - tune_value = <0x2 0x2>; - }; + ss_tune2 { + tune_name = "pcs_tx_swing_full"; + tune_value = <0x7f 0x7f>; + }; - ss_tune14 { - tune_name = "rx_decode_mode"; - tune_value = <0x1 0x1>; - }; + ss_tune3 { + tune_name = "pcs_tx_deemph_6db"; + tune_value = <0x1c 0x1c>; + }; - ss_tune15 { - tune_name = "decrese_ss_tx_imp"; - tune_value = <0x1 0x1>; - }; - }; + ss_tune4 { + tune_name = "pcs_tx_deemph_3p5db"; + tune_value = <0x1c 0x1c>; + }; - usb3_hs_tune:hs_tune { - hs_tune_cnt = <10>; + ss_tune5 { + tune_name = "tx_vboost_lvl_sstx"; + tune_value = <0x7 0x7>; + }; - /* value = */ - hs_tune1 { - tune_name = "tx_pre_emp"; - tune_value = <0x3 0x3>; - }; + ss_tune6 { + tune_name = "tx_vboost_lvl"; + tune_value = <0x4 0x4>; + }; - hs_tune2 { - tune_name = "tx_pre_emp_plus"; - tune_value = <0x0 0x0>; - }; + ss_tune7 { + tune_name = "los_level"; + tune_value = <0x9 0x9>; + }; - hs_tune3 { - tune_name = "tx_vref"; - tune_value = <0x7 0x7>; - }; + ss_tune8 { + tune_name = "los_bias"; + tune_value = <0x5 0x5>; + }; - hs_tune4 { - tune_name = "rx_sqrx"; - tune_value = <0x7 0x7>; - }; + ss_tune9 { + tune_name = "pcs_rx_los_mask_val"; + tune_value = <0x104 0x104>; + }; - hs_tune5 { - tune_name = "tx_rise"; - tune_value = <0x3 0x3>; - }; + ss_tune10 { + tune_name = "tx_eye_height_cntl_en"; + tune_value = <0x1 0x1>; + }; - hs_tune6 { - tune_name = "compdis"; - tune_value = <0x7 0x7>; - }; + ss_tune11 { + tune_name = "pipe_tx_deemph_update_delay"; + tune_value = <0x2 0x2>; + }; - hs_tune7 { - tune_name = "tx_hsxv"; - tune_value = <0x3 0x3>; - }; + ss_tune12 { + tune_name = "pcs_tx_swing_full_sstx"; + tune_value = <0x7f 0x7f>; + }; + ss_tune13 { + tune_name = "rx_eq_fix_val"; + tune_value = <0x2 0x2>; + }; - hs_tune8 { - tune_name = "tx_fsls"; - tune_value = <0x3 0x3>; - }; + ss_tune14 { + tune_name = "rx_decode_mode"; + tune_value = <0x1 0x1>; + }; - hs_tune9 { - tune_name = "tx_res"; - tune_value = <0x3 0x3>; - }; + ss_tune15 { + tune_name = "decrese_ss_tx_imp"; + tune_value = <0x1 0x1>; + }; + }; - hs_tune10 { - tune_name = "utim_clk"; - tune_value = <0x1 0x1>; - }; - }; + usb3_hs_tune:usb3_hs_tune { + hs_tune_cnt = <10>; - /* Secure RPMB */ - ufs-srpmb { - compatible = "samsung,ufs-srpmb"; - interrupts = <0 460 0>; - }; + /* value = */ + hs_tune1 { + tune_name = "tx_pre_emp"; + tune_value = <0x3 0x3>; + }; - V_SYS: fixedregulator@0 { - compatible = "regulator-fixed"; - regulator-name = "V_SYS"; - regulator-min-microvolt = <4200000>; - regulator-max-microvolt = <4200000>; - regulator-boot-on; - regulator-always-on; - }; + hs_tune2 { + tune_name = "tx_pre_emp_plus"; + tune_value = <0x0 0x0>; + }; - pinctrl@139B0000 { - vdd_on: vdd-on { - samsung,pins ="gpg3-4"; - samsung,pin-function = <1>; - samsung,pin-val = <1>; - samsung,pin-pud = <3>; - }; + hs_tune3 { + tune_name = "tx_vref"; + tune_value = <0x7 0x7>; + }; - vdd_off: vdd-off { - samsung,pins ="gpg3-4"; - samsung,pin-function = <0>; - samsung,pin-val = <0>; - samsung,pin-pud = <1>; - }; + hs_tune4 { + tune_name = "rx_sqrx"; + tune_value = <0x7 0x7>; + }; - codec_reset: codec-reset { - samsung,pins ="gpg3-2"; - samsung,pin-pud = <0>; - samsung,pin-con-pdn =<3>; - samsung,pin-pud-pdn = <0>; - }; + hs_tune5 { + tune_name = "tx_rise"; + tune_value = <0x3 0x3>; + }; - codec_en: codec_en { - samsung,pins = "gpg1-1"; - samsung,pin-function = <1>; - samsung,pin-pud = <3>; - samsung,pin-val = <1>; - }; -#if 0 /*Should be removed: enable speaker amp on EVB board*/ - amp_sda: amp-sda { - samsung,pins = "gpp2-2"; - samsung,pin-function = <3>; - samsung,pin-pud = <3>; - samsung,pin-drv = <0>; - }; - amp_scl: amp-scl { - samsung,pins = "gpp2-1"; - samsung,pin-function = <3>; - samsung,pin-pud = <3>; - samsung,pin-drv = <0>; - }; - amp_ad1: amp-ad1 { - samsung,pins = "gpp2-0"; - samsung,pin-function = <1>; - samsung,pin-val = <0>; - samsung,pin-pud = <1>; - }; - amp_ad0: amp-ad0 { - samsung,pins = "gpp2-3"; - samsung,pin-function = <1>; - samsung,pin-val = <0>; - samsung,pin-pud = <1>; - }; -#endif - }; + hs_tune6 { + tune_name = "compdis"; + tune_value = <0x7 0x7>; + }; - spi_6: spi@13900000 { - status = "disable"; - pinctrl-names = "default"; - pinctrl-0 = <&spi6_bus &spi6_cs_func>; - /*cs-gpios = <&gpp2 3 0>;*/ - /*gpp2[3]*/ - /*num-cs = <1>;*/ + hs_tune7 { + tune_name = "tx_hsxv"; + tune_value = <0x3 0x3>; + }; - cs35l41_left: cs35l41@0 { - compatible = "cirrus,cs35l41"; - reg = <0x0>; + hs_tune8 { + tune_name = "tx_fsls"; + tune_value = <0x3 0x3>; + }; - spi-max-frequency = <9600000>; + hs_tune9 { + tune_name = "tx_res"; + tune_value = <0x3 0x3>; + }; - interrupts = <2 0 0>; - interrupt-controller; - interrupt-parent = <&gpa0>; - reset-gpios = <&gpg3 3 0>; - #sound-dai-cells = <1>; + hs_tune10 { + tune_name = "utim_clk"; + tune_value = <0x1 0x1>; + }; + }; - VA-supply = <&l42_reg>; - VP-supply = <&V_SYS>; + /* Secure RPMB */ + ufs-srpmb { + compatible = "samsung,ufs-srpmb"; + interrupts = <0 460 0>; + }; - cirrus,boost-peak-milliamp = <4500>; - cirrus,boost-ind-nanohenry = <1000>; - cirrus,boost-cap-microfarad = <15>; - cirrus,asp-sdout-hiz = <0x1>; - cirrus,gpio-config2 { - cirrus,gpio-src-select = <0x4>; - cirrus,gpio-output-enable; + V_SYS: fixedregulator@0 { + compatible = "regulator-fixed"; + regulator-name = "V_SYS"; + regulator-min-microvolt = <4200000>; + regulator-max-microvolt = <4200000>; + regulator-boot-on; + regulator-always-on; }; - controller-data { - /*cs-gpio = */ + spi_6: spi@13900000 { + status = "disable"; + pinctrl-names = "default"; + pinctrl-0 = <&spi6_bus &spi6_cs_func>; /*cs-gpios = <&gpp2 3 0>;*/ - samsung,spi-feedback-delay = <1>; - samsung,spi-chip-select-mode = <0>; + /*gpp2[3]*/ + /*num-cs = <1>;*/ + #address-cells = <1>; + #size-cells = <0>; + cs35l41_left: cs35l41@0 { + compatible = "cirrus,cs35l41"; + reg = <0x0>; + + spi-max-frequency = <9600000>; + + interrupts = <2 0 0>; + interrupt-controller; + interrupt-parent = <&gpa0>; + reset-gpios = <&gpg3 3 0>; + #sound-dai-cells = <1>; + + VA-supply = <&l42_reg>; + VP-supply = <&V_SYS>; + + cirrus,boost-peak-milliamp = <4500>; + cirrus,boost-ind-nanohenry = <1000>; + cirrus,boost-cap-microfarad = <15>; + cirrus,asp-sdout-hiz = <0x1>; + cirrus,gpio-config2 { + cirrus,gpio-src-select = <0x4>; + cirrus,gpio-output-enable; + }; + + controller-data { + /*cs-gpio = */ + /*cs-gpios = <&gpp2 3 0>;*/ + samsung,spi-feedback-delay = <1>; + samsung,spi-chip-select-mode = <0>; + }; + }; }; - }; - }; #if 0 - i2c@0 { - status = "okay"; - compatible = "i2c-gpio"; - - pinctrl-names = "default"; - pinctrl-0 = <&_sda &_scl &_ad0 &_ad1>; + i2c@0 { + status = "okay"; + compatible = "i2c-gpio"; - gpios = <&gpp2 2 0 /* sda */ - &gpp2 1 0 /* scl */ - >; + pinctrl-names = "default"; + pinctrl-0 = <&_sda &_scl &_ad0 &_ad1>; - #address-cells = <1>; - #size-cells = <0>; - - cs35l41_left: cs35l41@40 { - compatible = "cirrus,cs35l41"; - reg = <0x40>; - - interrupts = <2 0 0>; - interrupt-controller; - interrupt-parent = <&gpa0>; - reset-gpios = <&gpg3 3 0>; - #sound-dai-cells = <1>; + gpios = <&gpp2 2 0 /* sda */ + &gpp2 1 0 /* scl */ + >; - VA-supply = <&l42_reg>; - VP-supply = <&V_SYS>; + #address-cells = <1>; + #size-cells = <0>; - cirrus,boost-peak-milliamp = <4500>; - cirrus,boost-ind-nanohenry = <1000>; - cirrus,boost-cap-microfarad = <15>; - cirrus,asp-sdout-hiz = <0x1>; - cirrus,gpio-config2 { - cirrus,gpio-src-select = <0x4>; - cirrus,gpio-output-enable; + cs35l41_left: cs35l41@40 { + compatible = "cirrus,cs35l41"; + reg = <0x40>; + + interrupts = <2 0 0>; + interrupt-controller; + interrupt-parent = <&gpa0>; + reset-gpios = <&gpg3 3 0>; + #sound-dai-cells = <1>; + + VA-supply = <&l42_reg>; + VP-supply = <&V_SYS>; + + cirrus,boost-peak-milliamp = <4500>; + cirrus,boost-ind-nanohenry = <1000>; + cirrus,boost-cap-microfarad = <15>; + cirrus,asp-sdout-hiz = <0x1>; + cirrus,gpio-config2 { + cirrus,gpio-src-select = <0x4>; + cirrus,gpio-output-enable; + }; + }; }; - }; - }; #endif - spi_9: spi@13940000 { - pinctrl-names = "default"; - pinctrl-0 = <&spi9_bus &spi9_cs_func &codec_en>; - status = "okay"; - cs47l35: cs47l35@0 { - compatible = "cirrus,cs47l35"; - reg = <0x0>; - - spi-max-frequency = <11000000>; - - interrupts = <6 0 0>; - interrupt-controller; - #interrupt-cells = <2>; - interrupt-parent = <&gpa0>; - gpio-controller; - #gpio-cells = <2>; - #sound-dai-cells = <1>; + spi_9: spi@13940000 { + pinctrl-names = "default"; + pinctrl-0 = <&spi9_bus &spi9_cs_func &codec_en>; + status = "okay"; + #address-cells = <1>; + #size-cells = <0>; + cs47l35: cs47l35@0 { + compatible = "cirrus,cs47l35"; + reg = <0x0>; + + spi-max-frequency = <11000000>; + + interrupts = <6 0 0>; + interrupt-controller; + #interrupt-cells = <2>; + interrupt-parent = <&gpa0>; + gpio-controller; + #gpio-cells = <2>; + #sound-dai-cells = <1>; + + /*l42_reg shoulde be change after board fixed*/ + AVDD-supply = <&l42_reg>; + DBVDD1-supply = <&l42_reg>; + DBVDD2-supply = <&l42_reg>; + CPVDD1-supply = <&l42_reg>; + CPVDD2-supply = <&l44_reg>; + DCVDD-supply = <&l44_reg>; + SPKVDD-supply = <&V_SYS>; + + reset-gpios = <&gpg3 2 0>; + + cirrus,dmic-ref = <0 0 0>; + cirrus,inmode = < + 0 0 0 0 /* IN1 */ + 0 0 0 0 /* IN2 */ + >; - /*l42_reg shoulde be change after board fixed*/ - AVDD-supply = <&l42_reg>; - DBVDD1-supply = <&l42_reg>; - DBVDD2-supply = <&l42_reg>; - CPVDD1-supply = <&l42_reg>; - CPVDD2-supply = <&l44_reg>; - DCVDD-supply = <&l44_reg>; - SPKVDD-supply = <&V_SYS>; + cirrus,gpsw = <1 0>; + + pinctrl-names = "probe", "active"; + pinctrl-0 = <&codec_reset>; + pinctrl-1 = <&codec_reset &cs47l35_defaults>; + + madera_pinctrl: madera-pinctrl { + compatible = "cirrus,madera-pinctrl"; + cs47l35_defaults: cs47l35-gpio-defaults { + aif1 { + groups = "aif1"; + function = "aif1"; + bias-bus-hold; + }; + + aif2 { + groups = "aif2"; + function = "aif2"; + bias-bus-hold; + }; + + aif3 { + groups = "aif3"; + function = "aif3"; + bias-bus-hold; + }; + + gpio6 { /* Amp Clock */ + groups = "gpio6"; + function = "opclk"; + bias-pull-up; + output-low; + }; + + gpio5 { /* Mic Polarity Flip */ + groups = "gpio5"; + function = "io"; + }; + }; + }; - reset-gpios = <&gpg3 2 0>; - - cirrus,dmic-ref = <0 0 0>; - cirrus,inmode = < - 0 0 0 0 /* IN1 */ - 0 0 0 0 /* IN2 */ - >; - cirrus,gpsw = <1 0>; + micvdd { + regulator-min-microvolt = <3000000>; + regulator-max-microvolt = <3000000>; + }; - pinctrl-names = "probe", "active"; - pinctrl-0 = <&codec_reset>; - pinctrl-1 = <&codec_reset &cs47l35_defaults>; + MICBIAS1 { + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <2800000>; + cirrus,ext-cap = <1>; + }; + MICBIAS1A { + regulator-active-discharge = <1>; + }; + MICBIAS1B { + regulator-active-discharge = <1>; + }; - madera_pinctrl: madera-pinctrl { - compatible = "cirrus,madera-pinctrl"; - cs47l35_defaults: cs47l35-gpio-defaults { - aif1 { - groups = "aif1"; - function = "aif1"; - bias-bus-hold; + MICBIAS2 { + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <2800000>; + cirrus,ext-cap = <1>; }; - aif2 { - groups = "aif2"; - function = "aif2"; - bias-bus-hold; + MICBIAS2A { + regulator-active-discharge = <1>; + }; + MICBIAS2B { + regulator-active-discharge = <1>; }; - aif3 { - groups = "aif3"; - function = "aif3"; - bias-bus-hold; + cirrus,accdet { + #address-cells = <1>; + #size-cells = <0>; + + acc@1 { + reg = <1>; + + cirrus,micd-configs = < + 0 0 2 0 0 + >; + cirrus,micd-bias-start-time = <8>; + cirrus,micd-rate = <6>; + /*cirrus,micd-pol-gpios = <&cs47l35 4 0>;*/ + cirrus,micd-detect-debounce-ms = <500>; + /*cirrus,jd-use-jd2;*/ + /*cirrus,micd-clamp-mode = <0x8>;*/ + }; }; - gpio6 { /* Amp Clock */ - groups = "gpio6"; - function = "opclk"; - bias-pull-up; - output-low; + controller-data { + samsung,spi-feedback-delay = <1>; + samsung,spi-chip-select-mode = <0>; }; + }; + }; - gpio5 { /* Mic Polarity Flip */ - groups = "gpio5"; - function = "io"; + dummy_audio_codec: audio_codec_dummy { + status = "okay"; + compatible = "snd-soc-dummy"; + }; + + dummy_audio_cpu: audio_cpu_dummy { + compatible = "samsung,dummy-cpu"; + status = "okay"; + }; + + sound { + status = "okay"; + compatible = "samsung,exynos9610-madera"; + + clock-names = "xclkout"; + clocks = <&clock OSC_AUD>; + pinctrl-names = "default"; + pinctrl-0 = <&xclkout0>; + + cirrus,sysclk = <1 4 98304000>; + cirrus,dspclk = <8 4 147456000>; + cirrus,fll1-refclk = <1 0 26000000 98304000>; + + cirrus,opclk = <3 0 12288000>; + + samsung,routing = + "HEADSETMIC", "MICBIAS1B", + "IN1BR", "HEADSETMIC", + "DMIC1", "MICBIAS2A", + "IN1AL", "DMIC1", + "DMIC2", "MICBIAS2A", + "IN2L", "DMIC2", + "DMIC3", "MICBIAS2B", + "IN2R", "DMIC3", + "RECEIVER", "EPOUTN", + "RECEIVER", "EPOUTP", + "HEADPHONE", "HPOUTL", + "HEADPHONE", "HPOUTR", + "AIF2 Playback", "OPCLK", + "AIF2 Capture", "OPCLK", + "VOUTPUT", "ABOX UAIF0 Playback", + "SPEAKER", "Left SPK", + "VOUTPUTCALL", "ABOX SIFS0 Playback", + "ABOX SIFS0 Capture", "VINPUTCALL"; + + samsung,codec = <&abox &abox_uaif_0 &abox_uaif_1 &abox_uaif_2 + &abox_uaif_4 &abox_dsif &abox_spdy>; /*&cs35l41_left*/ + samsung,prefix = "ABOX", "ABOX", "ABOX", "ABOX", + "ABOX", "ABOX", "ABOX", "Left"; + samsung,aux = <&abox_effect &abox_bt>; + + rdma@0 { + cpu { + sound-dai = <&abox 0>; + }; + platform { + sound-dai = <&abox_rdma_0>; + }; + codec { + sound-dai = <&dummy_audio_codec>; + }; + }; + rdma@1 { + cpu { + sound-dai = <&abox 1>; + }; + platform { + sound-dai = <&abox_rdma_1>; + }; + codec { + sound-dai = <&dummy_audio_codec>; + }; + }; + rdma@2 { + cpu { + sound-dai = <&abox 2>; + }; + platform { + sound-dai = <&abox_rdma_2>; + }; + codec { + sound-dai = <&dummy_audio_codec>; + }; + }; + rdma@3 { + cpu { + sound-dai = <&abox 3>; + }; + platform { + sound-dai = <&abox_rdma_3>; + }; + codec { + sound-dai = <&dummy_audio_codec>; + }; + }; + rdma@4 { + cpu { + sound-dai = <&abox 4>; + }; + platform { + sound-dai = <&abox_rdma_4>; + }; + codec { + sound-dai = <&dummy_audio_codec>; + }; + }; + rdma@5 { + cpu { + sound-dai = <&abox 5>; + }; + platform { + sound-dai = <&abox_rdma_5>; + }; + codec { + sound-dai = <&dummy_audio_codec>; + }; + }; + rdma@6 { + cpu { + sound-dai = <&abox 6>; + }; + platform { + sound-dai = <&abox_rdma_6>; + }; + codec { + sound-dai = <&dummy_audio_codec>; + }; + }; + rdma@7 { + cpu { + sound-dai = <&abox 7>; + }; + platform { + sound-dai = <&abox_rdma_7>; + }; + codec { + sound-dai = <&dummy_audio_codec>; + }; + }; + wdma@0 { + cpu { + sound-dai = <&abox 8>; + }; + platform { + sound-dai = <&abox_wdma_0>; + }; + codec { + sound-dai = <&dummy_audio_codec>; + }; + }; + wdma@1 { + cpu { + sound-dai = <&abox 9>; + }; + platform { + sound-dai = <&abox_wdma_1>; + }; + codec { + sound-dai = <&dummy_audio_codec>; + }; + }; + wdma@2 { + cpu { + sound-dai = <&abox 10>; + }; + platform { + sound-dai = <&abox_wdma_2>; + }; + codec { + sound-dai = <&dummy_audio_codec>; + }; + }; + wdma@3 { + cpu { + sound-dai = <&abox 11>; + }; + platform { + sound-dai = <&abox_wdma_3>; + }; + codec { + sound-dai = <&dummy_audio_codec>; + }; + }; + wdma@4 { + cpu { + sound-dai = <&abox 12>; + }; + platform { + sound-dai = <&abox_wdma_4>; + }; + codec { + sound-dai = <&dummy_audio_codec>; + }; + }; + /** ToDo: enable dp_audio link after enabling DP Audio + * dp_audio@0 { + * cpu { + * sound-dai = <&dummy_audio_cpu>; + * }; + * codec { + * sound-dai = <&dummy_audio_codec>; + * }; + * }; + */ + uaif@0 { + format = "i2s"; + cpu { + sound-dai = <&abox_uaif_0>; + }; + codec { + sound-dai = <&cs47l35 0>; + }; + }; + uaif@1 { + format = "i2s"; + cpu { + sound-dai = <&abox_uaif_1>; + }; + codec { + sound-dai = <&dummy_audio_codec>; + }; + }; + uaif@2 { + format = "i2s"; + cpu { + sound-dai = <&abox_uaif_2>; + }; + codec { + sound-dai = <&cs47l35 2>; + }; + }; + uaif@4 { + format = "i2s"; + bitclock-master; + frame-master; + cpu { + sound-dai = <&abox_uaif_4>; + }; + codec { + sound-dai = <&dummy_audio_codec>; + }; + }; + dsif@0 { + format = "pdm"; + cpu { + sound-dai = <&abox_dsif>; + }; + codec { + sound-dai = <&dummy_audio_codec>; + }; + }; + spdy@0 { + cpu { + sound-dai = <&abox_spdy>; + }; + codec { + sound-dai = <&dummy_audio_codec>; + }; + }; + sifs0@0 { + cpu { + sound-dai = <&abox 13>; + }; + codec { + sound-dai = <&dummy_audio_codec>; + }; + }; + sifs1@0 { + cpu { + sound-dai = <&abox 14>; + }; + codec { + sound-dai = <&dummy_audio_codec>; + }; + }; + sifs2@0 { + cpu { + sound-dai = <&abox 15>; + }; + codec { + sound-dai = <&dummy_audio_codec>; }; }; - }; - - - micvdd { - regulator-min-microvolt = <3000000>; - regulator-max-microvolt = <3000000>; - }; - - MICBIAS1 { - regulator-min-microvolt = <2800000>; - regulator-max-microvolt = <2800000>; - cirrus,ext-cap = <1>; - }; - MICBIAS1A { - regulator-active-discharge = <1>; - }; - MICBIAS1B { - regulator-active-discharge = <1>; - }; - - MICBIAS2 { - regulator-min-microvolt = <2800000>; - regulator-max-microvolt = <2800000>; - cirrus,ext-cap = <1>; - }; - - MICBIAS2A { - regulator-active-discharge = <1>; - }; - MICBIAS2B { - regulator-active-discharge = <1>; - }; - - cirrus,accdet { - #address-cells = <1>; - #size-cells = <0>; - acc@1 { - reg = <1>; +#if 0 /*ToDo: enable speaker amp on EVB board*/ + codec-left-amp@0 { + format = "i2s"; - cirrus,micd-configs = < - 0 0 2 0 0 - >; - cirrus,micd-bias-start-time = <8>; - cirrus,micd-rate = <6>; - /*cirrus,micd-pol-gpios = <&cs47l35 4 0>;*/ - cirrus,micd-detect-debounce-ms = <500>; - /*cirrus,jd-use-jd2;*/ - /*cirrus,micd-clamp-mode = <0x8>;*/ + cpu { + sound-dai = <&cs47l35 1>; + }; + codec { + sound-dai = <&cs35l41_left 0>; + }; }; +#endif }; - controller-data { - samsung,spi-feedback-delay = <1>; - samsung,spi-chip-select-mode = <0>; - }; - }; - }; - - dummy_audio_codec: audio_codec_dummy { - status = "okay"; - compatible = "snd-soc-dummy"; - }; - - dummy_audio_cpu: audio_cpu_dummy { - compatible = "samsung,dummy-cpu"; - status = "okay"; - }; - - sound { - status = "okay"; - compatible = "samsung,exynos9610-madera"; - - clock-names = "xclkout"; - clocks = <&clock OSC_AUD>; - pinctrl-names = "default"; - pinctrl-0 = <&xclkout0>; - - cirrus,sysclk = <1 4 98304000>; - cirrus,dspclk = <8 4 147456000>; - cirrus,fll1-refclk = <1 0 26000000 98304000>; - - cirrus,opclk = <3 0 12288000>; - - samsung,routing = - "HEADSETMIC", "MICBIAS1B", - "IN1BR", "HEADSETMIC", - "DMIC1", "MICBIAS2A", - "IN1AL", "DMIC1", - "DMIC2", "MICBIAS2A", - "IN2L", "DMIC2", - "DMIC3", "MICBIAS2B", - "IN2R", "DMIC3", - "RECEIVER", "EPOUTN", - "RECEIVER", "EPOUTP", - "HEADPHONE", "HPOUTL", - "HEADPHONE", "HPOUTR", - "AIF2 Playback", "OPCLK", - "AIF2 Capture", "OPCLK", - "VOUTPUT", "ABOX UAIF0 Playback", - "SPEAKER", "Left SPK", - "VOUTPUTCALL", "ABOX SIFS0 Playback", - "ABOX SIFS0 Capture", "VINPUTCALL"; - - samsung,codec = <&abox &abox_uaif_0 &abox_uaif_1 &abox_uaif_2 - &abox_uaif_4 &abox_dsif &abox_spdy>; /*&cs35l41_left*/ - samsung,prefix = "ABOX", "ABOX", "ABOX", "ABOX", - "ABOX", "ABOX", "ABOX", "Left"; - samsung,aux = <&abox_effect &abox_bt>; - - rdma@0 { - cpu { - sound-dai = <&abox 0>; - }; - platform { - sound-dai = <&abox_rdma_0>; - }; - codec { - sound-dai = <&dummy_audio_codec>; - }; - }; - rdma@1 { - cpu { - sound-dai = <&abox 1>; - }; - platform { - sound-dai = <&abox_rdma_1>; - }; - codec { - sound-dai = <&dummy_audio_codec>; - }; - }; - rdma@2 { - cpu { - sound-dai = <&abox 2>; - }; - platform { - sound-dai = <&abox_rdma_2>; - }; - codec { - sound-dai = <&dummy_audio_codec>; - }; - }; - rdma@3 { - cpu { - sound-dai = <&abox 3>; - }; - platform { - sound-dai = <&abox_rdma_3>; - }; - codec { - sound-dai = <&dummy_audio_codec>; - }; - }; - rdma@4 { - cpu { - sound-dai = <&abox 4>; - }; - platform { - sound-dai = <&abox_rdma_4>; - }; - codec { - sound-dai = <&dummy_audio_codec>; - }; - }; - rdma@5 { - cpu { - sound-dai = <&abox 5>; - }; - platform { - sound-dai = <&abox_rdma_5>; - }; - codec { - sound-dai = <&dummy_audio_codec>; - }; - }; - rdma@6 { - cpu { - sound-dai = <&abox 6>; - }; - platform { - sound-dai = <&abox_rdma_6>; - }; - codec { - sound-dai = <&dummy_audio_codec>; - }; - }; - rdma@7 { - cpu { - sound-dai = <&abox 7>; - }; - platform { - sound-dai = <&abox_rdma_7>; - }; - codec { - sound-dai = <&dummy_audio_codec>; - }; - }; - wdma@0 { - cpu { - sound-dai = <&abox 8>; - }; - platform { - sound-dai = <&abox_wdma_0>; - }; - codec { - sound-dai = <&dummy_audio_codec>; - }; - }; - wdma@1 { - cpu { - sound-dai = <&abox 9>; - }; - platform { - sound-dai = <&abox_wdma_1>; - }; - codec { - sound-dai = <&dummy_audio_codec>; - }; - }; - wdma@2 { - cpu { - sound-dai = <&abox 10>; - }; - platform { - sound-dai = <&abox_wdma_2>; - }; - codec { - sound-dai = <&dummy_audio_codec>; - }; - }; - wdma@3 { - cpu { - sound-dai = <&abox 11>; - }; - platform { - sound-dai = <&abox_wdma_3>; - }; - codec { - sound-dai = <&dummy_audio_codec>; - }; - }; - wdma@4 { - cpu { - sound-dai = <&abox 12>; - }; - platform { - sound-dai = <&abox_wdma_4>; - }; - codec { - sound-dai = <&dummy_audio_codec>; - }; - }; -/** ToDo: enable dp_audio link after enabling DP Audio - * dp_audio@0 { - * cpu { - * sound-dai = <&dummy_audio_cpu>; - * }; - * codec { - * sound-dai = <&dummy_audio_codec>; - * }; - * }; - */ - uaif@0 { - format = "i2s"; - cpu { - sound-dai = <&abox_uaif_0>; - }; - codec { - sound-dai = <&cs47l35 0>; - }; - }; - uaif@1 { - format = "i2s"; - cpu { - sound-dai = <&abox_uaif_1>; - }; - codec { - sound-dai = <&dummy_audio_codec>; - }; - }; - uaif@2 { - format = "i2s"; - cpu { - sound-dai = <&abox_uaif_2>; - }; - codec { - sound-dai = <&cs47l35 2>; - }; - }; - uaif@4 { - format = "i2s"; - bitclock-master; - frame-master; - cpu { - sound-dai = <&abox_uaif_4>; - }; - codec { - sound-dai = <&dummy_audio_codec>; - }; - }; - dsif@0 { - format = "pdm"; - cpu { - sound-dai = <&abox_dsif>; - }; - codec { - sound-dai = <&dummy_audio_codec>; - }; - }; - spdy@0 { - cpu { - sound-dai = <&abox_spdy>; - }; - codec { - sound-dai = <&dummy_audio_codec>; - }; - }; - sifs0@0 { - cpu { - sound-dai = <&abox 13>; - }; - codec { - sound-dai = <&dummy_audio_codec>; - }; - }; - sifs1@0 { - cpu { - sound-dai = <&abox 14>; - }; - codec { - sound-dai = <&dummy_audio_codec>; - }; - }; - sifs2@0 { - cpu { - sound-dai = <&abox 15>; - }; - codec { - sound-dai = <&dummy_audio_codec>; - }; - }; -#if 0 /*ToDo: enable speaker amp on EVB board*/ - codec-left-amp@0 { - format = "i2s"; +#if 0 + fimc_is@144B0000 { + vender { + rear_sensor_id = <47>; /* 46: RPB, 20: 2P8, 47: 2P7SQ */ + front_sensor_id = <7>; /* 6B2 */ + rear_second_sensor_id = <48>; /* 48: 2T7SX */ + secure_sensor_id = <22>; /* 5E2 */ + }; - cpu { - sound-dai = <&cs47l35 1>; - }; - codec { - sound-dai = <&cs35l41_left 0>; + fimc_is_dvfs { + #define DVFS_INT_CAM_L0 690000 + #define DVFS_INT_CAM_L1 680000 + #define DVFS_INT_CAM_L2 670000 + #define DVFS_INT_CAM_L3 660000 + #define DVFS_INT_CAM_L4 650000 + + #define DVFS_INT_L0 667000 + #define DVFS_INT_L1 533000 + #define DVFS_INT_L2 400000 + #define DVFS_INT_L3 200000 + #define DVFS_INT_L4 100000 + + #define DVFS_CAM_L0 690000 + #define DVFS_CAM_L1 680000 + #define DVFS_CAM_L2 670000 + #define DVFS_CAM_L3 660000 + #define DVFS_CAM_L4 650000 + #define DVFS_CAM_L5 640000 + + #define DVFS_MIF_L0 2093000 + #define DVFS_MIF_L1 2002000 + #define DVFS_MIF_L2 1794000 + #define DVFS_MIF_L3 1539000 + #define DVFS_MIF_L4 1352000 + #define DVFS_MIF_L5 1014000 + #define DVFS_MIF_L6 845000 + #define DVFS_MIF_L7 676000 + #define DVFS_MIF_L8 546000 + #define DVFS_MIF_L9 419000 + + table0 { + desc = "dvfs table v0.0 for 16M/2M"; + + default_int_cam = ; + default_cam = ; + default_mif = ; + default_int = ; + default_hpg = <1>; + + front_preview_int_cam = ; + front_preview_cam = ; + front_preview_mif = ; + front_preview_int = ; + front_preview_hpg = <1>; + + front_preview_full_int_cam = ; + front_preview_full_cam = ; + front_preview_full_mif = ; + front_preview_full_int = ; + front_preview_full_hpg = <1>; + + front_capture_int_cam = ; + front_capture_cam = ; + front_capture_mif = ; + front_capture_int = ; + front_capture_hpg = <1>; + + front_video_int_cam = ; + front_video_cam = ; + front_video_mif = ; + front_video_int = ; + front_video_hpg = <1>; + + front_video_capture_int_cam = ; + front_video_capture_cam = ; + front_video_capture_mif = ; + front_video_capture_int = ; + front_video_capture_hpg = <1>; + + front_wide_selfie_int_cam = ; + front_wide_selfie_cam = ; + front_wide_selfie_mif = ; + front_wide_selfie_int = ; + front_wide_selfie_hpg = <1>; + + front_vt1_int_cam = ; + front_vt1_cam = ; + front_vt1_mif = ; + front_vt1_int = ; + front_vt1_hpg = <1>; + + front_vt2_int_cam = ; + front_vt2_cam = ; + front_vt2_mif = ; + front_vt2_int = ; + front_vt2_hpg = <1>; + + front_vt4_int_cam = ; + front_vt4_cam = ; + front_vt4_mif = ; + front_vt4_int = ; + front_vt4_hpg = <1>; + + rear_preview_fhd_int_cam = ; + rear_preview_fhd_cam = ; + rear_preview_fhd_mif = ; + rear_preview_fhd_int = ; + rear_preview_fhd_hpg = <1>; + + rear_preview_hd_int_cam = ; + rear_preview_hd_cam = ; + rear_preview_hd_mif = ; + rear_preview_hd_int = ; + rear_preview_hd_hpg = <1>; + + rear_preview_uhd_int_cam = ; + rear_preview_uhd_cam = ; + rear_preview_uhd_mif = ; + rear_preview_uhd_int = ; + rear_preview_uhd_hpg = <1>; + + rear_preview_full_int_cam = ; + rear_preview_full_cam = ; + rear_preview_full_mif = ; + rear_preview_full_int = ; + rear_preview_full_hpg = <1>; + + rear_capture_int_cam = ; + rear_capture_cam = ; + rear_capture_mif = ; + rear_capture_int = ; + rear_capture_hpg = <1>; + + rear_video_fhd_int_cam = ; + rear_video_fhd_cam = ; + rear_video_fhd_mif = ; + rear_video_fhd_int = ; + rear_video_fhd_hpg = <1>; + + rear_video_hd_int_cam = ; + rear_video_hd_cam = ; + rear_video_hd_mif = ; + rear_video_hd_int = ; + rear_video_hd_hpg = <1>; + + rear_video_uhd_int_cam = ; + rear_video_uhd_cam = ; + rear_video_uhd_mif = ; + rear_video_uhd_int = ; + rear_video_uhd_hpg = <1>; + + rear_video_fhd_capture_int_cam = ; + rear_video_fhd_capture_cam = ; + rear_video_fhd_capture_mif = ; + rear_video_fhd_capture_int = ; + rear_video_fhd_capture_hpg = <1>; + + rear_video_hd_capture_int_cam = ; + rear_video_hd_capture_cam = ; + rear_video_hd_capture_mif = ; + rear_video_hd_capture_int = ; + rear_video_hd_capture_hpg = <1>; + + rear_video_uhd_capture_int_cam = ; + rear_video_uhd_capture_cam = ; + rear_video_uhd_capture_mif = ; + rear_video_uhd_capture_int = ; + rear_video_uhd_capture_hpg = <1>; + + secure_front_int_cam = ; + secure_front_cam = ; + secure_front_mif = ; + secure_front_int = ; + secure_front_hpg = <1>; + + pip_preview_int_cam = ; + pip_preview_cam = ; + pip_preview_mif = ; + pip_preview_int = ; + pip_preview_hpg = <1>; + + pip_capture_int_cam = ; + pip_capture_cam = ; + pip_capture_mif = ; + pip_capture_int = ; + pip_capture_hpg = <1>; + + pip_video_int_cam = ; + pip_video_cam = ; + pip_video_mif = ; + pip_video_int = ; + pip_video_hpg = <1>; + + pip_video_capture_int_cam = ; + pip_video_capture_cam = ; + pip_video_capture_mif = ; + pip_video_capture_int = ; + pip_video_capture_hpg = <1>; + + preview_high_speed_fps_int_cam = ; + preview_high_speed_fps_cam = ; + preview_high_speed_fps_mif = ; + preview_high_speed_fps_int = ; + preview_high_speed_fps_hpg = <1>; + + video_high_speed_60fps_int_cam = ; + video_high_speed_60fps_cam = ; + video_high_speed_60fps_mif = ; + video_high_speed_60fps_int = ; + video_high_speed_60fps_hpg = <1>; + + video_high_speed_480fps_int_cam = ; + video_high_speed_480fps_cam = ; + video_high_speed_480fps_mif = ; + video_high_speed_480fps_int = ; + video_high_speed_480fps_hpg = <1>; + + video_high_speed_60fps_capture_int_cam = ; + video_high_speed_60fps_capture_cam = ; + video_high_speed_60fps_capture_mif = ; + video_high_speed_60fps_capture_int = ; + video_high_speed_60fps_capture_hpg = <1>; + + ext_front_int_cam = ; + ext_front_cam = ; + ext_front_mif = ; + ext_front_int = ; + ext_front_hpg = <1>; + + ext_secure_int_cam = ; + ext_secure_cam = ; + ext_secure_mif = ; + ext_secure_int = ; + ext_secure_hpg = <1>; + + max_int_cam = ; + max_cam = ; + max_mif = ; + max_int = ; + max_hpg = <1>; + }; + }; }; - }; -#endif - }; - -#if 0 - fimc_is@144B0000 { - vender { - rear_sensor_id = <47>; /* 46: RPB, 20: 2P8, 47: 2P7SQ */ - front_sensor_id = <7>; /* 6B2 */ - rear_second_sensor_id = <48>; /* 48: 2T7SX */ - secure_sensor_id = <22>; /* 5E2 */ - }; + fimc_is_flash_gpio: fimc-is-flash-gpio@0 { + compatible = "samsung,sensor-flash-gpio"; + id = <0>; + status = "okay"; - fimc_is_dvfs { - #define DVFS_INT_CAM_L0 690000 - #define DVFS_INT_CAM_L1 680000 - #define DVFS_INT_CAM_L2 670000 - #define DVFS_INT_CAM_L3 660000 - #define DVFS_INT_CAM_L4 650000 - - #define DVFS_INT_L0 667000 - #define DVFS_INT_L1 533000 - #define DVFS_INT_L2 400000 - #define DVFS_INT_L3 200000 - #define DVFS_INT_L4 100000 - - #define DVFS_CAM_L0 690000 - #define DVFS_CAM_L1 680000 - #define DVFS_CAM_L2 670000 - #define DVFS_CAM_L3 660000 - #define DVFS_CAM_L4 650000 - #define DVFS_CAM_L5 640000 - - #define DVFS_MIF_L0 2093000 - #define DVFS_MIF_L1 2002000 - #define DVFS_MIF_L2 1794000 - #define DVFS_MIF_L3 1539000 - #define DVFS_MIF_L4 1352000 - #define DVFS_MIF_L5 1014000 - #define DVFS_MIF_L6 845000 - #define DVFS_MIF_L7 676000 - #define DVFS_MIF_L8 546000 - #define DVFS_MIF_L9 419000 - - table0 { - desc = "dvfs table v0.0 for 16M/2M"; - - default_int_cam = ; - default_cam = ; - default_mif = ; - default_int = ; - default_hpg = <1>; - - front_preview_int_cam = ; - front_preview_cam = ; - front_preview_mif = ; - front_preview_int = ; - front_preview_hpg = <1>; - - front_preview_full_int_cam = ; - front_preview_full_cam = ; - front_preview_full_mif = ; - front_preview_full_int = ; - front_preview_full_hpg = <1>; - - front_capture_int_cam = ; - front_capture_cam = ; - front_capture_mif = ; - front_capture_int = ; - front_capture_hpg = <1>; - - front_video_int_cam = ; - front_video_cam = ; - front_video_mif = ; - front_video_int = ; - front_video_hpg = <1>; - - front_video_capture_int_cam = ; - front_video_capture_cam = ; - front_video_capture_mif = ; - front_video_capture_int = ; - front_video_capture_hpg = <1>; - - front_wide_selfie_int_cam = ; - front_wide_selfie_cam = ; - front_wide_selfie_mif = ; - front_wide_selfie_int = ; - front_wide_selfie_hpg = <1>; - - front_vt1_int_cam = ; - front_vt1_cam = ; - front_vt1_mif = ; - front_vt1_int = ; - front_vt1_hpg = <1>; - - front_vt2_int_cam = ; - front_vt2_cam = ; - front_vt2_mif = ; - front_vt2_int = ; - front_vt2_hpg = <1>; - - front_vt4_int_cam = ; - front_vt4_cam = ; - front_vt4_mif = ; - front_vt4_int = ; - front_vt4_hpg = <1>; - - rear_preview_fhd_int_cam = ; - rear_preview_fhd_cam = ; - rear_preview_fhd_mif = ; - rear_preview_fhd_int = ; - rear_preview_fhd_hpg = <1>; - - rear_preview_hd_int_cam = ; - rear_preview_hd_cam = ; - rear_preview_hd_mif = ; - rear_preview_hd_int = ; - rear_preview_hd_hpg = <1>; - - rear_preview_uhd_int_cam = ; - rear_preview_uhd_cam = ; - rear_preview_uhd_mif = ; - rear_preview_uhd_int = ; - rear_preview_uhd_hpg = <1>; - - rear_preview_full_int_cam = ; - rear_preview_full_cam = ; - rear_preview_full_mif = ; - rear_preview_full_int = ; - rear_preview_full_hpg = <1>; - - rear_capture_int_cam = ; - rear_capture_cam = ; - rear_capture_mif = ; - rear_capture_int = ; - rear_capture_hpg = <1>; - - rear_video_fhd_int_cam = ; - rear_video_fhd_cam = ; - rear_video_fhd_mif = ; - rear_video_fhd_int = ; - rear_video_fhd_hpg = <1>; - - rear_video_hd_int_cam = ; - rear_video_hd_cam = ; - rear_video_hd_mif = ; - rear_video_hd_int = ; - rear_video_hd_hpg = <1>; - - rear_video_uhd_int_cam = ; - rear_video_uhd_cam = ; - rear_video_uhd_mif = ; - rear_video_uhd_int = ; - rear_video_uhd_hpg = <1>; - - rear_video_fhd_capture_int_cam = ; - rear_video_fhd_capture_cam = ; - rear_video_fhd_capture_mif = ; - rear_video_fhd_capture_int = ; - rear_video_fhd_capture_hpg = <1>; - - rear_video_hd_capture_int_cam = ; - rear_video_hd_capture_cam = ; - rear_video_hd_capture_mif = ; - rear_video_hd_capture_int = ; - rear_video_hd_capture_hpg = <1>; - - rear_video_uhd_capture_int_cam = ; - rear_video_uhd_capture_cam = ; - rear_video_uhd_capture_mif = ; - rear_video_uhd_capture_int = ; - rear_video_uhd_capture_hpg = <1>; - - secure_front_int_cam = ; - secure_front_cam = ; - secure_front_mif = ; - secure_front_int = ; - secure_front_hpg = <1>; - - pip_preview_int_cam = ; - pip_preview_cam = ; - pip_preview_mif = ; - pip_preview_int = ; - pip_preview_hpg = <1>; - - pip_capture_int_cam = ; - pip_capture_cam = ; - pip_capture_mif = ; - pip_capture_int = ; - pip_capture_hpg = <1>; - - pip_video_int_cam = ; - pip_video_cam = ; - pip_video_mif = ; - pip_video_int = ; - pip_video_hpg = <1>; - - pip_video_capture_int_cam = ; - pip_video_capture_cam = ; - pip_video_capture_mif = ; - pip_video_capture_int = ; - pip_video_capture_hpg = <1>; - - preview_high_speed_fps_int_cam = ; - preview_high_speed_fps_cam = ; - preview_high_speed_fps_mif = ; - preview_high_speed_fps_int = ; - preview_high_speed_fps_hpg = <1>; - - video_high_speed_60fps_int_cam = ; - video_high_speed_60fps_cam = ; - video_high_speed_60fps_mif = ; - video_high_speed_60fps_int = ; - video_high_speed_60fps_hpg = <1>; - - video_high_speed_480fps_int_cam = ; - video_high_speed_480fps_cam = ; - video_high_speed_480fps_mif = ; - video_high_speed_480fps_int = ; - video_high_speed_480fps_hpg = <1>; - - video_high_speed_60fps_capture_int_cam = ; - video_high_speed_60fps_capture_cam = ; - video_high_speed_60fps_capture_mif = ; - video_high_speed_60fps_capture_int = ; - video_high_speed_60fps_capture_hpg = <1>; - - ext_front_int_cam = ; - ext_front_cam = ; - ext_front_mif = ; - ext_front_int = ; - ext_front_hpg = <1>; - - ext_secure_int_cam = ; - ext_secure_cam = ; - ext_secure_mif = ; - ext_secure_int = ; - ext_secure_hpg = <1>; - - max_int_cam = ; - max_cam = ; - max_mif = ; - max_int = ; - max_hpg = <1>; + torch-gpio = <&gpg3 1 0x1>; + flash-gpio = <&gpg3 0 0x1>; }; - }; - }; - - fimc_is_flash_gpio: fimc-is-flash-gpio@0 { - compatible = "samsung,sensor-flash-gpio"; - id = <0>; - status = "okay"; - torch-gpio = <&gpg3 1 0x1>; - flash-gpio = <&gpg3 0 0x1>; - }; + fimc_is_sensor_2p7sq: fimc-is_sensor_2p7sq@47 { + compatible = "samsung,sensor-module-2p7sq"; - fimc_is_sensor_2p7sq: fimc-is_sensor_2p7sq@47 { - compatible = "samsung,sensor-module-2p7sq"; + pinctrl-names = "pin0", "pin1", "pin2", "release"; + pinctrl-0 = <>; + pinctrl-1 = <&fimc_is_mclk0_out>; + pinctrl-2 = <&fimc_is_mclk0_fn>; + pinctrl-3 = <>; - pinctrl-names = "pin0", "pin1", "pin2", "release"; - pinctrl-0 = <>; - pinctrl-1 = <&fimc_is_mclk0_out>; - pinctrl-2 = <&fimc_is_mclk0_fn>; - pinctrl-3 = <>; + position = <0>; /* Rear:0. Front:1. Rear_sub:2. Secure:3. */ + id = <0>; /* fimc_is_sensor id */ + mclk_ch = <0>; + sensor_i2c_ch = <0>; /* SENSOR_CONTROL_I2C0 */ - position = <0>; /* Rear:0. Front:1. Rear_sub:2. Secure:3. */ - id = <0>; /* fimc_is_sensor id */ - mclk_ch = <0>; - sensor_i2c_ch = <0>; /* SENSOR_CONTROL_I2C0 */ + gpio_mclk = <&gpc2 0 0x1>; + gpio_reset = <&gpc1 0 0x1>; /* sensor reset */ - gpio_mclk = <&gpc2 0 0x1>; - gpio_reset = <&gpc1 0 0x1>; /* sensor reset */ + power_seq_id = <1>; /* Rumba S6 Compatible */ - power_seq_id = <1>; /* Rumba S6 Compatible */ + status = "okay"; - status = "okay"; + af { + product_name = <20>; /* ACTUATOR_NAME_LC898217 */ + i2c_ch = <0>; /* SENSOR_CONTROL_I2C0 */ + }; - af { - product_name = <20>; /* ACTUATOR_NAME_LC898217 */ - i2c_ch = <0>; /* SENSOR_CONTROL_I2C0 */ - }; + flash { + product_name = <11>; /* FLASH_GPIO */ + }; + }; - flash { - product_name = <11>; /* FLASH_GPIO */ - }; - }; + fimc_is_sensor_2t7sx: fimc-is_sensor_2t7sx@48 { + compatible = "samsung,sensor-module-2t7sx"; - fimc_is_sensor_2t7sx: fimc-is_sensor_2t7sx@48 { - compatible = "samsung,sensor-module-2t7sx"; + pinctrl-names = "pin0", "pin1", "pin2", "release"; + pinctrl-0 = <>; + pinctrl-1 = <&fimc_is_mclk2_out>; + pinctrl-2 = <&fimc_is_mclk2_fn>; + pinctrl-3 = <>; - pinctrl-names = "pin0", "pin1", "pin2", "release"; - pinctrl-0 = <>; - pinctrl-1 = <&fimc_is_mclk2_out>; - pinctrl-2 = <&fimc_is_mclk2_fn>; - pinctrl-3 = <>; + position = <2>; /* Rear:0. Front:1. Rear_sub:2. Secure:3. */ + id = <2>; /* fimc_is_sensor id */ + mclk_ch = <2>; + sensor_i2c_ch = <1>; /* SENSOR_CONTROL_I2C1 */ - position = <2>; /* Rear:0. Front:1. Rear_sub:2. Secure:3. */ - id = <2>; /* fimc_is_sensor id */ - mclk_ch = <2>; - sensor_i2c_ch = <1>; /* SENSOR_CONTROL_I2C1 */ + gpio_mclk = <&gpc2 2 0x1>; + gpio_reset = <&gpc0 6 0x1>; /* sensor reset */ - gpio_mclk = <&gpc2 2 0x1>; - gpio_reset = <&gpc0 6 0x1>; /* sensor reset */ + power_seq_id = <1>; /* Rumba S6 Compatible */ - power_seq_id = <1>; /* Rumba S6 Compatible */ + status = "okay"; - status = "okay"; + af { + product_name = <20>; /* ACTUATOR_NAME_LC898217 */ + i2c_ch = <1>; /* SENSOR_CONTROL_I2C1 */ + }; - af { - product_name = <20>; /* ACTUATOR_NAME_LC898217 */ - i2c_ch = <1>; /* SENSOR_CONTROL_I2C1 */ - }; + flash { + product_name = <11>; /* FLASH_GPIO */ + }; + }; - flash { - product_name = <11>; /* FLASH_GPIO */ - }; - }; + /* FRONT CAMERA */ + fimc_is_sensor_6b2: fimc-is_sensor_6b2@7 { + compatible = "samsung,sensor-module-6b2"; - /* FRONT CAMERA */ - fimc_is_sensor_6b2: fimc-is_sensor_6b2@7 { - compatible = "samsung,sensor-module-6b2"; + pinctrl-names = "pin0", "pin1", "pin2", "release"; + pinctrl-0 = <>; + pinctrl-1 = <&fimc_is_mclk1_out>; + pinctrl-2 = <&fimc_is_mclk1_fn>; + pinctrl-3 = <>; - pinctrl-names = "pin0", "pin1", "pin2", "release"; - pinctrl-0 = <>; - pinctrl-1 = <&fimc_is_mclk1_out>; - pinctrl-2 = <&fimc_is_mclk1_fn>; - pinctrl-3 = <>; + position = <1>; /* Rear:0. Front:1. Rear_sub:2. Secure:3. */ + id = <1>; /* fimc_is_sensor id */ + mclk_ch = <1>; + sensor_i2c_ch = <2>; /* SENSOR_CONTROL_I2C4 */ - position = <1>; /* Rear:0. Front:1. Rear_sub:2. Secure:3. */ - id = <1>; /* fimc_is_sensor id */ - mclk_ch = <1>; - sensor_i2c_ch = <2>; /* SENSOR_CONTROL_I2C4 */ + gpio_mclk = <&gpc2 1 0x1>; + gpio_reset = <&gpc1 2 0x1>; /* sensor reset */ + status = "okay"; - gpio_mclk = <&gpc2 1 0x1>; - gpio_reset = <&gpc1 2 0x1>; /* sensor reset */ - status = "okay"; + af { + product_name = <100>; /* NOTHING */ + i2c_ch = <2>; /* SENSOR_CONTROL_I2C2 */ + }; - af { - product_name = <100>; /* NOTHING */ - i2c_ch = <2>; /* SENSOR_CONTROL_I2C2 */ - }; + flash { + product_name = <100>; /* NOTHING */ + }; - flash { - product_name = <100>; /* NOTHING */ - }; + ois { + product_name = <100>; /* NOTHING */ + }; - ois { - product_name = <100>; /* NOTHING */ - }; + internal_vc { + /* DUMMY */ + }; + }; - internal_vc { - /* DUMMY */ - }; - }; + /* I2C_CAM0 */ /* SENSOR_CONTROL_I2C0 */ + hsi2c_12: hsi2c@138A0000 { + gpios = <&gpc0 0 0 &gpc0 1 0>; + status = "okay"; + clock-frequency = <400000>; + samsung,reset-before-trans; + samsung,polling-mode; - /* I2C_CAM0 */ /* SENSOR_CONTROL_I2C0 */ - hsi2c_12: hsi2c@138A0000 { - gpios = <&gpc0 0 0 &gpc0 1 0>; - status = "okay"; - clock-frequency = <400000>; - samsung,reset-before-trans; - samsung,polling-mode; - - fimc-is-2p7sq@2d { - compatible = "samsung,exynos5-fimc-is-cis-2p7sq"; - reg = <0x2d>; /* 1 bit right shift */ - id = <0>; /* matching fimc_is_sensor id */ - setfile = "setA"; - }; + fimc-is-2p7sq@2d { + compatible = "samsung,exynos5-fimc-is-cis-2p7sq"; + reg = <0x2d>; /* 1 bit right shift */ + id = <0>; /* matching fimc_is_sensor id */ + setfile = "setA"; + }; - fimc-is-actuator@72 { - compatible = "samsung,exynos5-fimc-is-actuator-lc898217"; - reg = <0x72>; /* 1 bit right shift */ - id = <0>; /* matching fimc_is_sensor id */ - place = <0>; - }; - }; + fimc-is-actuator@72 { + compatible = "samsung,exynos5-fimc-is-actuator-lc898217"; + reg = <0x72>; /* 1 bit right shift */ + id = <0>; /* matching fimc_is_sensor id */ + place = <0>; + }; + }; - /* I2C_CAM1 */ /* SENSOR_CONTROL_I2C1 */ - hsi2c_13: hsi2c@138B0000 { - gpios = <&gpc0 2 0 &gpc0 3 0>; - status = "okay"; - clock-frequency = <400000>; - samsung,reset-before-trans; - samsung,polling-mode; - - fimc-is-2t7sx@10 { - compatible = "samsung,exynos5-fimc-is-cis-2t7sx"; - reg = <0x10>; /* 1 bit right shift */ - id = <2>; /* matching fimc_is_sensor id */ - setfile = "setA"; - }; + /* I2C_CAM1 */ /* SENSOR_CONTROL_I2C1 */ + hsi2c_13: hsi2c@138B0000 { + gpios = <&gpc0 2 0 &gpc0 3 0>; + status = "okay"; + clock-frequency = <400000>; + samsung,reset-before-trans; + samsung,polling-mode; - fimc-is-actuator@74 { - compatible = "samsung,exynos5-fimc-is-actuator-lc898217"; - reg = <0x74>; /* 1 bit right shift */ - id = <2>; /* matching fimc_is_sensor id */ - place = <1>; /* HACK */ - }; - }; + fimc-is-2t7sx@10 { + compatible = "samsung,exynos5-fimc-is-cis-2t7sx"; + reg = <0x10>; /* 1 bit right shift */ + id = <2>; /* matching fimc_is_sensor id */ + setfile = "setA"; + }; - /* I2C_CAM2 */ /* SENSOR_CONTROL_I2C2 */ - hsi2c_14: hsi2c@138C0000 { - gpios = <&gpc0 4 0 &gpc0 5 0>; - status = "okay"; - clock-frequency = <400000>; - samsung,reset-before-trans; - - fimc-is-6b2@35 { - compatible = "samsung,exynos5-fimc-is-cis-6b2"; - reg = <0x35>; /* 1 bit right shift */ - id = <1>; /* matching fimc_is_sensor id */ - setfile = "setA"; - }; - }; + fimc-is-actuator@74 { + compatible = "samsung,exynos5-fimc-is-actuator-lc898217"; + reg = <0x74>; /* 1 bit right shift */ + id = <2>; /* matching fimc_is_sensor id */ + place = <1>; /* HACK */ + }; + }; - /* I2C_CAM3 */ /* SENSOR_CONTROL_I2C3 */ - hsi2c_15: hsi2c@138D0000 { - gpios = <&gpc0 6 0 &gpc0 7 0>; - status = "okay"; - clock-frequency = <400000>; - samsung,reset-before-trans; - - fimc-is-actuator@72 { - compatible = "samsung,exynos5-fimc-is-actuator-dw9780"; - reg = <0x72>; /* 1 bit right shift */ - id = <0>; /* matching fimc_is_sensor id */ - place = <1>; /* HACK */ - }; - }; + /* I2C_CAM2 */ /* SENSOR_CONTROL_I2C2 */ + hsi2c_14: hsi2c@138C0000 { + gpios = <&gpc0 4 0 &gpc0 5 0>; + status = "okay"; + clock-frequency = <400000>; + samsung,reset-before-trans; - fimc_is_sensor0: fimc_is_sensor@14400000 { - scenario = ; /* Normal, Vision, OIS etc */ - id = <0>; - csi_ch = <0>; - dma_ch = <0 0 0 0 0 1 1 1>; - vc_ch = <0 1 2 3 0 1 2 3>; - flite_ch = ; - is_bns = <0>; - /* use_ssvc1_internal; */ - /* use_ssvc2_internal; */ - status = "okay"; - }; + fimc-is-6b2@35 { + compatible = "samsung,exynos5-fimc-is-cis-6b2"; + reg = <0x35>; /* 1 bit right shift */ + id = <1>; /* matching fimc_is_sensor id */ + setfile = "setA"; + }; + }; - fimc_is_sensor1: fimc_is_sensor@14410000 { - scenario = ; /* Normal, Vision, OIS etc */ - id = <1>; - csi_ch = <1>; - dma_ch = <1 1 1 1 1 1 1 1>; - vc_ch = <0 1 2 3 0 1 2 3>; - flite_ch = ; - is_bns = <0>; - status = "okay"; - }; + /* I2C_CAM3 */ /* SENSOR_CONTROL_I2C3 */ + hsi2c_15: hsi2c@138D0000 { + gpios = <&gpc0 6 0 &gpc0 7 0>; + status = "okay"; + clock-frequency = <400000>; + samsung,reset-before-trans; - fimc_is_sensor2: fimc_is_sensor@14420000 { - scenario = ; /* Normal, Vision, OIS etc */ - id = <2>; - csi_ch = <2>; - dma_ch = <2 2 2 2>; - vc_ch = <0 1 2 3>; - flite_ch = ; - is_bns = <0>; - status = "okay"; - }; + fimc-is-actuator@72 { + compatible = "samsung,exynos5-fimc-is-actuator-dw9780"; + reg = <0x72>; /* 1 bit right shift */ + id = <0>; /* matching fimc_is_sensor id */ + place = <1>; /* HACK */ + }; + }; - fimc_is_sensor3: fimc_is_sensor@14430000 { - scenario = ; /* Normal, Vision, OIS etc */ - id = <3>; - csi_ch = <3>; - dma_ch = <3 3 3 3>; - vc_ch = <0 1 2 3>; - flite_ch = ; - is_bns = <0>; - status = "okay"; - }; + fimc_is_sensor0: fimc_is_sensor@14400000 { + scenario = ; /* Normal, Vision, OIS etc */ + id = <0>; + csi_ch = <0>; + dma_ch = <0 0 0 0 0 1 1 1>; + vc_ch = <0 1 2 3 0 1 2 3>; + flite_ch = ; + is_bns = <0>; + /* use_ssvc1_internal; */ + /* use_ssvc2_internal; */ + status = "okay"; + }; + + fimc_is_sensor1: fimc_is_sensor@14410000 { + scenario = ; /* Normal, Vision, OIS etc */ + id = <1>; + csi_ch = <1>; + dma_ch = <1 1 1 1 1 1 1 1>; + vc_ch = <0 1 2 3 0 1 2 3>; + flite_ch = ; + is_bns = <0>; + status = "okay"; + }; + + fimc_is_sensor2: fimc_is_sensor@14420000 { + scenario = ; /* Normal, Vision, OIS etc */ + id = <2>; + csi_ch = <2>; + dma_ch = <2 2 2 2>; + vc_ch = <0 1 2 3>; + flite_ch = ; + is_bns = <0>; + status = "okay"; + }; + + fimc_is_sensor3: fimc_is_sensor@14430000 { + scenario = ; /* Normal, Vision, OIS etc */ + id = <3>; + csi_ch = <3>; + dma_ch = <3 3 3 3>; + vc_ch = <0 1 2 3>; + flite_ch = ; + is_bns = <0>; + status = "okay"; + }; #endif -}; + }; /* end of __overlay__ */ + }; /* end of fragment */ +}; /* end of root */ &pinctrl_0 { if_pmic_irq: if-pmic-irq { @@ -2235,3 +2119,129 @@ exynos,block-type = "sda"; exynos,fips-block_offset = <5>; }; + +&pinctrl_0 { + pmic_irq: pmic-irq { + samsung,pins = "gpa2-0"; + samsung,pin-pud = <3>; + samsung,pin-drv = <3>; + }; + + sub_pmic_irq: sub-pmic-irq { + samsung,pins = "gpa1-3"; + samsung,pin-function = <0>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; + + + key_voldown: key-voldown { + samsung,pins = "gpa1-6"; + samsung,pin-function = <0xf>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; + + key_volup: key-volup { + samsung,pins = "gpa1-5"; + samsung,pin-function = <0xf>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; + + key_power: key-power { + samsung,pins = "gpa1-7"; + samsung,pin-function = <0xf>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; + + dwmmc2_cd_ext_irq: dwmmc2_cd_ext_irq { + samsung,pins = "gpa0-7"; + samsung,pin-function = <0xf>; + samsung,pin-pud = <0>; + samsung,pin-drv = <3>; + }; + + attn_irq: attn-irq { + samsung,pins = "gpa2-4"; + samsung,pin-function = <0xf>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; + + attn_input: attn-input { + samsung,pins = "gpa2-4"; + samsung,pin-function = <0>; + samsung,pin-pud = <1>; + }; +}; + +&pinctrl_4 { + /* Warm reset information from AP */ + pm_wrsti: pm-wrsti { + samsung,pins = "gpg0-7"; + samsung,pin-con-pdn = <3>; + }; + + motor_pwm: motor_pwm { + samsung,pins = "gpg4-2"; + samsung,pin-function = <2>; + samsung,pin-pud = <1>; + samsung,pin-drv = <0>; + }; + + vdd_on: vdd-on { + samsung,pins ="gpg3-4"; + samsung,pin-function = <1>; + samsung,pin-val = <1>; + samsung,pin-pud = <3>; + }; + + vdd_off: vdd-off { + samsung,pins ="gpg3-4"; + samsung,pin-function = <0>; + samsung,pin-val = <0>; + samsung,pin-pud = <1>; + }; + + codec_reset: codec-reset { + samsung,pins ="gpg3-2"; + samsung,pin-pud = <0>; + samsung,pin-con-pdn =<3>; + samsung,pin-pud-pdn = <0>; + }; + + codec_en: codec_en { + samsung,pins = "gpg1-1"; + samsung,pin-function = <1>; + samsung,pin-pud = <3>; + samsung,pin-val = <1>; + }; +#if 0 /*Should be removed: enable speaker amp on EVB board*/ + amp_sda: amp-sda { + samsung,pins = "gpp2-2"; + samsung,pin-function = <3>; + samsung,pin-pud = <3>; + samsung,pin-drv = <0>; + }; + amp_scl: amp-scl { + samsung,pins = "gpp2-1"; + samsung,pin-function = <3>; + samsung,pin-pud = <3>; + samsung,pin-drv = <0>; + }; + amp_ad1: amp-ad1 { + samsung,pins = "gpp2-0"; + samsung,pin-function = <1>; + samsung,pin-val = <0>; + samsung,pin-pud = <1>; + }; + amp_ad0: amp-ad0 { + samsung,pins = "gpp2-3"; + samsung,pin-function = <1>; + samsung,pin-val = <0>; + samsung,pin-pud = <1>; + }; +#endif +}; diff --git a/arch/arm64/boot/dts/exynos/exynos9610-display-lcd.dtsi b/arch/arm64/boot/dts/exynos/exynos9610-display-lcd.dtsi index d15d2dd19621..d276d01bc1ca 100644 --- a/arch/arm64/boot/dts/exynos/exynos9610-display-lcd.dtsi +++ b/arch/arm64/boot/dts/exynos/exynos9610-display-lcd.dtsi @@ -290,41 +290,41 @@ hdr_max_avg_luma = <1200000>; /* 120 */ hdr_min_luma = <5>; /* 0.0005 */ }; - }; - }; - nt36672a: nt36672a { - mode = <0>; /* 0: video mode, 1: DP command mode, 2: MIPI command mode */ - resolution = <1080 2246>; - size = <80 120>; - timing,refresh = <60>; - timing,h-porch = <20 40 40>; - timing,v-porch = <2 10 10>; - timing,dsi-hs-clk = <1300>; - /* TODO : pms value to be set */ - timing,pmsk = <1 100 1 0>; - timing,dsi-escape-clk = <20>; - mic_en = <0>; /* 0: Disable, 1: Enable */ - mic_ratio = <0>; /* 0: 1/2 mic, 1: 1/3 mic */ - mic_ver = <0>; /* 0: mic v1.1, 1: v1.2, 2: v2.0 */ - type_of_ddi = <2>; /* 0: Samsung Mobile, 1: MAGNA, 2: Normal(Etc) */ - dsc_en = <0>; /* 0: Disable, 1: Enable */ - dsc_cnt = <0>; /* used DSC count */ - dsc_slice_num = <0>; /* count of dsc slice */ - data_lane = <4>; /* number of using data lane */ - cmd_underrun_lp_ref = <4942>; /* for underrun detect at command mode*/ - vt_compensation = <14>; /* for underrun detect at video mode*/ - mres_en = <0>; - mres_number = <3>; - mres_width = <1440 1080 720>; - mres_height = <2960 2220 1480>; - mres_dsc_width = <720 540 360>; - mres_dsc_height = <40 30 74>; - mres_dsc_en = <1 1 0>; - hdr_num = <1>; /* max: 4 */ - hdr_type = <2 0 0 0>; /* 1: DOLBY_VISION, 2: HDR10, 3: HLG */ - hdr_max_luma = <5400000>; /* 540 */ - hdr_max_avg_luma = <1200000>; /* 120 */ - hdr_min_luma = <5>; /* 0.0005 */ + nt36672a: nt36672a { + mode = <0>; /* 0: video mode, 1: DP command mode, 2: MIPI command mode */ + resolution = <1080 2246>; + size = <80 120>; + timing,refresh = <60>; + timing,h-porch = <20 40 40>; + timing,v-porch = <2 10 10>; + timing,dsi-hs-clk = <1300>; + /* TODO : pms value to be set */ + timing,pmsk = <1 100 1 0>; + timing,dsi-escape-clk = <20>; + mic_en = <0>; /* 0: Disable, 1: Enable */ + mic_ratio = <0>; /* 0: 1/2 mic, 1: 1/3 mic */ + mic_ver = <0>; /* 0: mic v1.1, 1: v1.2, 2: v2.0 */ + type_of_ddi = <2>; /* 0: Samsung Mobile, 1: MAGNA, 2: Normal(Etc) */ + dsc_en = <0>; /* 0: Disable, 1: Enable */ + dsc_cnt = <0>; /* used DSC count */ + dsc_slice_num = <0>; /* count of dsc slice */ + data_lane = <4>; /* number of using data lane */ + cmd_underrun_lp_ref = <4942>; /* for underrun detect at command mode*/ + vt_compensation = <14>; /* for underrun detect at video mode*/ + mres_en = <0>; + mres_number = <3>; + mres_width = <1440 1080 720>; + mres_height = <2960 2220 1480>; + mres_dsc_width = <720 540 360>; + mres_dsc_height = <40 30 74>; + mres_dsc_en = <1 1 0>; + hdr_num = <1>; /* max: 4 */ + hdr_type = <2 0 0 0>; /* 1: DOLBY_VISION, 2: HDR10, 3: HLG */ + hdr_max_luma = <5400000>; /* 540 */ + hdr_max_avg_luma = <1200000>; /* 120 */ + hdr_min_luma = <5>; /* 0.0005 */ + }; + }; }; }; diff --git a/arch/arm64/boot/dts/exynos/exynos9610_dtboimg.cfg b/arch/arm64/boot/dts/exynos/exynos9610_dtboimg.cfg index 5a986802b700..8f278d40854f 100644 --- a/arch/arm64/boot/dts/exynos/exynos9610_dtboimg.cfg +++ b/arch/arm64/boot/dts/exynos/exynos9610_dtboimg.cfg @@ -3,4 +3,5 @@ rev=/:board_rev arch/arm64/boot/dts/exynos/exynos9610-erd9610.dtbo +arch/arm64/boot/dts/exynos/exynos9609-wing.dtbo