*/
/ {
- emul_display: emul_display {
- mode = <0>; /* 0: video mode, 1: DP command mode, 2: MIPI command mode */
- resolution = <320 240>;
- /* resolution = <1080 1920>; */
- size = <80 120>;
- timing,refresh = <60>;
- timing,h-porch = <20 20 20>;
- timing,v-porch = <20 20 20>;
- timing,dsi-hs-clk = <600>;
- /* TODO : pmsk value to be set */
- timing,pmsk = <1 96 2 0>;
- timing,dsi-escape-clk = <20>;
- underrun_lp_ref = <307>;
- mic_en = <0>; /* 0: Disable, 1: Enable */
- mic_ratio = <0>; /* 0: 1/2 mic, 1: 1/3 mic */
- mic_ver = <2>; /* 0: mic v1.1, 1: v1.2, 2: v2.0 */
- type_of_ddi = <0>; /* 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 = <1203>; /* for underrun detect at command mode*/
- vt_compensation = <10731>; /* wclk = 100MHZ, 320 x 240 for underrun detect at video mode*/
- hdr_num = <0>; /* max: 4 */
- hdr_type = <0 0 0 0>; /* 1: DOLBY_VISION, 2: HDR10, 3: HLG */
- hdr_max_luma = <0>; /* 0 */
- hdr_max_avg_luma = <0>; /* 0 */
- hdr_min_luma = <0>; /* 0.0000 */
- };
+ fragment@lcd {
+ target-path = "/";
+ __overlay__ {
+ emul_display: emul_display {
+ mode = <0>; /* 0: video mode, 1: DP command mode, 2: MIPI command mode */
+ resolution = <320 240>;
+ /* resolution = <1080 1920>; */
+ size = <80 120>;
+ timing,refresh = <60>;
+ timing,h-porch = <20 20 20>;
+ timing,v-porch = <20 20 20>;
+ timing,dsi-hs-clk = <600>;
+ /* TODO : pmsk value to be set */
+ timing,pmsk = <1 96 2 0>;
+ timing,dsi-escape-clk = <20>;
+ underrun_lp_ref = <307>;
+ mic_en = <0>; /* 0: Disable, 1: Enable */
+ mic_ratio = <0>; /* 0: 1/2 mic, 1: 1/3 mic */
+ mic_ver = <2>; /* 0: mic v1.1, 1: v1.2, 2: v2.0 */
+ type_of_ddi = <0>; /* 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 = <1203>; /* for underrun detect at command mode*/
+ vt_compensation = <10731>; /* wclk = 100MHZ, 320 x 240 for underrun detect at video mode*/
+ hdr_num = <0>; /* max: 4 */
+ hdr_type = <0 0 0 0>; /* 1: DOLBY_VISION, 2: HDR10, 3: HLG */
+ hdr_max_luma = <0>; /* 0 */
+ hdr_max_avg_luma = <0>; /* 0 */
+ hdr_min_luma = <0>; /* 0.0000 */
+ };
- s6e3hf4: s6e3hf4_wqhd {
- mode = <2>; /* 0: video mode, 1: DP command mode, 2: MIPI command mode */
- resolution = <1440 2560>;
- size = <68 122>;
- timing,refresh = <60>;
- timing,h-porch = <2 2 2>;
- timing,v-porch = <15 3 1>;
- timing,dsi-hs-clk = <1100>;
- timing,pmsk = <4 677 2 0>;
- timing,dsi-escape-clk = <20>;
- mic_en = <0>; /* 0: Disable, 1: Enable */
- mic_ratio = <2>; /* 0: 1/2 mic, 1: 1/3 mic */
- mic_ver = <2>; /* 0: mic v1.1, 1: v1.2, 2: v2.0 */
- type_of_ddi = <0>; /* 0: Samsung Mobile, 1: MAGNA, 2: Normal(Etc) */
- dsc_en = <1>; /* 0: Disable, 1: Enable */
- dsc_cnt = <2>; /* used DSC count */
- dsc_slice_num = <4>; /* count of dsc slice */
- dsc_slice_h = <64>; /* height of dsc slice */
- data_lane = <4>; /* number of using data lane */
- cmd_underrun_lp_ref = <5629>; /* for underrun detect*/
- mres_en = <0>;
- mres_number = <1>;
- mres_width = <1440 0 0>;
- mres_height = <2560 0 0>;
- mres_dsc_width = <360 0 0>;
- mres_dsc_height = <64 0 0>;
- mres_dsc_en = <1 0 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 */
- };
+ s6e3hf4: s6e3hf4_wqhd {
+ mode = <2>; /* 0: video mode, 1: DP command mode, 2: MIPI command mode */
+ resolution = <1440 2560>;
+ size = <68 122>;
+ timing,refresh = <60>;
+ timing,h-porch = <2 2 2>;
+ timing,v-porch = <15 3 1>;
+ timing,dsi-hs-clk = <1100>;
+ timing,pmsk = <4 677 2 0>;
+ timing,dsi-escape-clk = <20>;
+ mic_en = <0>; /* 0: Disable, 1: Enable */
+ mic_ratio = <2>; /* 0: 1/2 mic, 1: 1/3 mic */
+ mic_ver = <2>; /* 0: mic v1.1, 1: v1.2, 2: v2.0 */
+ type_of_ddi = <0>; /* 0: Samsung Mobile, 1: MAGNA, 2: Normal(Etc) */
+ dsc_en = <1>; /* 0: Disable, 1: Enable */
+ dsc_cnt = <2>; /* used DSC count */
+ dsc_slice_num = <4>; /* count of dsc slice */
+ dsc_slice_h = <64>; /* height of dsc slice */
+ data_lane = <4>; /* number of using data lane */
+ cmd_underrun_lp_ref = <5629>; /* for underrun detect*/
+ mres_en = <0>;
+ mres_number = <1>;
+ mres_width = <1440 0 0>;
+ mres_height = <2560 0 0>;
+ mres_dsc_width = <360 0 0>;
+ mres_dsc_height = <64 0 0>;
+ mres_dsc_en = <1 0 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 */
+ };
- s6e3ha2k: s6e3ha2k_wqhd {
- mode = <2>; /* 0: video mode, 1: DP command mode, 2: MIPI command mode */
- resolution = <1440 2560>;
- size = <80 120>;
- timing,refresh = <60>;
- timing,h-porch = <2 2 2>;
- timing,v-porch = <19 3 1>;
- timing,dsi-hs-clk = <1100>;
- timing,pmsk = <3 127 0 0>;
- timing,dsi-escape-clk = <20>;
- mic_en = <1>; /* 0: Disable, 1: Enable */
- mic_ratio = <0>; /* 0: 1/2 mic, 1: 1/3 mic */
- mic_ver = <2>; /* 0: mic v1.1, 1: v1.2, 2: v2.0 */
- type_of_ddi = <0>; /* 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 */
- dsc_slice_h = <0>; /* height of dsc slice */
- data_lane = <4>; /* number of using data lane */
- cmd_underrun_lp_ref = <1203>; /* for underrun detect*/
- mres_en = <0>;
- mres_number = <1>;
- mres_width = <1440 0 0>;
- mres_height = <2560 0 0>;
- mres_dsc_width = <0 0 0>;
- mres_dsc_height = <0 0 0>;
- mres_dsc_en = <0 0 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 */
- };
+ s6e3ha2k: s6e3ha2k_wqhd {
+ mode = <2>; /* 0: video mode, 1: DP command mode, 2: MIPI command mode */
+ resolution = <1440 2560>;
+ size = <80 120>;
+ timing,refresh = <60>;
+ timing,h-porch = <2 2 2>;
+ timing,v-porch = <19 3 1>;
+ timing,dsi-hs-clk = <1100>;
+ timing,pmsk = <3 127 0 0>;
+ timing,dsi-escape-clk = <20>;
+ mic_en = <1>; /* 0: Disable, 1: Enable */
+ mic_ratio = <0>; /* 0: 1/2 mic, 1: 1/3 mic */
+ mic_ver = <2>; /* 0: mic v1.1, 1: v1.2, 2: v2.0 */
+ type_of_ddi = <0>; /* 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 */
+ dsc_slice_h = <0>; /* height of dsc slice */
+ data_lane = <4>; /* number of using data lane */
+ cmd_underrun_lp_ref = <1203>; /* for underrun detect*/
+ mres_en = <0>;
+ mres_number = <1>;
+ mres_width = <1440 0 0>;
+ mres_height = <2560 0 0>;
+ mres_dsc_width = <0 0 0>;
+ mres_dsc_height = <0 0 0>;
+ mres_dsc_en = <0 0 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 */
+ };
- s6e3ha3: s6e3ha3_wqhd {
- mode = <2>; /* 0: video mode, 1: DP command mode, 2: MIPI command mode */
- resolution = <1440 2560>;
- size = <70 121>;
- timing,refresh = <60>;
- timing,h-porch = <2 2 2>;
- timing,v-porch = <19 3 1>;
- timing,dsi-hs-clk = <1100>;
- timing,pmsk = <3 127 0 0>;
- timing,dsi-escape-clk = <20>;
- mic_en = <0>; /* 0: Disable, 1: Enable */
- mic_ratio = <2>; /* 0: 1/2 mic, 1: 1/3 mic */
- mic_ver = <2>; /* 0: mic v1.1, 1: v1.2, 2: v2.0 */
- type_of_ddi = <0>; /* 0: Samsung Mobile, 1: MAGNA, 2: Normal(Etc) */
- dsc_en = <1>; /* 0: Disable, 1: Enable */
- dsc_cnt = <1>; /* used DSC count */
- dsc_slice_num = <1>; /* count of dsc slice */
- dsc_slice_h = <32>; /* height of dsc slice */
- data_lane = <4>; /* number of using data lane */
- cmd_underrun_lp_ref = <1203>; /* for underrun detect*/
- mres_en = <0>;
- mres_number = <1>;
- mres_width = <1440 0 0>;
- mres_height = <2560 0 0>;
- mres_dsc_width = <1440 0 0>;
- mres_dsc_height = <32 0 0>;
- mres_dsc_en = <1 0 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 */
- };
+ s6e3ha3: s6e3ha3_wqhd {
+ mode = <2>; /* 0: video mode, 1: DP command mode, 2: MIPI command mode */
+ resolution = <1440 2560>;
+ size = <70 121>;
+ timing,refresh = <60>;
+ timing,h-porch = <2 2 2>;
+ timing,v-porch = <19 3 1>;
+ timing,dsi-hs-clk = <1100>;
+ timing,pmsk = <3 127 0 0>;
+ timing,dsi-escape-clk = <20>;
+ mic_en = <0>; /* 0: Disable, 1: Enable */
+ mic_ratio = <2>; /* 0: 1/2 mic, 1: 1/3 mic */
+ mic_ver = <2>; /* 0: mic v1.1, 1: v1.2, 2: v2.0 */
+ type_of_ddi = <0>; /* 0: Samsung Mobile, 1: MAGNA, 2: Normal(Etc) */
+ dsc_en = <1>; /* 0: Disable, 1: Enable */
+ dsc_cnt = <1>; /* used DSC count */
+ dsc_slice_num = <1>; /* count of dsc slice */
+ dsc_slice_h = <32>; /* height of dsc slice */
+ data_lane = <4>; /* number of using data lane */
+ cmd_underrun_lp_ref = <1203>; /* for underrun detect*/
+ mres_en = <0>;
+ mres_number = <1>;
+ mres_width = <1440 0 0>;
+ mres_height = <2560 0 0>;
+ mres_dsc_width = <1440 0 0>;
+ mres_dsc_height = <32 0 0>;
+ mres_dsc_en = <1 0 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 */
+ };
- s6e3ha6: s6e3ha6_ddi {
- mode = <2>;
- resolution = <1440 2960>;
- size = <69 142>;
- timing,refresh = <60>;
- timing,h-porch = <2 2 2>;
- timing,v-porch = <15 3 1>;
- timing,dsi-hs-clk = <898>;
- timing,pmsk = <5 691 2 0>;
- timing,dsi-escape-clk = <20>;
- mic_en = <0>; /* 0: Disable, 1: Enable */
- mic_ratio = <2>; /* 0: 1/2 mic, 1: 1/3 mic */
- mic_ver = <2>; /* 0: mic v1.1, 1: v1.2, 2: v2.0 */
- type_of_ddi = <0>; /* 0: Samsung Mobile, 1: MAGNA, 2: Normal(Etc) */
- dsc_en = <1>; /* 0: Disable, 1: Enable */
- dsc_cnt = <2>; /* used DSC count */
- dsc_slice_num = <2>; /* count of dsc slice */
- dsc_slice_h = <40>; /* height of dsc slice */
- data_lane = <4>; /* number of using data lane */
- cmd_underrun_lp_ref = <3022>; /* for underrun detect*/
- mres_en = <1>;
- 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 */
- };
+ s6e3ha6: s6e3ha6_ddi {
+ mode = <2>;
+ resolution = <1440 2960>;
+ size = <69 142>;
+ timing,refresh = <60>;
+ timing,h-porch = <2 2 2>;
+ timing,v-porch = <15 3 1>;
+ timing,dsi-hs-clk = <898>;
+ timing,pmsk = <5 691 2 0>;
+ timing,dsi-escape-clk = <20>;
+ mic_en = <0>; /* 0: Disable, 1: Enable */
+ mic_ratio = <2>; /* 0: 1/2 mic, 1: 1/3 mic */
+ mic_ver = <2>; /* 0: mic v1.1, 1: v1.2, 2: v2.0 */
+ type_of_ddi = <0>; /* 0: Samsung Mobile, 1: MAGNA, 2: Normal(Etc) */
+ dsc_en = <1>; /* 0: Disable, 1: Enable */
+ dsc_cnt = <2>; /* used DSC count */
+ dsc_slice_num = <2>; /* count of dsc slice */
+ dsc_slice_h = <40>; /* height of dsc slice */
+ data_lane = <4>; /* number of using data lane */
+ cmd_underrun_lp_ref = <3022>; /* for underrun detect*/
+ mres_en = <1>;
+ 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 */
+ };
- s6e3fa0: s6e3fa0_fhd {
- mode = <2>; /* 0: video mode, 1: DP command mode, 2: MIPI command mode */
- resolution = <1080 1920>;
- size = <70 121>;
- timing,refresh = <60>;
- timing,h-porch = <2 2 2>;
- timing,v-porch = <10 3 1>;
- timing,dsi-hs-clk = <1100>;
- timing,pmsk = <3 127 0 0>;
- timing,dsi-escape-clk = <20>;
- mic_en = <0>; /* 0: Disable, 1: Enable */
- mic_ratio = <2>; /* 0: 1/2 mic, 1: 1/3 mic */
- mic_ver = <0>; /* 0: mic v1.1, 1: v1.2, 2: v2.0 */
- type_of_ddi = <0>; /* 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 */
- dsc_slice_h = <40>; /* height of dsc slice */
- data_lane = <4>; /* number of using data lane */
- cmd_underrun_lp_ref = <3022>; /* for underrun detect*/
- 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 */
- };
+ s6e3fa0: s6e3fa0_fhd {
+ mode = <2>; /* 0: video mode, 1: DP command mode, 2: MIPI command mode */
+ resolution = <1080 1920>;
+ size = <70 121>;
+ timing,refresh = <60>;
+ timing,h-porch = <2 2 2>;
+ timing,v-porch = <10 3 1>;
+ timing,dsi-hs-clk = <1100>;
+ timing,pmsk = <3 127 0 0>;
+ timing,dsi-escape-clk = <20>;
+ mic_en = <0>; /* 0: Disable, 1: Enable */
+ mic_ratio = <2>; /* 0: 1/2 mic, 1: 1/3 mic */
+ mic_ver = <0>; /* 0: mic v1.1, 1: v1.2, 2: v2.0 */
+ type_of_ddi = <0>; /* 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 */
+ dsc_slice_h = <40>; /* height of dsc slice */
+ data_lane = <4>; /* number of using data lane */
+ cmd_underrun_lp_ref = <3022>; /* for underrun detect*/
+ 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 */
+ };
- s6e3fa0_vid: s6e3fa0_hfd_vid {
- mode = <0>; /* 0: video mode, 1: DP command mode, 2: MIPI command mode */
- resolution = <1080 1920>;
- size = <80 120>;
- timing,refresh = <60>;
- timing,h-porch = <20 20 20>;
- timing,v-porch = <2 20 2>;
- timing,dsi-hs-clk = <1100>;
- /* TODO : pms value to be set */
- timing,pmsk = <4 677 2 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 = <0>; /* 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 = <39>; /* 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 */
+ s6e3fa0_vid: s6e3fa0_hfd_vid {
+ mode = <0>; /* 0: video mode, 1: DP command mode, 2: MIPI command mode */
+ resolution = <1080 1920>;
+ size = <80 120>;
+ timing,refresh = <60>;
+ timing,h-porch = <20 20 20>;
+ timing,v-porch = <2 20 2>;
+ timing,dsi-hs-clk = <1100>;
+ /* TODO : pms value to be set */
+ timing,pmsk = <4 677 2 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 = <0>; /* 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 = <39>; /* 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 */
+ };
+ };
};
};
*/
/dts-v1/;
-#include "exynos9610-rmem.dtsi"
-#include "exynos9610.dtsi"
+/plugin/;
#include "exynos9610_battery_data.dtsi"
#include "modem-ss360ap-sit-pdata.dtsi"
-#include "exynos9610-debug.dtsi"
#include "exynos9610-display-lcd.dtsi"
#include "exynos9610-erd9610-camera.dtsi"
/ {
- model = "Samsung ERD9610 board based on EXYNOS9610";
compatible = "samsung,exynos9610", "samsung,ERD9610";
+ 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 ERD9610 board based on EXYNOS9610";
- chosen {
- bootargs = "console=ram skip_initramfs rootwait ro init=/init root=/dev/sda2 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=0xffffff80f9fe0000 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 = "console=ram skip_initramfs rootwait ro init=/init root=/dev/sda2 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=0xffffff80f9fe0000 pmic_info=0x3";
+ linux,initrd-start = <0x84000000>;
+ linux,initrd-end = <0x841FFFFF>;
+ };
- firmware {
- android {
- compatible = "android,firmware";
- fstab {
- compatible = "android,fstab";
- vendor {
- compatible = "android,vendor";
- dev = "/dev/block/platform/13520000.ufs/by-name/vendor";
- type = "ext4";
- mnt_flags = "ro";
- fsmgr_flags = "wait,slotselect";
+ fixed-rate-clocks {
+ oscclk {
+ compatible = "samsung,exynos9610-oscclk";
+ clock-frequency = <26000000>;
};
};
- };
- };
- serial_0: uart@13820000 {
- status = "okay";
- };
-
- dsim_0: dsim@0x148E0000 {
- lcd_info = <&s6e3fa0_vid>;
- /* reset */
- gpios = <&gpg1 4 0x1>, <&gpg1 7 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";
- };
+ firmware {
+ android {
+ compatible = "android,firmware";
+ fstab {
+ compatible = "android,fstab";
+ vendor {
+ compatible = "android,vendor";
+ dev = "/dev/block/platform/13520000.ufs/by-name/vendor";
+ type = "ext4";
+ mnt_flags = "ro";
+ fsmgr_flags = "wait,slotselect";
+ };
+ };
+ };
+ };
- /* USI_0_CMGP */
- usi_0_cmgp: usi@11C12000 {
- /* usi_v2_mode = "i2c" or "spi" or "uart" */
- status = "disabled";
- };
+ ifconn {
+ status = "okay";
+ compatible = "samsung,ifconn";
+ ifconn,usbpd = "s2mm005";
+ ifconn,muic = "s2mu004-muic";
+ };
- /* USI_0_CMGP_I2C */
- usi_0_cmgp_i2c: usi@11C12004 {
- usi_v2_mode = "i2c";
- status = "okay";
- };
+ 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>;
+ };
+
+ 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>;
+ };
+ };
+ };
+ };
- /* USI_1_CMGP */
- usi_1_cmgp: usi@11C12010 {
- usi_v2_mode = "i2c";
- status = "okay";
- };
+ i2c@13880000 {
+ status = "okay";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ s2mpb02_pmic@59 {
+ compatible = "s2mpb02,s2mpb02mfd";
+ reg = <0x59>;
+
+ s2mpb02,wakeup;
+ pinctrl-names = "default";
+ pinctrl-0 = <&sub_pmic_irq>;
+
+ regulators {
+ _buck1_reg: s2mpb02-buck1 {
+ regulator-name = "VDD_EXT_1P3_PB03";
+ regulator-min-microvolt = <600000>;
+ regulator-max-microvolt = <1700000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ _buck2_reg: s2mpb02-buck2 {
+ regulator-name = "SVDDD_1.2V";
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1200000>;
+ };
+
+ _buckboost_reg: s2mpb02-bb {
+ regulator-name = "VREG_BOOST_BYP";
+ regulator-min-microvolt = <2600000>;
+ regulator-max-microvolt = <4000000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ _ldo1_reg: s2mpb02-ldo1 {
+ regulator-name = "VDDD_1.0V_CAM_T";
+ regulator-min-microvolt = <1000000>;
+ regulator-max-microvolt = <1000000>;
+ };
+
+ _ldo2_reg: s2mpb02-ldo2 {
+ regulator-name = "VDDD_1.0V_CAM";
+ regulator-min-microvolt = <1000000>;
+ regulator-max-microvolt = <1000000>;
+ };
+
+ _ldo3_reg: s2mpb02-ldo3 {
+ regulator-name = "VDDD_1.05V_SUB";
+ regulator-min-microvolt = <600000>;
+ regulator-max-microvolt = <2187500>;
+ };
+
+ _ldo4_reg: s2mpb02-ldo4 {
+ regulator-name = "S2MPB02_LDO4";
+ regulator-min-microvolt = <600000>;
+ regulator-max-microvolt = <2187500>;
+ };
+
+ _ldo5_reg: s2mpb02-ldo5 {
+ regulator-name = "VDDD_1.05V_VT";
+ regulator-min-microvolt = <600000>;
+ regulator-max-microvolt = <2187500>;
+ };
+
+ _ldo6_reg: s2mpb02-ldo6 {
+ regulator-name = "VDDIO_1.8V_CAM_T";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ };
+
+ _ldo7_reg: s2mpb02-ldo7 {
+ regulator-name = "VDDIO_1.8V_SUB";
+ regulator-min-microvolt = <600000>;
+ regulator-max-microvolt = <3375000>;
+ };
+
+ _ldo8_reg: s2mpb02-ldo8 {
+ regulator-name = "VDDIO_1.8V_CAM";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ };
+
+ _ldo9_reg: s2mpb02-ldo9 {
+ regulator-name = "DOVDD_VT_CAM_1V8";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ };
+
+ _ldo10_reg: s2mpb02-ldo10 {
+ regulator-name = "VDDD_1.8V_OIS";
+ regulator-min-microvolt = <600000>;
+ regulator-max-microvolt = <3375000>;
+ };
+
+ _ldo11_reg: s2mpb02-ldo11 {
+ regulator-name = "VDDA_2.8V_CAM";
+ regulator-min-microvolt = <2800000>;
+ regulator-max-microvolt = <2800000>;
+ };
+
+ _ldo12_reg: s2mpb02-ldo12 {
+ regulator-name = "VDDD_2.8V_OIS";
+ regulator-min-microvolt = <2800000>;
+ regulator-max-microvolt = <2800000>;
+ };
+
+ _ldo13_reg: s2mpb02-ldo13 {
+ regulator-name = "VDDA_2.8V_CAM_T";
+ regulator-min-microvolt = <2800000>;
+ regulator-max-microvolt = <2800000>;
+ };
+
+ _ldo14_reg: s2mpb02-ldo14 {
+ regulator-name = "VDD_VT_CAM_2V8";
+ regulator-min-microvolt = <2800000>;
+ regulator-max-microvolt = <2800000>;
+ };
+
+ _ldo15_reg: s2mpb02-ldo15 {
+ regulator-name = "VDDD_2.8V_OIS_T";
+ regulator-min-microvolt = <2800000>;
+ regulator-max-microvolt = <2800000>;
+ };
+
+ _ldo16_reg: s2mpb02-ldo16 {
+ regulator-name = "VDD_2.8V_OIS";
+ regulator-min-microvolt = <2800000>;
+ regulator-max-microvolt = <2800000>;
+ };
+
+ _ldo17_reg: s2mpb02-ldo17 {
+ regulator-name = "S2MPB02_LDO17";
+ regulator-min-microvolt = <600000>;
+ regulator-max-microvolt = <3375000>;
+ };
+
+ _ldo18_reg: s2mpb02-ldo18 {
+ regulator-name = "VDD_PROXY_LED_3P3";
+ regulator-min-microvolt = <600000>;
+ regulator-max-microvolt = <3375000>;
+ };
+ };
- /* USI_1_CMGP_I2C */
- usi_1_cmgp_i2c: usi@11C12014 {
- usi_v2_mode = "i2c";
- status = "okay";
- };
+ torch {
+ torch1-gpio = "gpg3-1";
+ flash1-gpio = "gpg3-0";
+
+ status = "okay";
+
+ leds1 {
+ ledname = "leds-sec1";
+ id = <0>;
+ brightness = <0xC>; /* (n+1)x100 : 1300mA */
+ timeout = <0x7>; /* (n+1)x62.6 : 500ms */
+ torch_table_enable = <0>;
+ };
+
+ leds2 {
+ ledname = "torch-sec1";
+ id = <1>;
+ brightness = <0xC>; /* (n+1)x20 = 260mA */
+ timeout = <0xF>;
+ torch_table_enable = <1>;
+ torch_table = <2 4 4 5 6 8 9 10 10 12>;
+ };
+ };
+ };
+ };
- /* USI_2_CMGP */
- usi_2_cmgp: usi@11C12020 {
- /* usi_v2_mode = "i2c" or "spi" or "uart" */
- status = "disabled";
- };
+ exynos_rgt {
+ compatible = "samsung,exynos-rgt";
+ };
- /* USI_2_CMGP_I2C */
- usi_2_cmgp_i2c: usi@11C12024 {
- usi_v2_mode = "i2c";
- status = "okay";
- };
+ 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 >;
+ };
- /* USI_3_CMGP */
- usi_3_cmgp: usi@11C12030 {
- usi_v2_mode = "spi";
- status = "okay";
- };
+ mailbox_gnss: mcu_ipc@11A00000 {
+ compatible = "samsung,exynos-shd-ipc-mailbox";
+ reg = <0x0 0x11A00000 0x180>;
+ mcu,name = "mcu_ipc_gnss";
+ mcu,id = <1>;
+ interrupts = <GIC_SPI 43 IRQ_TYPE_NONE>; /* INTREQ__MAILBOX_GNSS2AP */
+ };
- /* USI_3_CMGP_I2C */
- usi_3_cmgp_i2c: usi@11C12034 {
- /* usi_v2_mode = "i2c" or "spi" or "uart" */
- status = "disabled";
- };
+ gnss_pdata {
+ status = "okay";
- /* USI_4_CMGP */
- usi_4_cmgp: usi@11C12040 {
- usi_v2_mode = "i2c";
- status = "okay";
- };
+ compatible = "samsung,gnss_shdmem_if";
+ shmem,name = "KEPLER";
+ shmem,device_node_name = "gnss_ipc";
- /* USI_4_CMGP_I2C */
- usi_4_cmgp_i2c: usi@11C12044 {
- usi_v2_mode = "i2c";
- status = "okay";
- };
+ /* INTREQ__ALIVE_GNSS_ACTIVE, INTREQ__GNSS2AP_WDOG_RESET, INTREQ__GNSS2AP_WAKEUP, INTREQ__GNSS2AP */
+ interrupts = <GIC_SPI 27 IRQ_TYPE_NONE>, <GIC_SPI 81 IRQ_TYPE_NONE>, <GIC_SPI 80 IRQ_TYPE_NONE>, <GIC_SPI 79 IRQ_TYPE_NONE>;
+ interrupt-names = "ACTIVE", "WATCHDOG", "WAKEUP", "REQ_INIT";
- /* USI_PERI_UART */
- usi_peri_uart: usi@10011010 {
- usi_v2_mode = "uart";
- status = "okay";
- };
+ memory-region = <&gnss_reserved>;
+ mbox_info = <&mailbox_gnss>;
- /* USI_PERI_CAMI2C_0 */
- usi_peri_cami2c_0: usi@10011020 {
- usi_v2_mode = "i2c";
- status = "okay";
- };
+ 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>;
- /* USI_PERI_CAMI2C_1 */
- usi_peri_cami2c_1: usi@10011024 {
- usi_v2_mode = "i2c";
- status = "okay";
- };
+ 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>;
- /* USI_PERI_CAMI2C_2 */
- usi_peri_cami2c_2: usi@10011028 {
- usi_v2_mode = "i2c";
- status = "okay";
- };
+ mbx,reg_bcmd_ctrl = <0>, <1>, <2>, <3>;
- /* USI_PERI_CAMI2C_3 */
- usi_peri_cami2c_3: usi@1001102C {
- usi_v2_mode = "i2c";
- status = "okay";
- };
+ 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>;
- /* USI_PERI_SPI_0 */
- usi_peri_spi_0: usi@10011030 {
- /* usi_v2_mode = "i2c" or "spi" or "uart" */
- status = "disabled";
- };
+ shmem,ipc_offset = <0x380000>;
+ shmem,ipc_size = <0x80000>;
+ shmem,ipc_reg_cnt = <32>;
+ };
- /* USI_PERI_SPI_1 */
- usi_peri_spi_1: usi@10011034 {
- usi_v2_mode = "spi";
- status = "okay";
- };
+ 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>;
+ };
+ };
- /* USI_PERI_USI_0 */
- usi_peri_usi_0: usi@1001103C {
- /* usi_v2_mode = "i2c" or "spi" or "uart" */
- status = "disabled";
- };
+ dwmmc2@13550000 {
+ status = "okay";
+ num-slots = <1>;
+ supports-4bit;
+ supports-cmd23;
+ supports-erase;
+ supports-highspeed;
+ sd-uhs-sdr50;
+ sd-uhs-sdr104;
+ 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;
+ };
+ };
- /* USI_PERI_USI_0_I2C */
- usi_peri_usi_0_i2c: usi@10011040 {
- /* usi_v2_mode = "i2c" or "spi" or "uart" */
- status = "disabled";
- };
+ i2c_4:i2c@13870000 {
+ status = "okay";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ touchscreen@20 {
+ compatible = "synaptics,rmi4";
+ reg = <0x20>;
+ pinctrl-names = "on_state", "off_state";
+ pinctrl-0 = <&attn_irq>;
+ pinctrl-1 = <&attn_input>;
+ synaptics,irq_gpio = <&gpa2 4 0>;
+ synaptics,irq_type = <8200>;
+ synaptics,max_coords = <1440 2560>; /* x y */
+ synaptics,num_lines = <29 16>; /* rx tx */
+ synaptics,regulator_dvdd = "VDDD_1.8V_OIS";
+ synaptics,regulator_avdd = "vdd_ldo41";
+ };
+ };
- /* USI_PERI_SPI_2 */
- usi_peri_spi_2: usi@10011038 {
- usi_v2_mode = "spi";
- status = "okay";
- };
+ usb_notifier {
+ compatible = "samsung,usb-notifier";
+ udc = <&udc>;
+ };
- 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>;
- };
- usbpd_irq: usbpd-irq {
- samsung,pins = "gpa1-1";
- samsung,pin-function = <0xf>;
- samsung,pin-pud = <3>;
- samsung,pin-drv = <3>;
- };
- };
+ usb_hs_tune:usb_hs_tune {
+ hs_tune_cnt = <12>;
- pinctrl@139B0000 {
- /* Warm reset information from AP */
- pm_wrsti: pm-wrsti {
- samsung,pins = "gpg0-7";
- samsung,pin-con-pdn = <3>;
- };
- };
+ /* value = <device host> */
+ hs_tune1 {
+ tune_name = "tx_vref";
+ tune_value = <0xf 0xf>;
+ };
+ hs_tune2 {
+ tune_name = "tx_pre_emp";
+ tune_value = <0x3 0x3>;
+ };
- ifconn {
- status = "okay";
- compatible = "samsung,ifconn";
- ifconn,usbpd = "s2mm005";
- ifconn,muic = "s2mu004-muic";
- };
+ hs_tune3 {
+ tune_name = "tx_pre_emp_plus";
+ tune_value = <0x0 0x0>;
+ };
- speedy@11a10000 {
- status = "okay";
+ hs_tune4 {
+ tune_name = "tx_res";
+ tune_value = <0x3 0x3>;
+ };
- 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>;
+ hs_tune5 {
+ tune_name = "tx_rise";
+ tune_value = <0x3 0x3>;
};
- l38_reg: LDO38 {
- regulator-name = "vdd_ldo38";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <3375000>;
- regulator-ramp-delay = <12000>;
- regulator-always-on;
+ hs_tune6 {
+ tune_name = "tx_hsxv";
+ tune_value = <0x3 0x3>;
};
- l39_reg: LDO39 {
- regulator-name = "vdd_ldo39";
- regulator-min-microvolt = <800000>;
- regulator-max-microvolt = <1950000>;
- regulator-ramp-delay = <12000>;
- regulator-always-on;
+ hs_tune7 {
+ tune_name = "tx_fsls";
+ tune_value = <0x3 0x3>;
};
- 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;
+ hs_tune8 {
+ tune_name = "rx_sqrx";
+ tune_value = <0x7 0x7>;
};
- l41_reg: LDO41 {
- regulator-name = "vdd_ldo41";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <3375000>;
- regulator-ramp-delay = <12000>;
+ hs_tune9 {
+ tune_name = "compdis";
+ tune_value = <0x7 0x7>;
};
- l42_reg: LDO42 {
- regulator-name = "vdd_ldo42";
- regulator-min-microvolt = <800000>;
- regulator-max-microvolt = <1950000>;
- regulator-ramp-delay = <12000>;
+ hs_tune10 {
+ tune_name = "otg";
+ tune_value = <0x2 0x2>;
};
- 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>;
+ hs_tune11 {
+ /* true : 1, false: 0 */
+ /* <enable_user_imp user_imp_value> */
+ tune_name = "enable_user_imp";
+ tune_value = <0x0 0x0>;
};
- l44_reg: LDO44 {
- regulator-name = "vdd_ldo44";
- regulator-min-microvolt = <800000>;
- regulator-max-microvolt = <1300000>;
- regulator-ramp-delay = <12000>;
+ hs_tune12 {
+ /* PHY clk : 1 , FREE clk : 0 */
+ tune_name = "is_phyclock";
+ tune_value = <0x1 0x1>;
};
};
- };
- };
- i2c@13880000 {
- status = "okay";
- s2mpb02_pmic@59 {
- compatible = "s2mpb02,s2mpb02mfd";
- reg = <0x59>;
+ usb3_ss_tune:ss_tune {
+ ss_tune_cnt = <15>;
+
+ /* value = <device host> */
+ ss_tune1 {
+ tune_name = "tx0_term_offset";
+ tune_value = <0x0 0x0>;
+ };
+
+ ss_tune2 {
+ tune_name = "pcs_tx_swing_full";
+ tune_value = <0x7f 0x7f>;
+ };
- s2mpb02,wakeup;
- pinctrl-names = "default";
- pinctrl-0 = <&sub_pmic_irq>;
+ ss_tune3 {
+ tune_name = "pcs_tx_deemph_6db";
+ tune_value = <0x1c 0x1c>;
+ };
- regulators {
- _buck1_reg: s2mpb02-buck1 {
- regulator-name = "VDD_EXT_1P3_PB03";
- regulator-min-microvolt = <600000>;
- regulator-max-microvolt = <1700000>;
- regulator-always-on;
- regulator-boot-on;
+ ss_tune4 {
+ tune_name = "pcs_tx_deemph_3p5db";
+ tune_value = <0x1c 0x1c>;
};
- _buck2_reg: s2mpb02-buck2 {
- regulator-name = "SVDDD_1.2V";
- regulator-min-microvolt = <1200000>;
- regulator-max-microvolt = <1200000>;
+ ss_tune5 {
+ tune_name = "tx_vboost_lvl_sstx";
+ tune_value = <0x7 0x7>;
};
- _buckboost_reg: s2mpb02-bb {
- regulator-name = "VREG_BOOST_BYP";
- regulator-min-microvolt = <2600000>;
- regulator-max-microvolt = <4000000>;
- regulator-always-on;
- regulator-boot-on;
+ ss_tune6 {
+ tune_name = "tx_vboost_lvl";
+ tune_value = <0x4 0x4>;
};
- _ldo1_reg: s2mpb02-ldo1 {
- regulator-name = "VDDD_1.0V_CAM_T";
- regulator-min-microvolt = <1000000>;
- regulator-max-microvolt = <1000000>;
+ ss_tune7 {
+ tune_name = "los_level";
+ tune_value = <0x9 0x9>;
};
- _ldo2_reg: s2mpb02-ldo2 {
- regulator-name = "VDDD_1.0V_CAM";
- regulator-min-microvolt = <1000000>;
- regulator-max-microvolt = <1000000>;
+ ss_tune8 {
+ tune_name = "los_bias";
+ tune_value = <0x5 0x5>;
};
- _ldo3_reg: s2mpb02-ldo3 {
- regulator-name = "VDDD_1.05V_SUB";
- regulator-min-microvolt = <600000>;
- regulator-max-microvolt = <2187500>;
+ ss_tune9 {
+ tune_name = "pcs_rx_los_mask_val";
+ tune_value = <0x104 0x104>;
};
- _ldo4_reg: s2mpb02-ldo4 {
- regulator-name = "S2MPB02_LDO4";
- regulator-min-microvolt = <600000>;
- regulator-max-microvolt = <2187500>;
+ ss_tune10 {
+ tune_name = "tx_eye_height_cntl_en";
+ tune_value = <0x1 0x1>;
};
- _ldo5_reg: s2mpb02-ldo5 {
- regulator-name = "VDDD_1.05V_VT";
- regulator-min-microvolt = <600000>;
- regulator-max-microvolt = <2187500>;
+ ss_tune11 {
+ tune_name = "pipe_tx_deemph_update_delay";
+ tune_value = <0x2 0x2>;
};
- _ldo6_reg: s2mpb02-ldo6 {
- regulator-name = "VDDIO_1.8V_CAM_T";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
+ 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>;
};
- _ldo7_reg: s2mpb02-ldo7 {
- regulator-name = "VDDIO_1.8V_SUB";
- regulator-min-microvolt = <600000>;
- regulator-max-microvolt = <3375000>;
+ ss_tune14 {
+ tune_name = "rx_decode_mode";
+ tune_value = <0x1 0x1>;
};
- _ldo8_reg: s2mpb02-ldo8 {
- regulator-name = "VDDIO_1.8V_CAM";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
+ ss_tune15 {
+ tune_name = "decrese_ss_tx_imp";
+ tune_value = <0x1 0x1>;
};
+ };
- _ldo9_reg: s2mpb02-ldo9 {
- regulator-name = "DOVDD_VT_CAM_1V8";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
+ usb3_hs_tune:usb3_hs_tune {
+ hs_tune_cnt = <10>;
+
+ /* value = <device host> */
+ hs_tune1 {
+ tune_name = "tx_pre_emp";
+ tune_value = <0x3 0x3>;
};
- _ldo10_reg: s2mpb02-ldo10 {
- regulator-name = "VDDD_1.8V_OIS";
- regulator-min-microvolt = <600000>;
- regulator-max-microvolt = <3375000>;
+ hs_tune2 {
+ tune_name = "tx_pre_emp_plus";
+ tune_value = <0x0 0x0>;
};
- _ldo11_reg: s2mpb02-ldo11 {
- regulator-name = "VDDA_2.8V_CAM";
- regulator-min-microvolt = <2800000>;
- regulator-max-microvolt = <2800000>;
+ hs_tune3 {
+ tune_name = "tx_vref";
+ tune_value = <0x7 0x7>;
};
- _ldo12_reg: s2mpb02-ldo12 {
- regulator-name = "VDDD_2.8V_OIS";
- regulator-min-microvolt = <2800000>;
- regulator-max-microvolt = <2800000>;
+ hs_tune4 {
+ tune_name = "rx_sqrx";
+ tune_value = <0x7 0x7>;
};
- _ldo13_reg: s2mpb02-ldo13 {
- regulator-name = "VDDA_2.8V_CAM_T";
- regulator-min-microvolt = <2800000>;
- regulator-max-microvolt = <2800000>;
+ hs_tune5 {
+ tune_name = "tx_rise";
+ tune_value = <0x3 0x3>;
};
- _ldo14_reg: s2mpb02-ldo14 {
- regulator-name = "VDD_VT_CAM_2V8";
- regulator-min-microvolt = <2800000>;
- regulator-max-microvolt = <2800000>;
+ hs_tune6 {
+ tune_name = "compdis";
+ tune_value = <0x7 0x7>;
};
- _ldo15_reg: s2mpb02-ldo15 {
- regulator-name = "VDDD_2.8V_OIS_T";
- regulator-min-microvolt = <2800000>;
- regulator-max-microvolt = <2800000>;
+ hs_tune7 {
+ tune_name = "tx_hsxv";
+ tune_value = <0x3 0x3>;
};
- _ldo16_reg: s2mpb02-ldo16 {
- regulator-name = "VDD_2.8V_OIS";
- regulator-min-microvolt = <2800000>;
- regulator-max-microvolt = <2800000>;
+ hs_tune8 {
+ tune_name = "tx_fsls";
+ tune_value = <0x3 0x3>;
};
- _ldo17_reg: s2mpb02-ldo17 {
- regulator-name = "S2MPB02_LDO17";
- regulator-min-microvolt = <600000>;
- regulator-max-microvolt = <3375000>;
+ hs_tune9 {
+ tune_name = "tx_res";
+ tune_value = <0x3 0x3>;
};
- _ldo18_reg: s2mpb02-ldo18 {
- regulator-name = "VDD_PROXY_LED_3P3";
- regulator-min-microvolt = <600000>;
- regulator-max-microvolt = <3375000>;
+ hs_tune10 {
+ tune_name = "utim_clk";
+ tune_value = <0x1 0x1>;
};
};
- torch {
- torch1-gpio = "gpg3-1";
- flash1-gpio = "gpg3-0";
+ /* Secure RPMB */
+ ufs-srpmb {
+ compatible = "samsung,ufs-srpmb";
+ interrupts = <0 460 0>;
+ };
+
+ V_SYS: fixedregulator@1 {
+ compatible = "regulator-fixed";
+ regulator-name = "V_SYS";
+ regulator-min-microvolt = <4200000>;
+ regulator-max-microvolt = <4200000>;
+ regulator-boot-on;
+ regulator-always-on;
+ };
+
+ dummy_audio_codec: audio_codec_dummy {
+ status = "okay";
+ compatible = "snd-soc-dummy";
+ };
+ dummy_audio_cpu: audio_cpu_dummy {
+ compatible = "samsung,dummy-cpu";
status = "okay";
+ };
- leds1 {
- ledname = "leds-sec1";
- id = <0>;
- brightness = <0xC>; /* (n+1)x100 : 1300mA */
- timeout = <0x7>; /* (n+1)x62.6 : 500ms */
- torch_table_enable = <0>;
+ 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", "MICBIAS2B",
+ "MICBIAS2A", "MICBIAS2B",
+ "IN1BL", "HEADSETMIC",
+ "DMIC1", "MICBIAS1A",
+ "IN1AL", "DMIC1",
+ "DMIC2", "MICBIAS1B",
+ "IN2L", "DMIC2",
+ "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 &cs35l35_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>;
+ };
+ };
+ codec-left-amp@0 {
+ format = "i2s";
- leds2 {
- ledname = "torch-sec1";
- id = <1>;
- brightness = <0xC>; /* (n+1)x20 = 260mA */
- timeout = <0xF>;
- torch_table_enable = <1>;
- torch_table = <2 4 4 5 6 8 9 10 10 12>;
+ cpu {
+ sound-dai = <&cs47l35 1>;
+ };
+ codec {
+ sound-dai = <&cs35l35_left 0>;
+ };
};
};
- };
- };
+ }; /* end of __overlay__ */
+ }; /* end of fragment */
+}; /* end of root */
- exynos_rgt {
- compatible = "samsung,exynos-rgt";
- };
+&udc {
+ status = "okay";
+};
- 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 >;
- };
+&usbdrd_dwc3 {
+ dr_mode = "otg";
+ maximum-speed = "super-speed";
+};
- mailbox_gnss: mcu_ipc@11A00000 {
- compatible = "samsung,exynos-shd-ipc-mailbox";
- reg = <0x0 0x11A00000 0x180>;
- mcu,name = "mcu_ipc_gnss";
- mcu,id = <1>;
- interrupts = <GIC_SPI 43 IRQ_TYPE_NONE>; /* INTREQ__MAILBOX_GNSS2AP */
- };
+&usbdrd_phy {
+ status = "okay";
+ hs_tune_param = <&usb_hs_tune>;
+};
- gnss_pdata {
- status = "okay";
+&usbdrd3_phy {
+ status = "okay";
+ hs_tune_param = <&usb3_hs_tune>;
+ ss_tune_param = <&usb3_ss_tune>;
+};
- 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 = <GIC_SPI 27 IRQ_TYPE_NONE>, <GIC_SPI 81 IRQ_TYPE_NONE>, <GIC_SPI 80 IRQ_TYPE_NONE>, <GIC_SPI 79 IRQ_TYPE_NONE>;
- 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>;
- };
+&serial_0 {
+ status = "okay";
+};
- 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>;
- };
- };
+&dsim_0 {
+ lcd_info = <&s6e3fa0_vid>;
+ /* reset */
+ gpios = <&gpg1 4 0x1>, <&gpg1 7 0x1>;
+};
- pinctrl@11850000 {
- key_voldown: key-voldown {
- samsung,pins = "gpa1-6";
- samsung,pin-function = <0xf>;
- samsung,pin-pud = <0>;
- samsung,pin-drv = <0>;
- };
+/* USI_0_SHUB */
+&usi_0_shub {
+ usi_v2_mode = "spi";
+ status = "okay";
+};
- key_volup: key-volup {
- samsung,pins = "gpa1-5";
- samsung,pin-function = <0xf>;
- samsung,pin-pud = <0>;
- samsung,pin-drv = <0>;
- };
+/* USI_SHUB_0_I2C */
+&usi_0_shub_i2c {
+ /* usi_v2_mode = "i2c" or "spi" or "uart" */
+ status = "disabled";
+};
- key_power: key-power {
- samsung,pins = "gpa1-7";
- samsung,pin-function = <0xf>;
- samsung,pin-pud = <0>;
- samsung,pin-drv = <0>;
- };
- };
+/* USI_0_CMGP */
+&usi_0_cmgp {
+ /* usi_v2_mode = "i2c" or "spi" or "uart" */
+ status = "disabled";
+};
- pinctrl@11850000 {
- dwmmc2_cd_ext_irq: dwmmc2_cd_ext_irq {
- samsung,pins = "gpa0-7";
- samsung,pin-function = <0xf>;
- samsung,pin-pud = <3>;
- samsung,pin-drv = <3>;
- };
- };
+/* USI_0_CMGP_I2C */
+&usi_0_cmgp_i2c {
+ usi_v2_mode = "i2c";
+ status = "okay";
+};
- dwmmc2@13550000 {
- status = "okay";
- num-slots = <1>;
- supports-4bit;
- supports-cmd23;
- supports-erase;
- supports-highspeed;
- sd-uhs-sdr50;
- sd-uhs-sdr104;
- 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;
- };
- };
+/* USI_1_CMGP */
+&usi_1_cmgp {
+ usi_v2_mode = "i2c";
+ status = "okay";
+};
- 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>;
- };
- };
-
- i2c_4:i2c@13870000 {
- status = "okay";
- #address-cells = <1>;
- #size-cells = <0>;
- touchscreen@20 {
- compatible = "synaptics,rmi4";
- reg = <0x20>;
- pinctrl-names = "on_state", "off_state";
- pinctrl-0 = <&attn_irq>;
- pinctrl-1 = <&attn_input>;
- synaptics,irq_gpio = <&gpa2 4 0>;
- synaptics,irq_type = <8200>;
- synaptics,max_coords = <1440 2560>; /* x y */
- synaptics,num_lines = <29 16>; /* rx tx */
- synaptics,regulator_dvdd = "VDDD_1.8V_OIS";
- synaptics,regulator_avdd = "vdd_ldo41";
- };
- };
-
- usb_notifier {
- compatible = "samsung,usb-notifier";
- udc = <&udc>;
- };
+/* USI_1_CMGP_I2C */
+&usi_1_cmgp_i2c {
+ usi_v2_mode = "i2c";
+ status = "okay";
+};
- usb@13200000 {
- status = "okay";
- dwc3 {
- dr_mode = "otg";
- maximum-speed = "super-speed";
- };
- };
+/* USI_2_CMGP */
+&usi_2_cmgp {
+ /* usi_v2_mode = "i2c" or "spi" or "uart" */
+ status = "disabled";
+};
- usbdrd_phy:phy@131D0000 {
- status = "okay";
+/* USI_2_CMGP_I2C */
+&usi_2_cmgp_i2c {
+ usi_v2_mode = "i2c";
+ status = "okay";
+};
- hs_tune_param = <&usb_hs_tune>;
- };
+/* USI_3_CMGP */
+&usi_3_cmgp {
+ usi_v2_mode = "spi";
+ status = "okay";
+};
- usbdrd3_phy:phy@131F0000 {
- status = "okay";
+/* USI_3_CMGP_I2C */
+&usi_3_cmgp_i2c {
+ /* usi_v2_mode = "i2c" or "spi" or "uart" */
+ status = "disabled";
+};
- hs_tune_param = <&usb3_hs_tune>;
- ss_tune_param = <&usb3_ss_tune>;
- };
+/* USI_4_CMGP */
+&usi_4_cmgp {
+ usi_v2_mode = "i2c";
+ status = "okay";
+};
- usb_hs_tune:hs_tune {
- hs_tune_cnt = <12>;
+/* USI_4_CMGP_I2C */
+&usi_4_cmgp_i2c {
+ usi_v2_mode = "i2c";
+ status = "okay";
+};
- /* value = <device host> */
- hs_tune1 {
- tune_name = "tx_vref";
- tune_value = <0xf 0xf>;
- };
+/* USI_PERI_UART */
+&usi_peri_uart {
+ usi_v2_mode = "uart";
+ status = "okay";
+};
- hs_tune2 {
- tune_name = "tx_pre_emp";
- tune_value = <0x3 0x3>;
- };
+/* USI_PERI_CAMI2C_0 */
+&usi_peri_cami2c_0 {
+ usi_v2_mode = "i2c";
+ status = "okay";
+};
- hs_tune3 {
- tune_name = "tx_pre_emp_plus";
- tune_value = <0x0 0x0>;
- };
+/* USI_PERI_CAMI2C_1 */
+&usi_peri_cami2c_1 {
+ usi_v2_mode = "i2c";
+ status = "okay";
+};
- hs_tune4 {
- tune_name = "tx_res";
- tune_value = <0x3 0x3>;
- };
+/* USI_PERI_CAMI2C_2 */
+&usi_peri_cami2c_2 {
+ usi_v2_mode = "i2c";
+ status = "okay";
+};
- hs_tune5 {
- tune_name = "tx_rise";
- tune_value = <0x3 0x3>;
- };
+/* USI_PERI_CAMI2C_3 */
+&usi_peri_cami2c_3 {
+ usi_v2_mode = "i2c";
+ status = "okay";
+};
- hs_tune6 {
- tune_name = "tx_hsxv";
- tune_value = <0x3 0x3>;
- };
+/* USI_PERI_SPI_0 */
+&usi_peri_spi_0 {
+ /* usi_v2_mode = "i2c" or "spi" or "uart" */
+ status = "disabled";
+};
- hs_tune7 {
- tune_name = "tx_fsls";
- tune_value = <0x3 0x3>;
- };
+/* USI_PERI_SPI_1 */
+&usi_peri_spi_1 {
+ usi_v2_mode = "spi";
+ status = "okay";
+};
- hs_tune8 {
- tune_name = "rx_sqrx";
- tune_value = <0x7 0x7>;
- };
+/* USI_PERI_USI_0 */
+&usi_peri_usi_0 {
+ /* usi_v2_mode = "i2c" or "spi" or "uart" */
+ status = "disabled";
+};
- hs_tune9 {
- tune_name = "compdis";
- tune_value = <0x7 0x7>;
- };
+/* USI_PERI_USI_0_I2C */
+&usi_peri_usi_0_i2c {
+ /* usi_v2_mode = "i2c" or "spi" or "uart" */
+ status = "disabled";
+};
- hs_tune10 {
- tune_name = "otg";
- tune_value = <0x2 0x2>;
- };
+/* USI_PERI_SPI_2 */
+&usi_peri_spi_2 {
+ usi_v2_mode = "spi";
+ status = "okay";
+};
- hs_tune11 {
- /* true : 1, false: 0 */
- /* <enable_user_imp user_imp_value> */
- tune_name = "enable_user_imp";
- tune_value = <0x0 0x0>;
- };
- hs_tune12 {
- /* PHY clk : 1 , FREE clk : 0 */
- tune_name = "is_phyclock";
- tune_value = <0x1 0x1>;
- };
+&pinctrl_0 {
+ pmic_irq: pmic-irq {
+ samsung,pins = "gpa2-0";
+ samsung,pin-pud = <3>;
+ samsung,pin-drv = <3>;
};
- usb3_ss_tune:ss_tune {
- ss_tune_cnt = <15>;
-
- /* value = <device host> */
- ss_tune1 {
- tune_name = "tx0_term_offset";
- tune_value = <0x0 0x0>;
- };
-
- ss_tune2 {
- tune_name = "pcs_tx_swing_full";
- tune_value = <0x7f 0x7f>;
- };
-
- ss_tune3 {
- tune_name = "pcs_tx_deemph_6db";
- tune_value = <0x1c 0x1c>;
- };
-
- ss_tune4 {
- tune_name = "pcs_tx_deemph_3p5db";
- tune_value = <0x1c 0x1c>;
- };
-
- ss_tune5 {
- tune_name = "tx_vboost_lvl_sstx";
- tune_value = <0x7 0x7>;
- };
-
- ss_tune6 {
- tune_name = "tx_vboost_lvl";
- tune_value = <0x4 0x4>;
- };
-
- ss_tune7 {
- tune_name = "los_level";
- tune_value = <0x9 0x9>;
- };
-
- ss_tune8 {
- tune_name = "los_bias";
- tune_value = <0x5 0x5>;
- };
-
- ss_tune9 {
- tune_name = "pcs_rx_los_mask_val";
- tune_value = <0x104 0x104>;
- };
-
- ss_tune10 {
- tune_name = "tx_eye_height_cntl_en";
- tune_value = <0x1 0x1>;
- };
-
- ss_tune11 {
- tune_name = "pipe_tx_deemph_update_delay";
- tune_value = <0x2 0x2>;
- };
-
- 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_tune14 {
- tune_name = "rx_decode_mode";
- tune_value = <0x1 0x1>;
- };
-
- ss_tune15 {
- tune_name = "decrese_ss_tx_imp";
- tune_value = <0x1 0x1>;
- };
+ sub_pmic_irq: sub-pmic-irq {
+ samsung,pins = "gpa1-3";
+ samsung,pin-function = <0>;
+ samsung,pin-pud = <0>;
+ samsung,pin-drv = <0>;
};
- usb3_hs_tune:hs_tune {
- hs_tune_cnt = <10>;
-
- /* value = <device host> */
- hs_tune1 {
- tune_name = "tx_pre_emp";
- tune_value = <0x3 0x3>;
- };
-
- hs_tune2 {
- tune_name = "tx_pre_emp_plus";
- tune_value = <0x0 0x0>;
- };
-
- hs_tune3 {
- tune_name = "tx_vref";
- tune_value = <0x7 0x7>;
- };
-
- hs_tune4 {
- tune_name = "rx_sqrx";
- tune_value = <0x7 0x7>;
- };
-
- hs_tune5 {
- tune_name = "tx_rise";
- tune_value = <0x3 0x3>;
- };
-
- hs_tune6 {
- tune_name = "compdis";
- tune_value = <0x7 0x7>;
- };
-
- hs_tune7 {
- tune_name = "tx_hsxv";
- tune_value = <0x3 0x3>;
- };
-
- hs_tune8 {
- tune_name = "tx_fsls";
- tune_value = <0x3 0x3>;
- };
-
- hs_tune9 {
- tune_name = "tx_res";
- tune_value = <0x3 0x3>;
- };
-
- hs_tune10 {
- tune_name = "utim_clk";
- tune_value = <0x1 0x1>;
- };
+ usbpd_irq: usbpd-irq {
+ samsung,pins = "gpa1-1";
+ samsung,pin-function = <0xf>;
+ samsung,pin-pud = <3>;
+ samsung,pin-drv = <3>;
};
- /* Secure RPMB */
- ufs-srpmb {
- compatible = "samsung,ufs-srpmb";
- interrupts = <0 460 0>;
+ if_pmic_irq: if-pmic-irq {
+ samsung,pins = "gpa2-1";
+ samsung,pin-function = <0>;
+ samsung,pin-pud = <0>;
+ samsung,pin-drv = <0>;
};
- 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;
+ fuel_irq: fuel-irq {
+ samsung,pins = "gpa2-3";
+ samsung,pin-function = <0>;
+ samsung,pin-pud = <0>;
+ samsung,pin-drv = <0>;
};
- pinctrl@11850000 {
- amp_irq: amp-irq {
- samsung,pins ="gpa0-2";
- samsung,pin-function = <0xf>;
- samsung,pin-pud = <0>;
- };
+ key_voldown: key-voldown {
+ samsung,pins = "gpa1-6";
+ samsung,pin-function = <0xf>;
+ samsung,pin-pud = <0>;
+ samsung,pin-drv = <0>;
};
- pinctrl@139B0000 {
- amp_reset: amp-reset {
- samsung,pins ="gpg3-3";
- samsung,pin-pud = <0>;
- samsung,pin-con-pdn =<3>;
- samsung,pin-pud-pdn = <0>;
- };
+ key_volup: key-volup {
+ samsung,pins = "gpa1-5";
+ samsung,pin-function = <0xf>;
+ samsung,pin-pud = <0>;
+ samsung,pin-drv = <0>;
};
- i2c_3: i2c@13860000 {
- status = "okay";
- cs35l35_left: cs35l35@40 {
- #sound-dai-cells = <1>;
- compatible = "cirrus,cs35l35";
- reg = <0x40>;
-
- pinctrl-names = "default";
- pinctrl-0 = <&_irq &_reset>;
-
- interrupt-parent = <&gpa0>;
- interrupts = <2 0 0>;
-
- reset-gpios = <&gpg3 3 0>;
-
- VA-supply = <&l42_reg>;
- VP-supply = <&V_SYS>;
- cirrus,audio-channel = <0x0>;
- cirrus,boost-ctl-millivolt = <7300>;
- cirrus,sp-drv-strength = <0x1>;
- cirrus,sp-drv-unused = <0x0>;
- cirrus,boost-ind-nanohenry = <1000>;
-
- cirrus,monitor-signal-format {
- cirrus,imon = /bits/ 8 <0x03 0x04 0x00 0x06>;
- cirrus,vmon = /bits/ 8 <0x03 0x00 0x00>;
- cirrus,vpmon = /bits/ 8 <0x00 0x00 0x00>;
- cirrus,vbstmon = /bits/ 8 <0x00 0x00 0x00>;
- cirrus,vpbrstat = /bits/ 8 <0x00 0x00 0x00>;
- cirrus,zerofill = /bits/ 8 <0x00 0x00 0x00>;
- };
- };
+ key_power: key-power {
+ samsung,pins = "gpa1-7";
+ samsung,pin-function = <0xf>;
+ samsung,pin-pud = <0>;
+ samsung,pin-drv = <0>;
};
- pinctrl@139B0000 {
- codec_reset: codec-reset {
- samsung,pins ="gpg3-2";
- samsung,pin-pud = <0>;
- samsung,pin-con-pdn =<3>;
- samsung,pin-pud-pdn = <0>;
- };
+ dwmmc2_cd_ext_irq: dwmmc2_cd_ext_irq {
+ samsung,pins = "gpa0-7";
+ samsung,pin-function = <0xf>;
+ samsung,pin-pud = <3>;
+ samsung,pin-drv = <3>;
};
- spi_9: spi@13940000 {
- pinctrl-names = "default";
- pinctrl-0 = <&spi9_bus &spi9_cs_func>;
- 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>;
-
- 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 */
- >;
-
- cirrus,gpsw = <3 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";
- };
- };
- };
-
- 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>;
- };
- MICBIAS2B {
- regulator-active-discharge = <1>;
- };
-
- cirrus,accdet {
- #address-cells = <1>;
- #size-cells = <0>;
-
- acc@1 {
- reg = <1>;
-
- cirrus,micd-configs = <
- 0 0 3 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>;
- };
- };
-
- controller-data {
- samsung,spi-feedback-delay = <1>;
- samsung,spi-chip-select-mode = <0>;
- };
- };
+ attn_irq: attn-irq {
+ samsung,pins = "gpa2-4";
+ samsung,pin-function = <0xf>;
+ samsung,pin-pud = <0>;
+ samsung,pin-drv = <0>;
};
- dummy_audio_codec: audio_codec_dummy {
- status = "okay";
- compatible = "snd-soc-dummy";
+ attn_input: attn-input {
+ samsung,pins = "gpa2-4";
+ samsung,pin-function = <0>;
+ samsung,pin-pud = <1>;
};
- dummy_audio_cpu: audio_cpu_dummy {
- compatible = "samsung,dummy-cpu";
- status = "okay";
+ amp_irq: amp-irq {
+ samsung,pins ="gpa0-2";
+ samsung,pin-function = <0xf>;
+ samsung,pin-pud = <0>;
};
+};
- 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", "MICBIAS2B",
- "MICBIAS2A", "MICBIAS2B",
- "IN1BL", "HEADSETMIC",
- "DMIC1", "MICBIAS1A",
- "IN1AL", "DMIC1",
- "DMIC2", "MICBIAS1B",
- "IN2L", "DMIC2",
- "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 &cs35l35_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>;
- };
- };
- codec-left-amp@0 {
- format = "i2s";
-
- cpu {
- sound-dai = <&cs47l35 1>;
- };
- codec {
- sound-dai = <&cs35l35_left 0>;
- };
- };
-
+&pinctrl_4 {
+ /* Warm reset information from AP */
+ pm_wrsti: pm-wrsti {
+ samsung,pins = "gpg0-7";
+ samsung,pin-con-pdn = <3>;
};
-};
-
-&pinctrl_0 {
- if_pmic_irq: if-pmic-irq {
- samsung,pins = "gpa2-1";
- samsung,pin-function = <0>;
+ amp_reset: amp-reset {
+ samsung,pins ="gpg3-3";
samsung,pin-pud = <0>;
- samsung,pin-drv = <0>;
+ samsung,pin-con-pdn =<3>;
+ samsung,pin-pud-pdn = <0>;
};
- fuel_irq: fuel-irq {
- samsung,pins = "gpa2-3";
- samsung,pin-function = <0>;
+ codec_reset: codec-reset {
+ samsung,pins ="gpg3-2";
samsung,pin-pud = <0>;
- samsung,pin-drv = <0>;
+ samsung,pin-con-pdn =<3>;
+ samsung,pin-pud-pdn = <0>;
};
};
};
};
+&i2c_3 {
+ status = "okay";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ cs35l35_left: cs35l35@40 {
+ #sound-dai-cells = <1>;
+ compatible = "cirrus,cs35l35";
+ reg = <0x40>;
+
+ pinctrl-names = "default";
+ pinctrl-0 = <&_irq &_reset>;
+
+ interrupt-parent = <&gpa0>;
+ interrupts = <2 0 0>;
+
+ reset-gpios = <&gpg3 3 0>;
+
+ VA-supply = <&l42_reg>;
+ VP-supply = <&V_SYS>;
+ cirrus,audio-channel = <0x0>;
+ cirrus,boost-ctl-millivolt = <7300>;
+ cirrus,sp-drv-strength = <0x1>;
+ cirrus,sp-drv-unused = <0x0>;
+ cirrus,boost-ind-nanohenry = <1000>;
+
+ cirrus,monitor-signal-format {
+ cirrus,imon = /bits/ 8 <0x03 0x04 0x00 0x06>;
+ cirrus,vmon = /bits/ 8 <0x03 0x00 0x00>;
+ cirrus,vpmon = /bits/ 8 <0x00 0x00 0x00>;
+ cirrus,vbstmon = /bits/ 8 <0x00 0x00 0x00>;
+ cirrus,vpbrstat = /bits/ 8 <0x00 0x00 0x00>;
+ cirrus,zerofill = /bits/ 8 <0x00 0x00 0x00>;
+ };
+ };
+};
+
+&spi_9 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&spi9_bus &spi9_cs_func>;
+ 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>;
+
+ 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 */
+ >;
+
+ cirrus,gpsw = <3 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";
+ };
+ };
+ };
+
+ 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>;
+ };
+ MICBIAS2B {
+ regulator-active-discharge = <1>;
+ };
+
+ cirrus,accdet {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ acc@1 {
+ reg = <1>;
+
+ cirrus,micd-configs = <
+ 0 0 3 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>;
+ };
+ };
+
+ controller-data {
+ samsung,spi-feedback-delay = <1>;
+ samsung,spi-chip-select-mode = <0>;
+ };
+ };
+};
+
&fmp_0 {
exynos,block-type = "sda";
exynos,fips-block_offset = <5>;