// SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause /* * Device Tree defines for LCM settings * Copyright (c) 2021 MediaTek Inc. */ #include "mtk_lcm_settings.h" &pio { td4330_fhdp_dphy_vdo_truly: td4330-fhdp-dphy-vdo-truly { compatible = "mediatek,td4330_fhdp_dphy_vdo_truly"; lcm-version = <0>; lcm-params{ compatible = "mediatek,lcm-params"; lcm-params-name = "td4330-fhdp-dphy-vdo-truly"; lcm-params-types = ; lcm-params-resolution = <1080 2280>; lcm-params-physical-width = <64>; lcm-params-physical-height = <129>; /* lk support */ lcm-params-lk { compatible = "mediatek,lcm-params-lk"; lcm-params-lk-ctrl; lcm-params-lk-lcm-if; lcm-params-lk-lcm-cmd-if; lcm-params-lk-io-select-mode; lcm-params-lk-lcm-x; lcm-params-lk-lcm-y; lcm-params-lk-virtual-resolution = <0 0>; lcm-params-lk-od-table-size; lcm-params-lk-od-table; }; lcm-params-lk-round-corner { compatible = "mediatek,lcm-params-lk-round-corner"; lcm-params-lk-rc-round-corner-en = <0>; lcm-params-lk-rc-is-notch; lcm-params-lk-rc-full-content = <0>; lcm-params-lk-rc-width; lcm-params-lk-rc-height; lcm-params-lk-rc-width-bot; lcm-params-lk-rc-height-bot; lcm-params-lk-rc-top-size; lcm-params-lk-rc-top-size-left; lcm-params-lk-rc-top-size-right; lcm-params-lk-rc-bottom-size; lcm-params-lk-rc-pattern-name; }; lcm-params-dbi { compatible = "mediatek,lcm-params-dbi"; /* future reserved for dbi interfaces */ }; lcm-params-dpi { compatible = "mediatek,lcm-params-dpi"; /* future reserved for dpi interfaces */ }; lcm-params-dsi { compatible = "mediatek,lcm-params-dsi"; lcm-params-dsi-density = <480>; lcm-params-dsi-lanes = <4>; lcm-params-dsi-format = ; lcm-params-dsi-phy-type = ; lcm-params-dsi-mode-flags = , , , ; lcm-params-dsi-mode-flags-doze-on; lcm-params-dsi-mode-flags-doze-off; lcm-params-dsi-need-fake-resolution; lcm-params-dsi-fake-resolution = <1080 2280>; lcm-gpio-size = <3>; lcm-gpio-list = <&pio 42 0>, /* gpio list*/ <&pio 28 0>, <&pio 29 0>; pinctrl-names = "gpio1", "gpio2", "gpio3"; pinctrl-0; pinctrl-1; pinctrl-2; status = "okay"; lcm-params-dsi-default-mode = <0>; lcm-params-dsi-mode-count = <1>; lcm-params-dsi-mode-list = <0 1080 2280 60>; lcm-params-dsi-fps-0-1080-2280-60 { compatible = "mediatek,lcm-dsi-fps-0-1080-2280-60"; lcm-params-dsi-voltage; lcm-params-dsi-fake = <0>; /* drm-display-mode */ lcm-params-dsi-vrefresh = <60>; lcm-params-dsi-vertical-sync-active = <2>; lcm-params-dsi-vertical-backporch = <12>; lcm-params-dsi-vertical-frontporch = <75>; lcm-params-dsi-vertical-active-line = <2280>; lcm-params-dsi-horizontal-sync-active = <20>; lcm-params-dsi-horizontal-backporch = <20>; lcm-params-dsi-horizontal-frontporch = <24>; lcm-params-dsi-horizontal-active-pixel = <1080>; lcm-params-dsi-pixel-clock = <163406>; lcm-params-dsi-hskew; lcm-params-dsi-vscan; /* mtk-panel-params */ lcm-params-dsi-pll-clock = <522>; lcm-params-dsi-data-rate; lcm-params-dsi-vfp-for-low-power = <810>; lcm-params-dsi-ssc-enable; lcm-params-dsi-ssc-range; lcm-params-dsi-lcm-color-mode; lcm-params-dsi-min-luminance; lcm-params-dsi-average-luminance; lcm-params-dsi-max-luminance; lcm-params-dsi-round-corner-en = <0>; lcm-params-dsi-corner-pattern-height; lcm-params-dsi-corner-pattern-height-bot; lcm-params-dsi-corner-pattern-tp-size; lcm-params-dsi-corner-pattern-tp-size-left; lcm-params-dsi-corner-pattern-tp-size-right; lcm-params-dsi-corner-pattern-name; lcm-params-dsi-physical-width-um; lcm-params-dsi-physical-height-um; lcm-params-dsi-output-mode = ; lcm-params-dsi-lcm-cmd-if; lcm-params-dsi-hbm-en-time; lcm-params-dsi-hbm-dis-time; lcm-params-dsi-lcm-index; lcm-params-dsi-wait-sof-before-dec-vfp; lcm-params-dsi-doze-delay; lcm-params-dsi-lfr-enable; lcm-params-dsi-lfr-minimum-fps; lcm-params-dsi-msync2-enable; lcm-params-dsi-max-vfp-for-msync; /* lane swap */ lcm-params-dsi-lane-swap-en; lcm-params-dsi-lane-swap0; lcm-params-dsi-lane-swap1; /* esd check table */ lcm-params-dsi-cust-esd-check = <0>; lcm-params-dsi-esd-check-enable = <1>; lcm-params-dsi-lcm-esd-check-table0 = [0A 01 1C 00]; lcm-params-dsi-lcm-esd-check-table1; lcm-params-dsi-lcm-esd-check-table2; /* fpga support */ lcm-params-dsi-fpga-params-0-1080-2280-60 { compatible = "mediatek,lcm-dsi-fpga-params"; lcm-params-dsi-lk-pll-div = <0 0>; lcm-params-dsi-lk-fbk-div = <1>; }; /* lk support */ lcm-params-dsi-lk-params-0-1080-2280-60 { compatible = "mediatek,lcm-dsi-lk-params"; lcm-params-dsi-lk-mode = ; lcm-params-dsi-lk-switch-mode = ; lcm-params-dsi-lk-switch-mode-enable = <0>; lcm-params-dsi-lk-dsi-wmem-conti; lcm-params-dsi-lk-dsi-rmem-conti; lcm-params-dsi-lk-vc-num; lcm-params-dsi-lk-data-format = , , , ; lcm-params-dsi-lk-intermediat-buffer-num; lcm-params-dsi-lk-ps = ; lcm-params-dsi-lk-word-count; lcm-params-dsi-lk-packet-size = <256>; lcm-params-dsi-lk-horizontal-blanking-pixel; lcm-params-dsi-lk-bllp; lcm-params-dsi-lk-line-byte; lcm-params-dsi-lk-horizontal-sync-active-byte; lcm-params-dsi-lk-horizontal-backporch-byte; lcm-params-dsi-lk-horizontal-frontporch-byte; lcm-params-dsi-lk-rgb-byte; lcm-params-dsi-lk-horizontal-sync-active-word-count; lcm-params-dsi-lk-horizontal-backporch-word-count; lcm-params-dsi-lk-horizontal-frontporch-word-count; lcm-params-dsi-lk-pll-select; lcm-params-dsi-lk-pll-div; lcm-params-dsi-lk-fbk-div; lcm-params-dsi-lk-fbk-sel; lcm-params-dsi-lk-rg = <0 0 0>; lcm-params-dsi-lk-dsi-clock; lcm-params-dsi-lk-ssc-disable = <1>; lcm-params-dsi-lk-ssc-range; lcm-params-dsi-lk-compatibility-for-nvk; lcm-params-dsi-lk-cont-clock; lcm-params-dsi-lk-ufoe-enable; lcm-params-dsi-lk-ufoe-params = <0 0 0 0>; lcm-params-dsi-lk-edp-panel; lcm-params-dsi-lk-lcm-int-te-monitor; lcm-params-dsi-lk-lcm-int-te-period; lcm-params-dsi-lk-lcm-ext-te-monitor; lcm-params-dsi-lk-lcm-ext-te-period; lcm-params-dsi-lk-noncont-clock; lcm-params-dsi-lk-noncont-clock-period; lcm-params-dsi-lk-clk-lp-per-line-enable; lcm-params-dsi-lk-dual-dsi-type; lcm-params-dsi-lk-mixmode-enable; lcm-params-dsi-lk-mixmode-mipi-clock; lcm-params-dsi-lk-pwm-fps; lcm-params-dsi-lk-pll-clock-lp; lcm-params-dsi-lk-ulps-sw-enable; lcm-params-dsi-lk-null-packet-en; lcm-params-dsi-lk-vact-fps; lcm-params-dsi-lk-send-frame-enable; lcm-params-dsi-lk-lfr-enable; lcm-params-dsi-lk-lfr-mode; lcm-params-dsi-lk-lfr-type; lcm-params-dsi-lk-lfr-skip-num; lcm-params-dsi-lk-ext-te-edge; lcm-params-dsi-lk-eint-disable; lcm-params-dsi-lk-phy-sel = <0 0 0 0>; }; lcm-params-dsi-dsc-params-0-1080-2280-60 { compatible = "mediatek,lcm-params-dsi-dsc-params"; lcm-params-dsi-dsc-enable = <0>; lcm-params-dsi-dsc-enable-lk = <0>; lcm-params-dsi-dsc-ver; lcm-params-dsi-dsc-slice-mode; lcm-params-dsi-dsc-rgb-swap; lcm-params-dsi-dsc-cfg; lcm-params-dsi-dsc-rct-on; lcm-params-dsi-dsc-bit-per-channel; lcm-params-dsi-dsc-line-buf-depth; lcm-params-dsi-dsc-bp-enable; lcm-params-dsi-dsc-bit-per-pixel; lcm-params-dsi-dsc-pic-height; lcm-params-dsi-dsc-pic-width; lcm-params-dsi-dsc-slice-height; lcm-params-dsi-dsc-slice-width; lcm-params-dsi-dsc-chunk-size; lcm-params-dsi-dsc-xmit-delay; lcm-params-dsi-dsc-dec-delay; lcm-params-dsi-dsc-scale-value; lcm-params-dsi-dsc-increment-interval; lcm-params-dsi-dsc-decrement-interval; lcm-params-dsi-dsc-line-bpg-offset; lcm-params-dsi-dsc-nfl-bpg-offset; lcm-params-dsi-dsc-slice-bpg-offset; lcm-params-dsi-dsc-initial-offset; lcm-params-dsi-dsc-final-offset; lcm-params-dsi-dsc-flatness-minqp; lcm-params-dsi-dsc-flatness-maxqp; lcm-params-dsi-dsc-rc-model-size; lcm-params-dsi-dsc-rc-edge-factor; lcm-params-dsi-dsc-rc-quant-incr-limit0; lcm-params-dsi-dsc-rc-quant-incr-limit1; lcm-params-dsi-dsc-rc-tgt-offset-hi; lcm-params-dsi-dsc-rc-tgt-offset-lo; }; lcm-params-dsi-phy-timcon-params-0-1080-2280-60 { compatible = "mediatek,lcm-params-dsi-phy-timcon"; lcm-params-dsi-phy-timcon-hs-trail; lcm-params-dsi-phy-timcon-hs-prpr; lcm-params-dsi-phy-timcon-hs-zero; lcm-params-dsi-phy-timcon-lpx; lcm-params-dsi-phy-timcon-ta-get; lcm-params-dsi-phy-timcon-ta-sure; lcm-params-dsi-phy-timcon-ta-go; lcm-params-dsi-phy-timcon-da-hs-exit; lcm-params-dsi-phy-timcon-clk-trail; lcm-params-dsi-phy-timcon-cont-det; lcm-params-dsi-phy-timcon-da-hs-sync; lcm-params-dsi-phy-timcon-clk-zero; lcm-params-dsi-phy-timcon-clk-prpr; lcm-params-dsi-phy-timcon-clk-exit; lcm-params-dsi-phy-timcon-clk-post; /* lk support */ lcm-params-dsi-phy-timcon-lk-hs-trail; lcm-params-dsi-phy-timcon-lk-hs-zero; lcm-params-dsi-phy-timcon-lk-hs-prpr; lcm-params-dsi-phy-timcon-lk-lpx; lcm-params-dsi-phy-timcon-lk-ta-sack; lcm-params-dsi-phy-timcon-lk-ta-get; lcm-params-dsi-phy-timcon-lk-ta-sure; lcm-params-dsi-phy-timcon-lk-ta-go; lcm-params-dsi-phy-timcon-lk-clk-trail; lcm-params-dsi-phy-timcon-lk-clk-zero; lcm-params-dsi-phy-timcon-lk-lpx-wait; lcm-params-dsi-phy-timcon-lk-cont-det; lcm-params-dsi-phy-timcon-lk-clk-hs-prpr; lcm-params-dsi-phy-timcon-lk-clk-hs-post; lcm-params-dsi-phy-timcon-lk-da-hs-exit; lcm-params-dsi-phy-timcon-lk-clk-hs-exit; }; lcm-params-dsi-dyn-params-0-1080-2280-60 { compatible = "mediatek,lcm-params-dsi-dyn"; lcm-params-dsi-dyn-switch-en = <0>; lcm-params-dsi-dyn-pll-clk; lcm-params-dsi-dyn-data-rate; lcm-params-dsi-dyn-vsa; lcm-params-dsi-dyn-vbp; lcm-params-dsi-dyn-vfp; lcm-params-dsi-dyn-vfp-lp-dyn; lcm-params-dsi-dyn-vac; lcm-params-dsi-dyn-hsa; lcm-params-dsi-dyn-hbp; lcm-params-dsi-dyn-hfp; lcm-params-dsi-dyn-hac; lcm-params-dsi-dyn-max-vfp-for-msync-dyn; }; lcm-params-dsi-dyn-fps-params-0-1080-2280-60 { compatible = "mediatek,lcm-params-dsi-dyn-fps"; lcm-params-dsi-dyn-fps-switch-en = <0>; lcm-params-dsi-dyn-fps-vact-timing-fps; lcm-params-dsi-dyn-fps-data-rate; lcm-params-dsi-dyn-fps-dfps-cmd-table0; lcm-params-dsi-dyn-fps-dfps-cmd-table1; lcm-params-dsi-dyn-fps-dfps-cmd-table2; lcm-params-dsi-dyn-fps-dfps-cmd-table3; lcm-params-dsi-dyn-fps-dfps-cmd-table4; lcm-params-dsi-dyn-fps-dfps-cmd-table5; lcm-params-dsi-dyn-fps-dfps-cmd-table6; lcm-params-dsi-dyn-fps-dfps-cmd-table7; lcm-params-dsi-dyn-fps-dfps-cmd-table8; lcm-params-dsi-dyn-fps-dfps-cmd-table9; lcm-params-dsi-dyn-fps-dfps-cmd-table10; lcm-params-dsi-dyn-fps-dfps-cmd-table11; lcm-params-dsi-dyn-fps-dfps-cmd-table12; lcm-params-dsi-dyn-fps-dfps-cmd-table13; lcm-params-dsi-dyn-fps-dfps-cmd-table14; lcm-params-dsi-dyn-fps-dfps-cmd-table15; lcm-params-dsi-dyn-fps-dfps-cmd-table16; lcm-params-dsi-dyn-fps-dfps-cmd-table17; lcm-params-dsi-dyn-fps-dfps-cmd-table18; lcm-params-dsi-dyn-fps-dfps-cmd-table19; }; }; }; }; lcm-ops { compatible = "mediatek,lcm-ops"; lcm-ops-dbi { compatible = "mediatek,lcm-ops-dbi"; /* future reserved for dbi interfaces*/ }; lcm-ops-dpi { compatible = "mediatek,lcm-ops-dpi"; /* future reserved for dpi interfaces*/ }; lcm-ops-dsi { compatible = "mediatek,lcm-ops-dsi"; prepare-size = <67>; prepare-table = [MTK_LCM_UTIL_TYPE_HEX_RESET 01 00], [MTK_LCM_UTIL_TYPE_HEX_MDELAY 01 0f], [MTK_LCM_UTIL_TYPE_HEX_RESET 01 01], [MTK_LCM_UTIL_TYPE_HEX_MDELAY 01 01], [MTK_LCM_UTIL_TYPE_HEX_RESET 01 00], [MTK_LCM_UTIL_TYPE_HEX_MDELAY 01 0a], [MTK_LCM_UTIL_TYPE_HEX_RESET 01 01], [MTK_LCM_UTIL_TYPE_HEX_MDELAY 01 0a], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 02 B0 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 0d], [B6 30 6B 00 06 03 0A 13 1A 6C], [18 19 02], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 05], [B7 71 00 00 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 08], [B8 57 3d 19 be 1e 0a 0a], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 08], [B9 6f 3d 28 be 3c 14 0a], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 08], [BA b5 33 41 be 64 23 0a], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 0c], [BB 44 26 C3 1F 19 06 03 C0 00], [00 10], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 0c], [BC 32 4C C3 52 32 1F 03 F2 00], [00 13], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 0c], [BD 24 68 C3 AA 3F 32 03 FF 00], [00 25], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 0d], [BE 00 00 00 00 00 00 00 00 00], [00 00 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 0d], [C0 00 DC 00 DC 13 08 E8 00 08], [00 03 78], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 24], [C1 30 00 00 11 11 00 00 00 22], [00 05 20 FA 00 08 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 79], [C2 06 E0 6E 01 03 00 02 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 11 00 00 00 00 04 A0 C9], [00 00 00 00 00 00 48 EB 00 00], [01 00 00 00 11 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 11 00 00 00 00], [00 00 DC 00 00 00 00 04 00 08], [EF 00 00 00 00 00 11 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 6d], [C3 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 aa aa aa 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 62], [C4 00 4c 00 3f 00 83 00 00 87], [86 85 84 00 00 00 00 00 61 5d], [5f 00 5e 60 62 00 00 00 02 00], [83 00 00 87 86 85 84 00 00 00], [00 00 61 5d 5f 00 5e 60 62 ff], [ff ff ff ff ff 00 0f 0e 00 0f], [0e 00 00 00 00 00 00 00 0f ee], [00 0f ee 00 00 e0 00 00 e0 0e], [00 00 00 0e 00 00 00 00 00 ff], [57 00 00 00 00 00 00 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 06], [C5 08 00 00 00 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 3a], [C6 02 0a 08 fc ff ff ff 00 00], [13 01 f0 0c 06 01 43 43 43 00], [00 00 01 77 09 28 28 06 01 43], [43 43 00 00 00 01 61 00 00 00], [1c 01 00 00 00 00 00 00 00 00], [00 00 00 00 20 20 00 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 4d], [C7 00 00 00 e0 01 E9 02 7e 02], [05 02 90 02 f6 02 40 02 5C 02], [77 02 C8 02 1b 02 5b 02 Bd 02], [27 02 c3 03 54 03 d8 03 ff 00], [00 00 e0 01 E9 02 7e 02 05 02], [90 02 f6 02 40 02 5C 02 77 02], [C8 02 1b 02 5b 02 Bd 02 27 02], [c3 03 54 03 d8 03 ff], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 42], [C8 41 00 ff fa 00 ff 00 00 fe], [f6 fe e9 00 00 ff f7 fb e1 00], [00 00 00 00 ff 00 00 ff fa 00], [ff 00 fe f6 fe e9 00 ff f7 fb], [e1 00 00 00 00 ff 00 ff fa 00], [ff 00 fe f6 fe e9 00 ff f7 fb], [e1 00 00 00 00 ff], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 19], [C9 00 ff fa 00 ff 00 00 fe f6], [fe e9 00 00 ff f7 fb e1 00 00], [00 00 00 ff 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 42], [CA 1c fc fc fc 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 0b], [CC 00 00 4d 8b 55 4d 8b aa 4d], [8b], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 02 CD 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 24], [CE 5d 40 49 53 59 5e 63 68 6e], [74 7e 8a 98 a8 bb d0 e7 ff 04], [00 04 04 42 04 69 5a 40 11 f4], [00 00 84 fa 00 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 07], [CF 00 00 80 46 61 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 12], [D0 f6 95 11 b1 55 cf 00 f6 d3], [11 f0 01 12 cf 02 20 11], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 23], [D1 d3 d3 33 33 07 03 3b 33 77], [37 77 37 35 77 07 77 f7 33 73], [07 33 33 03 33 1b 03 32 3d 0a], [30 13 13 20 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 04 D2 00 00 07], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 9a], [D3 03 00 00 00 00 00 00 0f 00], [57 00 00 32 00 00 1a 70 01 19], [80 01 01 f0 02 00 e0 06 ff f7], [ff ff f7 ff ff f7 ff ff f7 ff], [ff f7 ff ff f7 ff ff f7 ff ff], [f7 ff ff f7 ff ff f7 ff ff f7], [ff ff f7 ff ff f7 ff ff f7 ff], [ff f7 ff ff f7 ff ff f7 ff ff], [f7 ff ff f7 ff ff f7 ff ff f7], [ff ff f7 ff ff f7 ff ff f7 ff], [ff f7 ff ff f7 ff ff f7 ff ff], [f7 ff ff f7 ff ff f7 ff ff f7], [ff ff f7 ff ff f7 ff ff f7 ff], [ff f7 ff ff f7 ff ff f7 ff ff], [f7 ff ff f7 ff ff f7 ff ff f7], [ff ff f7 ff], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 05], [E5 03 00 00 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 09], [D5 02 42 02 42 02 dc 02 dc], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 02 D6 c0], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 32], [D7 21 10 52 52 00 B6 04 FD 00], [B6 04 FD 00 82 80 83 84 85 83], [80 84 45 85 85 85 87 04 06 02], [04 04 07 10 0C 0B 0A 0A 07 06], [00 08 00 00 00 00 00 00 00 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 05 DD 30 06 23 65], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 0d], [DE 00 00 00 0f ff 00 00 00 00], [00 00 10], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 02 E3 ff], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 07], [E6 00 00 00 00 00 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 0b], [E7 50 04 00 00 00 00 00 00 00], [00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 05 E8 00 01 23 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 02 EA 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 08], [EB 00 00 00 00 01 00 11], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 04 EC 00 00 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 21], [ED 01 01 02 02 02 02 00 00 00], [00 00 00 0A 00 00 00 00 10 00], [18 00 18 00 B0 00 00 00 00 00], [DA 10 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 61], [EE 03 0F 00 00 00 00 40 1F 00], [00 0F F2 3F 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 10], [01 00 09 01 8C D8 EF 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 50 1F 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 8c], [EF 00 70 4A 08 D0 00 00 00 00], [3C 3C 3C 00 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 70], [4A 08 D0 00 00 00 00 3C 3C 3C], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 03 08 EC 50 10 00 10], [00 0A 0A 00 00 00 00 10 0F 00], [03 51 00 50 00 00 00 00 00 00], [00 00 00 00 00 00 00 00 00 00], [00 00 00 00 00 00 00 03 08 EC], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 02 B0 03], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 02 B0 04], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 02 D6 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 03 51 ff f0], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 02 53 0c], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 02 55 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 02 35 00], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 01 35], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 01 11], [MTK_LCM_PHASE_TYPE_HEX_START 02], [MTK_LCM_PHASE_HEX_KERNEL MTK_LCM_PHASE_HEX_LK], [MTK_LCM_UTIL_TYPE_HEX_MDELAY 01 c8], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 01 29], [MTK_LCM_UTIL_TYPE_HEX_MDELAY 01 64], [MTK_LCM_PHASE_TYPE_HEX_END 02], [MTK_LCM_PHASE_HEX_KERNEL MTK_LCM_PHASE_HEX_LK], [MTK_LCM_TYPE_HEX_END]; unprepare-table = [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 01 28], [MTK_LCM_UTIL_TYPE_HEX_MDELAY 01 32], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 01 10], [MTK_LCM_UTIL_TYPE_HEX_MDELAY 01 96], [MTK_LCM_TYPE_HEX_END]; set-display-on-table = [MTK_LCM_PHASE_TYPE_HEX_START 02], [MTK_LCM_PHASE_HEX_LK], [MTK_LCM_PHASE_HEX_LK_DISPLAY_ON_DELAY], [MTK_LCM_UTIL_TYPE_HEX_TDELAY 01 78], [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER 01 29], [MTK_LCM_UTIL_TYPE_HEX_MDELAY 01 64], [MTK_LCM_PHASE_TYPE_HEX_END 02], [MTK_LCM_PHASE_HEX_LK], [MTK_LCM_PHASE_HEX_LK_DISPLAY_ON_DELAY], [MTK_LCM_TYPE_HEX_END]; lcm-update-table; /* if this is null, we default use 51 for backlight settings*/ set-backlight-mask = <0xff>; set-backlight-cmdq-table = [MTK_LCM_CMD_TYPE_HEX_WRITE_BUFFER_RUNTIME_INPUT 06], [MTK_LCM_INPUT_TYPE_HEX_CURRENT_BACKLIGHT 01 01], [02 51 FF], [MTK_LCM_TYPE_HEX_END]; set-aod-light-mask = <0xff>; set-aod-light-table; ata-id-value-data = [00 00 00]; ata-check-size = <1>; ata-check-table = /*read cmd:4, read buffer index:0, length:3*/ [MTK_LCM_CMD_TYPE_HEX_READ_CMD 03 00 03 04], [MTK_LCM_TYPE_HEX_END]; compare-id-value-data = [02]; compare-id-table = [MTK_LCM_UTIL_TYPE_HEX_RESET 01 01], [MTK_LCM_UTIL_TYPE_HEX_RESET 01 00], [MTK_LCM_UTIL_TYPE_HEX_MDELAY 01 01], [MTK_LCM_UTIL_TYPE_HEX_RESET 01 01], [MTK_LCM_UTIL_TYPE_HEX_MDELAY 01 14], /*lk data length is 1*/ [MTK_LCM_LK_TYPE_HEX_PREPARE_PARAM_COUNT 01 01], /* data[0] is 00013700*/ [MTK_LCM_LK_TYPE_HEX_PREPARE_PARAM 05 00 00 01 37 00], [MTK_LCM_LK_TYPE_HEX_WRITE_PARAM 00], /*write*/ /*read cmd is BF, read back buffer index:0, length: 1*/ [MTK_LCM_CMD_TYPE_HEX_READ_BUFFER 03 00 01 BF], [MTK_LCM_TYPE_HEX_END]; doze-enable-start-table; doze-enable-table; doze-disable-table; doze-area-table; doze-post-disp-on-table; /* hbm status can be changed on which parameter index */ hbm-set-cmdq-switch-id; hbm-set-cmdq-switch-on; /* the parameter of hbm on*/ hbm-set-cmdq-switch-off; /* the parameter of hbm off*/ hbm-set-cmdq-table; gpio-test-table = /* lcm-gpios index, gpio mode*/ [MTK_LCM_GPIO_TYPE_HEX_MODE 02 01 02], /* lcm-gpios index, gpio direction*/ [MTK_LCM_GPIO_TYPE_HEX_DIR_OUTPUT 02 01 01], [MTK_LCM_GPIO_TYPE_HEX_OUT 02 01 01], [MTK_LCM_TYPE_HEX_END]; /* fps switch cmd for high frame rate feature */ lcm-ops-dsi-fps-switch-after-poweron { compatible = "mediatek,lcm-ops-dsi-fps-switch-after-poweron"; fps-switch-0-1080-2280-60-table; }; lcm-ops-dsi-fps-switch-before-powerdown { compatible = "mediatek,lcm-ops-dsi-fps-switch-before-powerdown"; fps-switch-0-1080-2280-60-table; }; }; }; }; };