git-subtree-dir: qcom/display git-subtree-mainline:5c1b2eea72
git-subtree-split:8c12068d4d
2090 lines
78 KiB
YAML
2090 lines
78 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/mdss-dsi-panel.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: QTI mdss-dsi-panel
|
|
|
|
description: >
|
|
mdss-dsi-panel is a dsi panel device which supports panels that
|
|
are compatible with MIPI display serial interface specification.
|
|
|
|
maintainers:
|
|
- Vara Reddy <quic_varar@quicinc.com>
|
|
- Vishnuvardhan Prodduturi <quic_vproddut@quicinc.com>
|
|
|
|
properties:
|
|
compatible:
|
|
description: >
|
|
This property applies to DSI V2 panels only.
|
|
This property should not be added for panels
|
|
that work based on version "V6.0"
|
|
DSI panels that are of different versions
|
|
are initialized by the drivers for dsi controller.
|
|
This property specifies the version
|
|
for DSI HW that this panel will work with
|
|
"qcom,dsi-panel-v2" = DSI V2.0
|
|
|
|
status:
|
|
description: >
|
|
This property applies to DSI V2 panels only.
|
|
This property should not be added for panels
|
|
that work based on version "V6.0"
|
|
DSI panels that are of different versions
|
|
are initialized by the drivers for dsi controller.
|
|
A string that has to be set to "okay/ok"
|
|
to enable the panel driver. By default this property
|
|
will be set to "disable". Will be set to "ok/okay"
|
|
status for specific platforms.
|
|
default: disable
|
|
|
|
qcom,mdss-dsi-panel-controller:
|
|
description: >
|
|
Specifies the phandle for the DSI controller that
|
|
this panel will be mapped to.
|
|
$ref: /schemas/types.yaml#/definitions/phandle
|
|
|
|
qcom,mdss-dsi-panel-width:
|
|
description: Specifies panel width in pixels.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-panel-height:
|
|
description: Specifies panel height in pixels.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-bpp:
|
|
description: >
|
|
Specifies the panel bits per pixel.
|
|
3 = for rgb111
|
|
8 = for rgb332
|
|
12 = for rgb444
|
|
16 = for rgb565
|
|
18 = for rgb666
|
|
24 = for rgb888
|
|
enum: [3, 8, 12, 16, 18, 24]
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-panel-destination:
|
|
description: >
|
|
A string that specifies the destination display for the panel.
|
|
"display_1" = DISPLAY_1
|
|
"display_2" = DISPLAY_2
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
enum: [display_1, display_2]
|
|
|
|
qcom,mdss-dsi-panel-timings:
|
|
description: >
|
|
An array of length 12 that specifies the PHY timing settings for
|
|
the panel.
|
|
$ref: /schemas/types.yaml#/definitions/uint32-array
|
|
minItems: 12
|
|
maxItems: 12
|
|
|
|
qcom,mdss-dsi-panel-timings-8996:
|
|
description: >
|
|
An array of length 40 char that specifies the 8996 PHY lane
|
|
timing settings for the panel.
|
|
$ref: /schemas/types.yaml#/definitions/uint32-array
|
|
minItems: 40
|
|
maxItems: 40
|
|
|
|
qcom,mdss-dsi-on-command:
|
|
description: >
|
|
A byte stream formed by multiple dcs packets base on
|
|
qcom dsi controller protocol.
|
|
byte 0: dcs data type
|
|
byte 1: Unused
|
|
byte 2: virtual channel number
|
|
byte 3: Message flags
|
|
byte 4: wait number of specified ms after dcs command transmitted
|
|
byte 5, 6: 16 bits length in network byte order
|
|
byte 7 and beyond: number byte of payload
|
|
Note, if a short DCS packet(i.e packet with Byte 0:dcs data type as 05) mentioned in
|
|
qcom,mdss-dsi-on-command/qcom,mdss-dsi-off-command stream fails to transmit,
|
|
then 3 options can be tried.
|
|
1. Send the packet as a long packet instead
|
|
Byte 0: dcs data type = 05 (DCS short Packet)
|
|
Byte 0: dcs data type = 29 (DCS long Packet)
|
|
2. Send the packet in one burst by prepending with the next packet in packet stream
|
|
Byte 3 = 00 (indicates this is an individual packet)
|
|
Byte 3 = 40 (indicates this will be appended to the next
|
|
individual packet in the packet stream)
|
|
3. Prepend a NULL packet to the short packet and send both in one burst instead of
|
|
combining multiple short packets and sending them in one burst.
|
|
|
|
qcom,mdss-dsi-off-command:
|
|
description: >
|
|
A byte stream formed by multiple dcs packets based on
|
|
qcom dsi controller protocol.
|
|
Refer to qcom,mdss-dsi-on-command for command format.
|
|
|
|
qcom,mdss-dsi-post-panel-on-command:
|
|
description: >
|
|
same as "qcom,mdss-dsi-on-command" except commands are
|
|
sent after displaying an image.
|
|
|
|
qcom,platform-reset-gpio:
|
|
description: >
|
|
Specifies the reset gpio of primary display, not required for simulation
|
|
panels.
|
|
|
|
cell-index:
|
|
description: Timing node index to help driver maintain the device tree ordering.
|
|
|
|
qcom,platform-sec-reset-gpio:
|
|
description: Specifies the reset gpio of secondary display.
|
|
|
|
qcom,platform-bklight-en-gpio:
|
|
description: Specifies the gpio for enabling backlight.
|
|
|
|
qcom,mdss-dsi-panel-name:
|
|
description: A string used as a descriptive name of the panel
|
|
|
|
qcom,vid-on-commands:
|
|
description: >
|
|
same as "qcom,mdss-dsi-on-command" except commands are
|
|
only sent for video mode.
|
|
|
|
qcom,vid-on-commands-state:
|
|
description: >
|
|
String that specifies the ctrl state for sending panel on commands.
|
|
for video mode.
|
|
"dsi_lp_mode" = DSI low power mode (default)
|
|
"dsi_hs_mode" = DSI high speed mode
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
enum: [dsi_lp_mode, dsi_hs_mode]
|
|
default: dsi_lp_mode
|
|
|
|
qcom,cmd-on-commands:
|
|
description: >
|
|
same as "qcom,mdss-dsi-on-command" except commands are
|
|
only sent for command mode.
|
|
|
|
qcom,cmd-on-commands-state:
|
|
description: >
|
|
String that specifies the ctrl state for sending panel on commands.
|
|
for command mode.
|
|
"dsi_lp_mode" = DSI low power mode (default)
|
|
"dsi_hs_mode" = DSI high speed mode
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
default: dsi_lp_mode
|
|
|
|
qcom,mdss-dsi-physical-type:
|
|
description: >
|
|
A string used as a decriptive type of the panel.
|
|
"oled" : That indicate it's an OLED panel.
|
|
"lcd" : That indicate it's an LCD panel.
|
|
If it is not set, consider it is a LCD panel as default.
|
|
default: lcd
|
|
enum: [oled, lcd]
|
|
|
|
qcom,mdss-dsi-panel-phy-timings:
|
|
description: >
|
|
An array of length 'n' char that specifies the DSI PHY lane
|
|
timing settings for the panel. This is specific to SDE DRM driver.
|
|
The value of 'n' depends on the DSI PHY h/w revision and parsing this
|
|
property properly will be taken care in the DSI PHY DRM driver.
|
|
|
|
qcom,cmd-sync-wait-broadcast:
|
|
description: Boolean used to broadcast dcs command to panels.
|
|
|
|
qcom,mdss-dsi-fbc-enable:
|
|
description: Boolean used to enable frame buffer compression mode.
|
|
|
|
qcom,mdss-dsi-panel-mode-switch:
|
|
description: Boolean used to enable panel operating mode switch.
|
|
|
|
qcom,poms-align-panel-vsync:
|
|
description: Boolean used to align panel TE with timing engine vsync in POMS
|
|
|
|
qcom,mdss-dsi-bpp-switch:
|
|
description: Boolean used to enable bpp mode switch for non-DSC modes.
|
|
|
|
qcom,mdss-dsi-bpp-mode:
|
|
description: >
|
|
Specifies the panel bits per pixel per timing node, only used when "qcom,mdss-dsi-bpp-switch"
|
|
is set.
|
|
24 = for rgb888, default mode if "qcom,mdss-dsi-bpp-mode" is not set.
|
|
30 = for rgb101010.
|
|
enum: [24, 30]
|
|
|
|
qcom,mdss-dsi-fbc-slice-height:
|
|
description: >
|
|
Slice height(in lines) of compressed block.
|
|
Expressed as power of 2. To set as 128 lines,
|
|
this should be set to 7.
|
|
|
|
qcom,mdss-dsi-fbc-2d-pred-mode:
|
|
description: Boolean to enable 2D map prediction.
|
|
|
|
qcom,mdss-dsi-fbc-ver2-mode:
|
|
description: Boolean to enable FBC 2.0 that supports 1/3 compression.
|
|
|
|
qcom,mdss-dsi-fbc-bpp:
|
|
description: >
|
|
Compressed bpp supported by the panel.
|
|
Specified color order is used as default value.
|
|
|
|
qcom,mdss-dsi-fbc-packing:
|
|
description: Component packing. 0 = default value.
|
|
default: 0
|
|
|
|
qcom,mdss-dsi-fbc-quant-error:
|
|
description: Boolean used to enable quantization error calculation.
|
|
|
|
qcom,mdss-dsi-fbc-bias:
|
|
description: >
|
|
Bias for CD.
|
|
0 = default value.
|
|
default: 0
|
|
|
|
qcom,mdss-dsi-fbc-pat-mode:
|
|
description: Boolean used to enable PAT mode.
|
|
|
|
qcom,mdss-dsi-fbc-vlc-mode:
|
|
description: Boolean used to enable VLC mode.
|
|
|
|
qcom,mdss-dsi-fbc-bflc-mode:
|
|
description: Boolean used to enable BFLC mode.
|
|
|
|
qcom,mdss-dsi-fbc-h-line-budget:
|
|
description: >
|
|
Per line extra budget.
|
|
0 = default value.
|
|
default: 0
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-fbc-budget-ctrl:
|
|
description: >
|
|
Extra budget level.
|
|
0 = default value.
|
|
default: 0
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-fbc-block-budget:
|
|
description: Per block budget.
|
|
0 = default value.
|
|
default: 0
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-fbc-lossless-threshold:
|
|
description: >
|
|
Lossless mode threshold.
|
|
0 = default value..
|
|
default: 0
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-fbc-lossy-threshold:
|
|
description: >
|
|
Lossy mode threshold.
|
|
0 = default value.
|
|
default: 0
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-fbc-rgb-threshold:
|
|
description: >
|
|
Lossy RGB threshold.
|
|
0 = default value.
|
|
default: 0
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-fbc-lossy-mode-idx:
|
|
description: >
|
|
Lossy mode index value.
|
|
0 = default value.
|
|
default: 0
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-fbc-max-pred-err:
|
|
description: >
|
|
Max quantization prediction error.
|
|
0 = default value
|
|
default: 0
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-h-back-porch:
|
|
description: >
|
|
Horizontal back porch value in pixel.
|
|
6 = default value.
|
|
default: 6
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-h-front-porch:
|
|
description: >
|
|
Horizontal front porch value in pixel.
|
|
6 = default value.
|
|
default: 6
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-h-pulse-width:
|
|
description: >
|
|
Horizontal pulse width.
|
|
2 = default value.
|
|
default: 2
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-h-sync-skew:
|
|
description: >
|
|
Horizontal sync skew value.
|
|
0 = default value.
|
|
default: 0
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-v-back-porch:
|
|
description: >
|
|
Vertical back porch value in pixel.
|
|
6 = default value.
|
|
default: 6
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-v-front-porch:
|
|
description: >
|
|
Vertical front porch value in pixel.
|
|
6 = default value.
|
|
default: 6
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-v-pulse-width:
|
|
description: >
|
|
Vertical pulse width.
|
|
2 = default value.
|
|
default: 2
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-h-left-border:
|
|
description: >
|
|
Horizontal left border in pixel.
|
|
0 = default value
|
|
default: 0
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-h-right-border:
|
|
description: >
|
|
Horizontal right border in pixel.
|
|
0 = default value
|
|
default: 0
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-v-top-border:
|
|
description: >
|
|
Vertical top border in pixel.
|
|
0 = default value
|
|
default: 0
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-v-bottom-border:
|
|
description: >
|
|
Vertical bottom border in pixel.
|
|
0 = default value
|
|
default: 0
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-underflow-color:
|
|
description: >
|
|
Specifies the controller settings for the
|
|
panel under flow color.
|
|
0xff = default value.
|
|
default: 0xff
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-border-color:
|
|
description: >
|
|
Defines the border color value if border is present.
|
|
0 = default value.
|
|
default: 0
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-panel-jitter:
|
|
description: >
|
|
Panel jitter value is expressed in terms of numerator
|
|
and denominator. It contains two u32 values - numerator
|
|
followed by denominator. The jitter configurition causes
|
|
the early wakeup if panel needs to adjust before vsync.
|
|
Default jitter value is 2.0%. Max allowed value is 10%.
|
|
$ref: /schemas/types.yaml#/definitions/uint32-array
|
|
maxItems: 2
|
|
minItems: 2
|
|
items:
|
|
- description: numerator of jitter configuration
|
|
- description: denominator of jitter configuration
|
|
|
|
qcom,dsi-wd-jitter-enable:
|
|
description: Boolean used to enable watchdog jitter in simulator panels
|
|
|
|
qcom,dsi-wd-ltj-max-jitter:
|
|
description: >
|
|
A u32 pair with numerator and denominator specifying the
|
|
maximum jitter over a long time.
|
|
$ref: /schemas/types.yaml#/definitions/uint32-array
|
|
minItems: 2
|
|
maxItems: 2
|
|
|
|
qcom,dsi-wd-ltj-time-sec:
|
|
description: A u32 value to specify the time over which the jitter increases.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-panel-prefill-lines:
|
|
description: >
|
|
An integer value defines the panel prefill lines required to
|
|
calculate the backoff time of rsc.
|
|
Default value is 16 lines. Max allowed value is vtotal.
|
|
default: 16
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-pan-enable-dynamic-fps:
|
|
description: Boolean used to enable change in frame rate dynamically.
|
|
|
|
qcom,mdss-dsi-pan-fps-update:
|
|
description: >
|
|
A string that specifies when to change the frame rate.
|
|
"dfps_suspend_resume_mode"= FPS change request is
|
|
implemented during suspend/resume.
|
|
"dfps_immediate_clk_mode" = FPS change request is
|
|
implemented immediately using DSI clocks.
|
|
"dfps_immediate_porch_mode_hfp" = FPS change request is
|
|
implemented immediately by changing panel horizontal
|
|
front porch values.
|
|
"dfps_immediate_porch_mode_vfp" = FPS change request is
|
|
implemented immediately by changing panel vertical
|
|
front porch values.
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
|
|
qcom,dsi-supported-dfps-list:
|
|
description: List containing all the supported refresh rates.
|
|
$ref: /schemas/types.yaml#/definitions/uint32-array
|
|
|
|
qcom,dsi-supported-qsync-min-fps-list:
|
|
description: >
|
|
The fps value in this list indicates the qsync min fps
|
|
corresponding to the mode in the qcom,dsi-supported-dfps-list with same index.
|
|
qcom,dsi-supported-qsync-min-fps-list cannot be defined along with
|
|
qcom,mdss-dsi-qsync-min-refresh-rate. "qcom,qsync-enable" property should be
|
|
set along with this property.
|
|
$ref: /schemas/types.yaml#/definitions/uint32-array
|
|
|
|
qcom,qsync-mode-min-refresh-rate:
|
|
description: >
|
|
This u32 property is used to define qsync min fps per timing node instead
|
|
of using same qsync min fps for different timing modes. For defining qsync min
|
|
fps per timing node, this property should be defined in all timing nodes or else
|
|
to define single qsync fps for all modes,
|
|
"qcom,mdss-dsi-qsync-min-refresh-rate" property can be used.
|
|
"qcom,qsync-enable" property should be set along with this property.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,dsi-qsync-avr-step-list:
|
|
description: >
|
|
The u32 fps values in this optional list indicate the avr step
|
|
requirement for qsync/AVR video mode panels. When a late frame is triggered,
|
|
AVR will delay the trigger to ensure the frame transfer snaps to the next step
|
|
interval. The step rate must be a common multiple of refresh and min-fps rates.
|
|
The values in this list should correspond to the dfps-list with same indeces
|
|
when DFPS is used, or a single value which applies to all rates.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,dsi-qsync-mode-avr-step-fps:
|
|
description: >
|
|
This u32 property is used to define avr step fps per timing node instead
|
|
of using same qsync avr step fps for different timing modes.
|
|
For defining avr step fps per timing node, this property should be defined
|
|
in all timing nodes or else to define single qsync avr step fps for all modes
|
|
use "qcom,mdss-dsi-qsync-avr-step-fps".
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,dsi-qsync-avr-step-fps:
|
|
description: >
|
|
A u32 entry to specify avr step rate supported by the panel.
|
|
"qcom,qsync-enable" property should be set along with this property
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-transfer-time-us-min:
|
|
description: >
|
|
Minimum supported mdp transfer time in us. This entry enables support to
|
|
dynamically set the transfer time for the given mode within the defined
|
|
range. Both min & max must be defined to enable.
|
|
qcom,mdss-dsi-transfer-time-us must be greater than this value.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-transfer-time-us-max:
|
|
description: >
|
|
Maximum supported mdp transfer time in us. This entry enables support to
|
|
dynamically set the transfer time for the given mode within the defined
|
|
range. Both min & max must be defined to enable. This time should not be
|
|
greater than vsync duration.
|
|
qcom,mdss-dsi-transfer-time-us must be less than this value.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,min-refresh-rate:
|
|
description: Minimum refresh rate supported by the panel.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,max-refresh-rate:
|
|
description: >
|
|
Maximum refresh rate supported by the panel. If max refresh
|
|
rate is not specified, then the frame rate of the panel in
|
|
qcom,mdss-dsi-panel-framerate is used.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,dsi-dyn-clk-enable:
|
|
description: >
|
|
Boolean to indicate dsi dynamic clock switch feature
|
|
is supported.
|
|
|
|
qcom,dsi-dyn-clk-type:
|
|
description: >
|
|
A string that specifies the sub-type for the dynamic
|
|
clk feature. If dyn clk type is not specified, default
|
|
value "legacy" is used.
|
|
"legacy" = FPS is not maintained after dynamic clock switch.
|
|
"constant-fps-adjust-hfp" = FPS is maintained even after
|
|
dynamic clock switch by changing panel horizontal front
|
|
porch values.
|
|
"constant-fps-adjust-vfp" = FPS is maintained even after
|
|
dynamic clock switch by changing panel vertical front
|
|
porch values.
|
|
"adjust-hfp" = Dynamic clock switch is achieved by adjusting the
|
|
horizontal front porch value according to the qcom,dsi-dyn-hfp-list.
|
|
FPS may not be maintained after the switch.
|
|
"adjust-vfp" = Dynamic clock switch is achieved by adjusting the
|
|
vertical front porch value according to the qcom,dsi-dyn-vfp-list.
|
|
FPS may not be maintatined after the switch.
|
|
This dyn-clk-type entry is an optional binding which is
|
|
contingent on the enabling of dynamic clock switch.
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
default: legacy
|
|
|
|
qcom,mdss-dsi-bl-pmic-control-type:
|
|
description: >
|
|
A string that specifies the implementation of backlight
|
|
control for this panel.
|
|
"bl_ctrl_pwm" = Backlight controlled by PWM gpio.
|
|
"bl_ctrl_wled" = Backlight controlled by WLED.
|
|
"bl_ctrl_dcs" = Backlight controlled by DCS commands.
|
|
"bl_ctrl_external" = Backlight controlled by externally
|
|
other: Unknown backlight control. (default)
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
default: other
|
|
|
|
qcom,mdss-dsi-sec-bl-pmic-control-type:
|
|
description: >
|
|
A string that specifies the implementation of backlight
|
|
control for secondary panel.
|
|
"bl_ctrl_pwm" = Backlight controlled by PWM gpio.
|
|
"bl_ctrl_wled" = Backlight controlled by WLED.
|
|
"bl_ctrl_dcs" = Backlight controlled by DCS commands.
|
|
"bl_ctrl_external" = Backlight controlled by externally
|
|
other: Unknown backlight control. (default)
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
default: other
|
|
|
|
qcom,mdss-dsi-bl-pwm-pmi:
|
|
description: Boolean to indicate that PWM control is through second pmic chip.
|
|
|
|
qcom,mdss-dsi-bl-pmic-bank-select:
|
|
description: >
|
|
LPG channel for backlight.
|
|
Required if backlight pmic control type is PWM
|
|
|
|
qcom,mdss-dsi-bl-pmic-pwm-frequency:
|
|
description: >
|
|
PWM period in microseconds.
|
|
Required if backlight pmic control type is PWM
|
|
|
|
qcom,mdss-dsi-pwm-gpio:
|
|
description: >
|
|
PMIC gpio binding to backlight.
|
|
Required if backlight pmic control type is PWM
|
|
|
|
qcom,mdss-dsi-bl-min-level:
|
|
description: >
|
|
Specifies the min backlight level supported by the panel.
|
|
0 = default value.
|
|
default: 0
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-bl-max-level:
|
|
description: >
|
|
Specifies the max backlight level supported by the panel.
|
|
255 = default value.
|
|
default: 255
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-bl-inverted-dbv:
|
|
description: >
|
|
A boolean to specify whether to invert the display brightness value.
|
|
When this boolean is set, will inverted display brightness value.
|
|
|
|
qcom,bl-dsc-cmd-state:
|
|
description: >
|
|
String that specifies the ctrl state for sending dcs brightness commands.
|
|
"dsi_hs_mode" = DSI high speed mode (default)
|
|
"dsi_lp_mode" = DSI low power mode
|
|
If the string was not set, dsi_hs_mode will be set as default mode.
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
default: dsi_hs_mode
|
|
enum: [dsi_hs_mode, dsi_lp_mode]
|
|
|
|
qcom,mdss-brightness-max-level:
|
|
description: >
|
|
Specifies the max brightness level supported.
|
|
255 = default value.
|
|
default: 255
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,bl-update-flag:
|
|
description: >
|
|
A string that specifies controls for backlight update of the panel.
|
|
"delay_until_first_frame" = Delay backlight update of the panel
|
|
until the first frame is received from the HW.
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
|
|
qcom,mdss-dsi-interleave-mode:
|
|
description: >
|
|
Specifies interleave mode.
|
|
0 = default value.
|
|
default: 0
|
|
|
|
qcom,mdss-dsi-panel-type:
|
|
description: >
|
|
Specifies the panel operating mode.
|
|
"dsi_video_mode" = enable video mode (default).
|
|
"dsi_cmd_mode" = enable command mode.
|
|
default: dsi_video_mode
|
|
|
|
qcom,5v-boost-gpio:
|
|
description: Specifies the panel gpio for display 5v boost.
|
|
|
|
qcom,mdss-dsi-te-check-enable:
|
|
description: Boolean to enable Tear Check configuration.
|
|
|
|
qcom,mdss-dsi-te-using-wd:
|
|
description: >
|
|
Boolean entry enables the watchdog timer support to generate the vsync signal
|
|
for command mode panel. By default, panel TE will be used to generate the vsync.
|
|
|
|
qcom,mdss-dsi-te-using-te-pin:
|
|
description: Boolean to specify whether using hardware vsync.
|
|
|
|
qcom,mdss-esync:
|
|
description: >
|
|
Boolean entry to enable esync. "qcom,mdss-esync-hsync-milli-pulse-width"
|
|
property should be set along with this property.
|
|
|
|
qcom,mdss-esync-milli-skew:
|
|
description: >
|
|
u32 entry to specify the skew between the esync signal and the timing
|
|
engine, in 1/1000ths of a pulse period. Example:
|
|
qcom,mdss-esync-milli-skew = <150>;
|
|
This would set the esync signal to precede the timing engine's output by
|
|
0.15 of a pulse period.
|
|
default: 0
|
|
|
|
qcom,mdss-esync-hsync-milli-pulse-width:
|
|
description: >
|
|
u32 entry to specify the pulse width of the hsync portion of the esync
|
|
signal, in 1/1000ths of a pulse period. Example:
|
|
qcom,mdss-esync-hsync-milli-pulse-width = <750>;
|
|
This would set the esync line high for 0.75 of a pulse period, every hsync.
|
|
|
|
qcom,mdss-esync-emsync-fps:
|
|
description: >
|
|
u32 entry to specify how frequently the esync signal should be modulated
|
|
with an EM pulse, in Hz.
|
|
|
|
qcom,mdss-esync-emsync-milli-pulse-width:
|
|
description: >
|
|
u32 entry to specify the pulse width of the modulated esync signal, in
|
|
1/1000ths of a pulse period. See "qcom,mdss-esync-hsync-milli-pulse-width".
|
|
|
|
qcom,qsync-enable:
|
|
description: Boolean property to indicate if qsync is enabled/disabled.
|
|
|
|
qcom,mdss-dsi-qsync-min-refresh-rate:
|
|
description: >
|
|
A u32 entry to specify minimum refresh rate supported by the panel to enable qsync feature.
|
|
"qcom,qsync-enable" property should be set along with this property.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-qsync-on-commands:
|
|
description: String that specifies the commands to enable qsync feature.
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
|
|
qcom,mdss-dsi-qsync-on-commands-state:
|
|
description: >
|
|
String that specifies the ctrl state for sending qsync on commands.
|
|
"dsi_lp_mode" = DSI low power mode (default)
|
|
"dsi_hs_mode" = DSI high speed mode
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
default: dsi_lp_mode
|
|
enum: [dsi_lp_mode, dsi_hs_mode]
|
|
|
|
qcom,mdss-dsi-qsync-off-commands:
|
|
description: String that specifies the commands to disable qsync feature.
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
|
|
qcom,mdss-dsi-qsync-off-commands-state:
|
|
description: >
|
|
String that specifies the ctrl state for sending qsync off commands.
|
|
"dsi_lp_mode" = DSI low power mode (default)
|
|
"dsi_hs_mode" = DSI high speed mode
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
default: dsi_lp_mode
|
|
enum: [dsi_lp_mode, dsi_hs_mode]
|
|
|
|
qcom,mdss-dsi-esync-post-on-commands:
|
|
description: >
|
|
List of panel resume commands that need to be sent after the esync
|
|
generator has been enabled.
|
|
Refer to "qcom,mdss-dsi-on-command" section for adding commands.
|
|
|
|
qcom,mdss-dsi-sticky_still_en-command:
|
|
description: >
|
|
Command to enable panel GRAM and write to it in video mode.
|
|
|
|
qcom,mdss-dsi-sticky_still_disable-command:
|
|
description: >
|
|
Command to disable panel GRAM in video mode.
|
|
|
|
qcom,mdss-dsi-sticky_on_fly-command:
|
|
description: >
|
|
Command to enable panel GRAM and write to it for a self refresh for
|
|
exactly one frame.
|
|
|
|
qcom,mdss-dsi-qsync-freq-step-sequence-interval:
|
|
description: >
|
|
Array of 3-value tuples that describe the value of the
|
|
"qcom,mdss-dsi-qsync-freq-step-sequence" property.
|
|
Within each tuple, first value corresponds to the type of frequency
|
|
stepping sequence (0 for normal usecase and 1 for video usecase), second
|
|
value corresponds to the starting framerate for the sequence (in mHz),
|
|
and third value corresponds to the number of steps in the sequence.
|
|
|
|
qcom,mdss-dsi-qsync-freq-step-sequence:
|
|
description: >
|
|
Array of 2-value tuples that describe the framerate and duration of a step
|
|
in a sequence.
|
|
Within each tuple, first value corresponds to the framerate for this step
|
|
in the sequence, and second value corresponds to the duration in frames
|
|
of this step.
|
|
The tuples are arranged into groups defined by the
|
|
"qcom,mdss-dsi-qsync-freq-step-sequence-interval" property, which specifies
|
|
the length of a frequency stepping sequence in steps.
|
|
|
|
qcom,mdss-dsi-freq-step-pattern1-command:
|
|
description: >
|
|
List of panel commands to indicate to the panel the beginning of the first
|
|
frequency stepping pattern, and information about that pattern.
|
|
|
|
qcom,mdss-dsi-freq-step-pattern2-command:
|
|
description: >
|
|
List of panel commands to indicate to the panel the beginning of the second
|
|
frequency stepping pattern, and information about that pattern.
|
|
|
|
qcom,mdss-dsi-freq-step-pattern3-command:
|
|
description: >
|
|
List of panel commands to indicate to the panel the beginning of the third
|
|
frequency stepping pattern, and information about that pattern.
|
|
|
|
qcom,mdss-dsi-freq-step-pattern4-command:
|
|
description: >
|
|
List of panel commands to indicate to the panel the beginning of the fourth
|
|
frequency stepping pattern, and information about that pattern.
|
|
|
|
qcom,mdss-dsi-freq-step-pattern5-command:
|
|
description: >
|
|
List of panel commands to indicate to the panel the beginning of the fifth
|
|
frequency stepping pattern, and information about that pattern.
|
|
|
|
qcom,vrr-enable:
|
|
description: >
|
|
Boolean entry that restricts the inter-vsync frame latching to discrete
|
|
boundaries.
|
|
|
|
qcom,video-psr-enable:
|
|
description: >
|
|
Boolean entry to specify that the panel supports GRAM usage in video mode.
|
|
|
|
qcom,mdss-dsi-te-pin-select:
|
|
description: >
|
|
Specifies TE operating mode.
|
|
0 = TE through embedded dcs command
|
|
1 = TE through TE gpio pin. (default)
|
|
default: 1
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
enum: [0, 1]
|
|
|
|
qcom,mdss-dsi-te-dcs-command:
|
|
description: >
|
|
Inserts the dcs command.
|
|
1 = default value.
|
|
default: 1
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-wr-mem-start:
|
|
description: >
|
|
DCS command for write_memory_start.
|
|
0x2c = default value.
|
|
default: 0x2c
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-wr-mem-continue:
|
|
description: >
|
|
DCS command for write_memory_continue.
|
|
0x3c = default value.
|
|
default: 0x3c
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-h-sync-pulse:
|
|
description: >
|
|
Specifies the pulse mode option for the panel.
|
|
0 = Don't send hsa/he following vs/ve packet(default)
|
|
1 = Send hsa/he following vs/ve packet
|
|
default: 0
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
enum: [0, 1]
|
|
|
|
qcom,mdss-dsi-hfp-power-mode:
|
|
description: >
|
|
Boolean to determine DSI lane state during
|
|
horizontal front porch (HFP) blanking period.
|
|
|
|
qcom,mdss-dsi-hbp-power-mode:
|
|
description: >
|
|
Boolean to determine DSI lane state during
|
|
horizontal back porch (HBP) blanking period.
|
|
|
|
qcom,mdss-dsi-hsa-power-mode:
|
|
description: >
|
|
Boolean to determine DSI lane state during
|
|
horizontal sync active (HSA) mode.
|
|
|
|
qcom,mdss-dsi-last-line-interleave:
|
|
description: >
|
|
Boolean to determine if last line
|
|
interleave flag needs to be enabled.
|
|
|
|
qcom,mdss-dsi-bllp-eof-power-mode:
|
|
description: >
|
|
Boolean to determine DSI lane state during
|
|
blanking low power period (BLLP) EOF mode.
|
|
|
|
qcom,mdss-dsi-bllp-power-mode:
|
|
description: >
|
|
Boolean to determine DSI lane state during
|
|
blanking low power period (BLLP) mode.
|
|
|
|
qcom,mdss-dsi-traffic-mode:
|
|
description: >
|
|
Specifies the panel traffic mode.
|
|
"non_burst_sync_pulse" = non burst with sync pulses (default).
|
|
"non_burst_sync_event" = non burst with sync start event.
|
|
"burst_mode" = burst mode.
|
|
default: non_burst_sync_pulse
|
|
enum: [non_burst_sync_pulse, non_burst_sync_event, burst_mode]
|
|
|
|
qcom,mdss-dsi-pixel-packing:
|
|
description: >
|
|
Specifies if pixel packing is used (in case of RGB666).
|
|
"tight" = Tight packing (default value).
|
|
"loose" = Loose packing.
|
|
default: tight
|
|
enum: [tight, loose]
|
|
|
|
qcom,mdss-dsi-virtual-channel-id:
|
|
description: >
|
|
Specifies the virtual channel identefier.
|
|
0 = default value.
|
|
default: 0
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-color-order:
|
|
description: >
|
|
Specifies the R, G and B channel ordering.
|
|
"rgb_swap_rgb" = DSI_RGB_SWAP_RGB (default value)
|
|
"rgb_swap_rbg" = DSI_RGB_SWAP_RBG
|
|
"rgb_swap_brg" = DSI_RGB_SWAP_BRG
|
|
"rgb_swap_grb" = DSI_RGB_SWAP_GRB
|
|
"rgb_swap_gbr" = DSI_RGB_SWAP_GBR
|
|
default: rgb_swap_rgb
|
|
enum: [rgb_swap_rgb, rgb_swap_rbg, rgb_swap_brg, rgb_swap_grb, rgb_swap_gbr]
|
|
|
|
qcom,mdss-dsi-lane-0-state:
|
|
description: Boolean that specifies whether data lane 0 is enabled.
|
|
|
|
qcom,mdss-dsi-lane-1-state:
|
|
description: Boolean that specifies whether data lane 1 is enabled.
|
|
|
|
qcom,mdss-dsi-lane-2-state:
|
|
description: Boolean that specifies whether data lane 2 is enabled.
|
|
|
|
qcom,mdss-dsi-lane-3-state:
|
|
description: Boolean that specifies whether data lane 3 is enabled.
|
|
|
|
qcom,mdss-dsi-t-clk-post:
|
|
description: >
|
|
Specifies the byte clock cycles after mode switch.
|
|
0x00 = default value.
|
|
default: 0x00
|
|
|
|
qcom,mdss-dsi-t-clk-pre:
|
|
description: >
|
|
Specifies the byte clock cycles before mode switch.
|
|
0x00 = default value.
|
|
default: 0x00
|
|
|
|
qcom,mdss-dsi-stream:
|
|
description: >
|
|
Specifies the packet stream to be used.
|
|
0 = stream 0 (default)
|
|
1 = stream 1
|
|
default: 0
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
enum: [0, 1]
|
|
|
|
qcom,mdss-dsi-mdp-trigger:
|
|
description: >
|
|
Specifies the trigger mechanism to be used for MDP path.
|
|
"none" = no trigger
|
|
"trigger_te" = Tear check signal line used for trigger
|
|
"trigger_sw" = Triggered by software (default)
|
|
"trigger_sw_te" = Software trigger and TE
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
default: trigger_sw
|
|
enum: [none, trigger_te, trigger_sw, trigger_sw_te]
|
|
|
|
qcom,mdss-dsi-dma-trigger:
|
|
description: >
|
|
Specifies the trigger mechanism to be used for DMA path.
|
|
"none" = no trigger
|
|
"trigger_te" = Tear check signal line used for trigger
|
|
"trigger_sw" = Triggered by software (default)
|
|
"trigger_sw_seof" = Software trigger and start/end of frame trigger.
|
|
"trigger_sw_te" = Software trigger and TE
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
default: trigger_sw
|
|
enum: [none, trigger_te, trigger_sw, trigger_sw_seof, trigger_sw_te]
|
|
|
|
qcom,mdss-dsi-panel-framerate:
|
|
description: >
|
|
Specifies the frame rate for the panel.
|
|
60 = 60 frames per second (default)
|
|
default: 60
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-panel-clockrate:
|
|
description: >
|
|
A 64 bit value specifies the panel clock speed in Hz.
|
|
0 = default value.
|
|
default: 0
|
|
$ref: /schemas/types.yaml#/definitions/uint64
|
|
|
|
qcom,mdss-mdp-transfer-time-us:
|
|
description: >
|
|
Specifies the dsi transfer time for command mode
|
|
panels in microseconds. Driver uses this number to adjust
|
|
the clock rate according to the expected transfer time.
|
|
Increasing this value would slow down the mdp processing
|
|
and can result in slower performance.
|
|
Decreasing this value can speed up the mdp processing,
|
|
but this can also impact power consumption.
|
|
As a rule this time should not be higher than the time
|
|
that would be expected with the processing at the
|
|
dsi link rate since anyways this would be the maximum
|
|
transfer time that could be achieved.
|
|
If ping pong split enabled, this time should not be higher
|
|
than two times the dsi link rate time.
|
|
14000 = default value.
|
|
default: 14000
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-on-command-state:
|
|
description: >
|
|
String that specifies the ctrl state for sending ON commands.
|
|
"dsi_lp_mode" = DSI low power mode (default)
|
|
"dsi_hs_mode" = DSI high speed mode
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
default: dsi_lp_mode
|
|
enum: [dsi_lp_mode, dsi_hs_mode]
|
|
|
|
qcom,mdss-dsi-off-command-state:
|
|
description: >
|
|
String that specifies the ctrl state for sending OFF commands.
|
|
"dsi_lp_mode" = DSI low power mode (default)
|
|
"dsi_hs_mode" = DSI high speed mode
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
default: dsi_lp_mode
|
|
enum: [dsi_lp_mode, dsi_hs_mode]
|
|
|
|
qcom,mdss-dsi-post-mode-switch-on-command-state:
|
|
description: >
|
|
String that specifies the ctrl state for sending ON commands post mode switch.
|
|
"dsi_lp_mode" = DSI low power mode (default)
|
|
"dsi_hs_mode" = DSI high speed mode
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
default: dsi_lp_mode
|
|
enum: [dsi_lp_mode, dsi_hs_mode]
|
|
|
|
qcom,mdss-pan-physical-width-dimension:
|
|
description: >
|
|
Specifies panel physical width in mm which corresponds
|
|
to the physical width in the framebuffer information.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-pan-physical-height-dimension:
|
|
description: >
|
|
Specifies panel physical height in mm which corresponds
|
|
to the physical height in the framebuffer information.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-panel-test-pin:
|
|
description: Specifies the panel test gpio.
|
|
|
|
qcom,mdss-dsi-mode-sel-gpio-state:
|
|
description: >
|
|
String that specifies the lcd mode for panel
|
|
(such as single-port/dual-port), if qcom,panel-mode-gpio
|
|
binding is defined in dsi controller.
|
|
"dual_port" = Set GPIO to LOW
|
|
"single_port" = Set GPIO to HIGH
|
|
"high" = Set GPIO to HIGH
|
|
"low" = Set GPIO to LOW
|
|
The default value is "dual_port".
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
default: dual_port
|
|
enum: [dual_port, single_port, high, low]
|
|
|
|
qcom,mdss-tear-check-disable:
|
|
description: >
|
|
Boolean to disable mdp tear check. Tear check is enabled by default to avoid
|
|
tearing. Other tear-check properties are ignored if this property is present.
|
|
The below tear check configuration properties can be individually tuned if
|
|
tear check is enabled.
|
|
|
|
qcom,mdss-tear-check-sync-cfg-height:
|
|
description: >
|
|
Specifies the vertical total number of lines.
|
|
The default value is 0xfff0.
|
|
default: 0xfff0
|
|
|
|
qcom,mdss-tear-check-sync-init-val:
|
|
description: >
|
|
Specifies the init value at which the read pointer gets loaded
|
|
at vsync edge. The reader pointer refers to the line number of
|
|
panel buffer that is currently being updated.
|
|
The default value is panel height.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-tear-check-sync-threshold-start:
|
|
description: >
|
|
Allows the first ROI line write to an panel when read pointer is
|
|
between the range of ROI start line and ROI start line plus this
|
|
setting.
|
|
The default value is 4.
|
|
default: 4
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-tear-check-sync-threshold-continue:
|
|
description: >
|
|
The minimum number of lines the write pointer needs to be
|
|
above the read pointer so that it is safe to write to the panel.
|
|
(This check is not done for the first ROI line write of an update)
|
|
The default value is 4.
|
|
default: 4
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-tear-check-start-pos:
|
|
description: >
|
|
Specify the y position from which the start_threshold value is
|
|
added and write is kicked off if the read pointer falls within that
|
|
region.
|
|
The default value is panel height.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-tear-check-rd-ptr-trigger-intr:
|
|
description: >
|
|
Specify the read pointer value at which an interrupt has to be
|
|
generated.
|
|
The default value is panel height + 1.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-tear-check-frame-rate:
|
|
description: >
|
|
Specify the value to be a real frame rate(fps) x 100 factor to tune the
|
|
timing of TE simulation with more precision.
|
|
The default value is 6000 with 60 fps.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qqcom,mdss-dsi-reset-sequence:
|
|
description: >
|
|
An array that lists the
|
|
sequence of reset gpio values and sleeps
|
|
Each command will have the format defined
|
|
as below:
|
|
--> Reset GPIO value
|
|
--> Sleep value (in ms)
|
|
|
|
qcom,partial-update-enabled:
|
|
description: >
|
|
String used to enable partial
|
|
panel update for command mode panels.
|
|
"none": partial update is disabled
|
|
"single_roi": default enable mode, only single roi is sent to panel
|
|
"dual_roi": two rois are merged into one big roi. Panel ddic should be able
|
|
to process two roi's along with the DCS command to send two rois.
|
|
disabled if property is not specified. This property is specified
|
|
per timing node to support resolution restrictions.
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
default: single_roi
|
|
enum: [none, single_roi, dual_roi]
|
|
|
|
qcom,mdss-dsi-horizontal-line-idle:
|
|
description: >
|
|
List of width ranges (EC - SC) in pixels indicating
|
|
additional idle time in dsi clock cycles that is needed
|
|
to compensate for smaller line width.
|
|
|
|
qcom,partial-update-roi-merge:
|
|
description: >
|
|
Boolean indicates roi combination is need
|
|
and function has been provided for dcs
|
|
2A/2B command. This property is specified per timing node to support
|
|
resolution restrictions.
|
|
|
|
qcom,dcs-cmd-by-left:
|
|
description: >
|
|
Boolean to indicate that dcs command are sent
|
|
through the left DSI controller only in a dual-dsi configuration
|
|
|
|
qcom,mdss-dsi-panel-hdr-enabled:
|
|
description: >
|
|
Boolean to indicate HDR support in panel.
|
|
|
|
qcom,mdss-dsi-panel-hdr-color-primaries:
|
|
description: >
|
|
Array of 8 unsigned integers denoting chromaticity of panel.These
|
|
values are specified in nits units. The value range is 0 through 50000.
|
|
To obtain real chromacity, these values should be divided by factor of
|
|
50000. The structure of array is defined in below order
|
|
value 1: x value of white chromaticity of display panel
|
|
value 2: y value of white chromaticity of display panel
|
|
value 3: x value of red chromaticity of display panel
|
|
value 4: y value of red chromaticity of display panel
|
|
value 5: x value of green chromaticity of display panel
|
|
value 6: y value of green chromaticity of display panel
|
|
value 7: x value of blue chromaticity of display panel
|
|
value 8: y value of blue chromaticity of display panel
|
|
$ref: /schemas/types.yaml#/definitions/uint32-array
|
|
minimum: 0
|
|
maximum: 50000
|
|
items:
|
|
- description: x value of white chromaticity of display panel
|
|
- description: y value of white chromaticity of display panel
|
|
- description: x value of red chromaticity of display panel
|
|
- description: y value of red chromaticity of display panel
|
|
- description: x value of green chromaticity of display panel
|
|
- description: y value of green chromaticity of display panel
|
|
- description: x value of blue chromaticity of display panel
|
|
- description: y value of blue chromaticity of display panel
|
|
|
|
qcom,mdss-dsi-panel-peak-brightness:
|
|
description: >
|
|
Maximum brightness supported by panel.In absence of maximum value
|
|
typical value becomes peak brightness. Value is specified in nits units.
|
|
To obtain real peak brightness, this value should be divided by factor of
|
|
10000.
|
|
|
|
qcom,mdss-dsi-panel-blackness-level:
|
|
description: >
|
|
Blackness level supported by panel. Blackness level is defined as
|
|
ratio of peak brightness to contrast. Value is specified in nits units.
|
|
To obtain real blackness level, this value should be divided by factor of
|
|
10000.
|
|
|
|
qcom,mdss-dsi-lp11-init:
|
|
description: >
|
|
Boolean used to enable the DSI clocks and data lanes (low power 11)
|
|
before issuing hardware reset line.
|
|
|
|
qcom,mdss-dsi-init-delay-us:
|
|
description: >
|
|
Delay in microseconds(us) before performing any DSI activity in lp11
|
|
mode. This master delay (t_init_delay as per DSI spec) should be sum
|
|
of DSI internal delay to reach fuctional after power up and minimum
|
|
delay required by panel to reach functional.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-rx-eot-ignore:
|
|
description: Boolean used to enable ignoring end of transmission packets.
|
|
|
|
qcom,mdss-dsi-tx-eot-append:
|
|
description: Boolean used to enable appending end of transmission packets.
|
|
|
|
qcom,ulps-enabled:
|
|
description: Boolean to enable support for Ultra Low Power State (ULPS) mode.
|
|
|
|
qcom,suspend-ulps-enabled:
|
|
description: Boolean to enable support for ULPS mode for panels during suspend state.
|
|
|
|
qcom,spr-pack-type:
|
|
description: >
|
|
String to specify the SPR pack type of panel pixel layout
|
|
Expected string for the pack types supported by MDSS are,
|
|
"pentile", "rgbw", "yygm", "yygw"
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
|
|
qcom,panel-roi-alignment:
|
|
description: |
|
|
Specifies the panel ROI alignment restrictions on its
|
|
left, top, width, height alignments and minimum width and
|
|
height values. This property is specified per timing node to support
|
|
resolution's alignment restrictions.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,esd-check-enabled:
|
|
description: Boolean used to enable ESD recovery feature.
|
|
|
|
qcom,mdss-dsi-panel-status-command:
|
|
description: >
|
|
A byte stream formed by multiple dcs packets based on
|
|
qcom dsi controller protocol, to read the panel status.
|
|
This value is used to kick in the ESD recovery.
|
|
byte 0: dcs data type
|
|
byte 1: Unused
|
|
byte 2: virtual channel number
|
|
byte 3: expect ack from client (dcs read command)
|
|
byte 4: wait number of specified ms after dcs command
|
|
transmitted
|
|
byte 5, 6: 16 bits length in network byte order
|
|
byte 7 and beyond: number byte of payload
|
|
|
|
qcom,mdss-dsi-panel-status-command-mode:
|
|
description: >
|
|
String that specifies the ctrl state for reading the panel status.
|
|
"dsi_lp_mode" = DSI low power mode
|
|
"dsi_hs_mode" = DSI high speed mode
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
enum: [dsi_lp_mode, dsi_hs_mode]
|
|
|
|
qcom,mdss-dsi-lp1-command:
|
|
description: >
|
|
An optional byte stream to request low
|
|
power mode on a panel
|
|
|
|
qcom,mdss-dsi-lp1-command-mode:
|
|
description: >
|
|
String that specifies the ctrl state for
|
|
setting the panel power mode.
|
|
"dsi_lp_mode" = DSI low power mode
|
|
"dsi_hs_mode" = DSI high speed mode
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
enum: [dsi_lp_mode, dsi_hs_mode]
|
|
|
|
qcom,mdss-dsi-lp2-command:
|
|
description: >
|
|
An optional byte stream to request ultra
|
|
low power mode on a panel
|
|
|
|
qcom,mdss-dsi-lp2-command-mode:
|
|
description: >
|
|
String that specifies the ctrl state for
|
|
setting the panel power mode.
|
|
"dsi_lp_mode" = DSI low power mode
|
|
"dsi_hs_mode" = DSI high speed mode
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
enum: [dsi_lp_mode, dsi_hs_mode]
|
|
|
|
qcom,mdss-dsi-nolp-command:
|
|
description: An optional byte stream to disable low power and ultra low power panel modes
|
|
|
|
qcom,mdss-dsi-nolp-command-mode:
|
|
description: >
|
|
String that specifies the ctrl state for
|
|
setting the panel power mode.
|
|
"dsi_lp_mode" = DSI low power mode
|
|
"dsi_hs_mode" = DSI high speed mode
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
enum: [dsi_lp_mode, dsi_hs_mode]
|
|
|
|
qcom,mdss-dsi-panel-status-check-mode:
|
|
description: >
|
|
Specifies the panel status check method for ESD recovery.
|
|
"bta_check" = Uses BTA to check the panel status
|
|
"reg_read" = Reads panel status register to check the panel status
|
|
"reg_read_nt35596" = Reads panel status register to check the panel
|
|
status for NT35596 panel.
|
|
"te_signal_check" = Uses TE signal behaviour to check the panel status
|
|
enum: [bta_check, reg_read, reg_read_nt35596, te_signal_check]
|
|
|
|
qcom,mdss-dsi-panel-status-read-length:
|
|
description: >
|
|
Integer array that specify the expected read-back length of values
|
|
for each of panel registers. Each length is corresponding to number of
|
|
returned parameters of register introduced in specification.
|
|
$ref: /schemas/types.yaml#/definitions/uint32-array
|
|
|
|
qcom,mdss-dsi-panel-status-valid-params:
|
|
description: >
|
|
Integer array that specify the valid returned values which need to check
|
|
for each of register.
|
|
Some panel need only check the first few values returned from panel.
|
|
So: if this property is the same to qcom,mdss-dsi-panel-status-read-length,
|
|
then just ignore this one.
|
|
$ref: /schemas/types.yaml#/definitions/uint32-array
|
|
|
|
qcom,mdss-dsi-panel-status-value:
|
|
description: >
|
|
Multiple integer arrays, each specifies the values of the panel status register
|
|
which is used to check the panel status. The size of each array is the sum of
|
|
length specified in qcom,mdss-dsi-panel-status-read-length, and must be equal.
|
|
This can cover that Some panel may return several alternative values.
|
|
|
|
qcom,mdss-dsi-panel-max-error-count:
|
|
description: >
|
|
Integer value that specifies the maximum number of errors from register
|
|
read that can be ignored before treating that the panel has gone bad.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,dynamic-mode-switch-enabled:
|
|
description: >
|
|
Boolean used to mention whether panel supports
|
|
dynamic switching from video mode to command mode
|
|
and vice versa.
|
|
|
|
qcom,dynamic-mode-switch-type:
|
|
description: >
|
|
A string specifies how to perform dynamic mode switch.
|
|
If qcom,dynamic-mode-switch-enabled is set and no string specified, default value is
|
|
dynamic-switch-suspend-resume.
|
|
"dynamic-switch-suspend-resume"= Switch using suspend/resume. Panel will
|
|
go blank during transition.
|
|
"dynamic-switch-immediate"= Switch on next frame update. Panel will
|
|
not go blank for this transition.
|
|
"dynamic-resolution-switch-immediate"= Switch the panel resolution. Panel will
|
|
not go blank for this transition.
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
|
|
qcom,mdss-dsi-post-mode-switch-on-command:
|
|
description: >
|
|
Multiple dcs packets used for turning on DSI panel
|
|
after panel has switch modes.
|
|
Refer to "qcom,mdss-dsi-on-command" section for adding commands.
|
|
|
|
qcom,cmd-mode-switch-out-commands:
|
|
description: >
|
|
List of commands that need to be sent
|
|
to panel in order to switch out command mode dynamically.
|
|
Refer to "qcom,mdss-dsi-on-command" section for adding commands.
|
|
|
|
qcom,cmd-mode-switch-out-commands-state:
|
|
description: >
|
|
String that specifies the ctrl state for sending command mode switch out
|
|
commands.
|
|
"dsi_lp_mode" = DSI low power mode (default)
|
|
"dsi_hs_mode" = DSI high speed mode
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
default: dsi_lp_mode
|
|
enum: [dsi_lp_mode, dsi_hs_mode]
|
|
|
|
qcom,cmd-mode-switch-in-commands:
|
|
description: >
|
|
List of commands that need to be sent
|
|
to panel in order to switch in command mode dynamically.
|
|
Refer to "qcom,mdss-dsi-on-command" section for adding commands.
|
|
|
|
qcom,cmd-mode-switch-in-commands-state:
|
|
description: >
|
|
String that specifies the ctrl state for sending command mode switch in
|
|
commands.
|
|
"dsi_lp_mode" = DSI low power mode (default)
|
|
"dsi_hs_mode" = DSI high speed mode
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
default: dsi_lp_mode
|
|
enum: [dsi_lp_mode, dsi_hs_mode]
|
|
|
|
qcom,video-mode-switch-out-commands:
|
|
description: >
|
|
List of commands that need to be sent
|
|
to panel in order to switch out video mode dynamically.
|
|
Refer to "qcom,mdss-dsi-on-command" section for adding commands.
|
|
|
|
qcom,video-mode-switch-out-commands-state:
|
|
description: >
|
|
String that specifies the ctrl state for sending video mode switch out
|
|
commands.
|
|
"dsi_lp_mode" = DSI low power mode (default)
|
|
"dsi_hs_mode" = DSI high speed mode
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
default: dsi_lp_mode
|
|
enum: [dsi_lp_mode, dsi_hs_mode]
|
|
|
|
qcom,video-mode-switch-in-commands:
|
|
description: >
|
|
List of commands that need to be sent
|
|
to panel in order to switch in video mode dynamically.
|
|
Refer to "qcom,mdss-dsi-on-command" section for adding commands.
|
|
|
|
qcom,video-mode-switch-in-commands-state:
|
|
description: >
|
|
String that specifies the ctrl state for sending video mode switch in
|
|
commands.
|
|
"dsi_lp_mode" = DSI low power mode (default)
|
|
"dsi_hs_mode" = DSI high speed mode
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
default: dsi_lp_mode
|
|
enum: [dsi_lp_mode, dsi_hs_mode]
|
|
|
|
qcom,send-pps-before-switch:
|
|
description: >
|
|
Boolean propety to indicate when PPS commands should be sent,
|
|
either before or after switch commands during dynamic resolution
|
|
switch in DSC panels. If the property is not present, the default
|
|
behavior is to send PPS commands after the switch commands.
|
|
|
|
qcom,mdss-dsi-panel-orientation:
|
|
description: >
|
|
String used to indicate orientation of panel
|
|
"180" = panel is flipped in both horizontal and vertical directions
|
|
"hflip" = panel is flipped in horizontal direction
|
|
"vflip" = panel is flipped in vertical direction
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
|
|
qcom,panel-ack-disabled:
|
|
description: >
|
|
A boolean property to indicate, whether we need to wait for any ACK from the panel
|
|
for any commands that we send.
|
|
|
|
qcom,mdss-dsi-force-clock-lane-hs:
|
|
description: Boolean to force dsi clock lanes to HS mode always.
|
|
|
|
qcom,panel-cphy-mode:
|
|
description: Boolean to specify whether panel is using cphy.
|
|
|
|
qcom,compression-mode:
|
|
description: >
|
|
Select compression mode for panel.
|
|
"fbc" - frame buffer compression
|
|
"dsc" - display stream compression.
|
|
"vdc" - VESA display compression.
|
|
If "dsc" or "vdc" compression is used then config subnodes needs to be defined.
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
|
|
qcom,panel-supply-entries:
|
|
description: >
|
|
A node that lists the elements of the supply used to
|
|
power the DSI panel. There can be more than one instance
|
|
of this binding, in which case the entry would be appended
|
|
with the supply entry index. For a detailed description of
|
|
fields in the supply entry, refer to the qcom,ctrl-supply-entries
|
|
binding above.
|
|
|
|
qcom,mdss-dsc-version:
|
|
description: >
|
|
An 8 bit value indicates the DSC version supported by panel. Bits[0.3]
|
|
provides information about minor version while Bits[4.7] provides
|
|
major version information. It supports only DSC rev 1(Major).1(Minor)
|
|
right now.
|
|
|
|
qcom,mdss-dsc-scr-version:
|
|
description: >
|
|
Each DSC version can have multiple SCR. This 8 bit value indicates
|
|
current SCR revision information supported by panel.
|
|
|
|
qcom,mdss-dsc-encoders:
|
|
description: >
|
|
An integer value indicating how many DSC encoders should be used
|
|
to drive data stream to DSI.
|
|
Default value is 1 and max value is 2.
|
|
2 encoder should be used only if qcom,mdss-lm-split or
|
|
qcom,split-mode with pingpong-split is used.
|
|
default: 1
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
enum: [1, 2]
|
|
|
|
qcom,mdss-dsc-slice-height:
|
|
description: An integer value indicates the dsc slice height.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsc-slice-width:
|
|
description: >
|
|
An integer value indicates the dsc slice width.
|
|
Multiple of slice width should be equal to panel-width.
|
|
Maximum 2 slices per DSC encoder can be used so if 2 DSC encoders
|
|
are used then minimum slice width is equal to panel-width/4.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsc-slice-per-pkt:
|
|
description: An integer value indicates the slice per dsi packet.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsc-bit-per-component:
|
|
description: An integer value indicates the bits per component before compression.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsc-bit-per-pixel:
|
|
description: An integer value indicates the bits per pixel after compression.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsc-block-prediction-enable:
|
|
description: A boolean value to enable/disable the block prediction at decoder.
|
|
|
|
qcom,mdss-dsc-rc-override_v1:
|
|
description: A boolean value to enable override rc_range_bpg_ofs in sde_dsc_rc_range_bpg_override_v1.
|
|
|
|
qcom,mdss-dsc-config-by-manufacture-cmd:
|
|
description: >
|
|
A boolean to indicates panel use manufacture command to setup pps
|
|
instead of standard dcs type 0x0A.
|
|
|
|
qcom,vdc-version:
|
|
description: >
|
|
An 8 bit value indicates the VDC version supported by panel. Bits[0.3]
|
|
provides information about minor version while Bits[4.7] provides
|
|
major version information. It supports only VDC rev 1(Major).2(Minor)
|
|
right now.
|
|
|
|
qqcom,vdc-version-release:
|
|
description: An 8 bit value indicated VDC version release. This has to be set to 0.
|
|
const: 0
|
|
|
|
qcom,vdc-slice-height:
|
|
description: An u32 value which indicates slice height. This should be at least 16 lines.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,vdc-slice-width:
|
|
description: >
|
|
An u32 value which indicates slice width. This should be at least 64 pixels and
|
|
should also be a multiple of 8
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,vdc-slice-per-pkt:
|
|
description: An u32 value indicates the slice per dsi packet.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,vdc-bit-per-component:
|
|
description: An u32 value indicates the bits per component before compression.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,vdc-bit-per-pixel:
|
|
description: An u32 value indicates the bits per pixel after compression.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,src-color-space:
|
|
description: >
|
|
An u32 value indicating the source color space. It can either be RGB or YUV.
|
|
Default value is assumed to be RGB
|
|
0 - RGB
|
|
1 - YUV
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
default: 0
|
|
enum: [0,1]
|
|
|
|
qcom,src-chroma-format:
|
|
description: >
|
|
An u32 value indicating the source color space. It can either be 444, 420 or 422.
|
|
Default value is assumed to be 444
|
|
0 - 444
|
|
1 - 422
|
|
2 - 420
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
default: 0
|
|
enum: [0, 1, 2]
|
|
|
|
qcom,mdss-pps-delay-ms:
|
|
description: >
|
|
An u32 value that indicates post PPS command
|
|
delay in milliseconds. If no value is specified, it chooses zero by default.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,display-topology:
|
|
description: >
|
|
Array of u32 values which specifies the list of topologies available
|
|
for the display. A display topology is defined by a
|
|
set of 3 values in the order:
|
|
- number of mixers
|
|
- number of compression encoders
|
|
- number of interfaces
|
|
Therefore, the array should always contain a tuple of 3 elements.
|
|
$ref: /schemas/types.yaml#/definitions/uint32-array
|
|
minItems: 3
|
|
maxItems: 3
|
|
items:
|
|
- description: number of mixers
|
|
- description: number of compression encoders
|
|
- description: number of interfaces
|
|
|
|
qcom,default-topology-index:
|
|
description: >
|
|
An u32 value which indexes the topology set
|
|
specified by the node "qcom,display-topology"
|
|
to identify the default topology for the
|
|
display. The first set is indexed by the
|
|
value 0.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-ext-bridge-mode:
|
|
description: External bridge chip is connected instead of panel.
|
|
|
|
qcom,mdss-dsi-dma-schedule-line:
|
|
description: >
|
|
An integer value indicates the line number after vertical active
|
|
region for video mode panels and line number after TE for command mode
|
|
panels, at which command DMA needs to be triggered.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-dma-schedule-window:
|
|
description: >
|
|
An integer value indicates the width of the DMA window during which a
|
|
DCS command will be triggered for command mode panels
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-mdp-idle-ctrl-en:
|
|
description: >
|
|
A boolean to enable LP11 insertion after transmission of every line.
|
|
This requires command mdp burst mode to be disabled.
|
|
|
|
qcom,mdss-dsi-mdp-idle-ctrl-len:
|
|
description: >
|
|
An u32 value indicating the number of dsi pclk cycles of idle time
|
|
to insert between command mode mdp packets. This time must be long
|
|
enough to cover the time link takes to switch between HS to LP11 mode.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,vert-padding-value:
|
|
description: >
|
|
An u32 value indicating the second display height while using two displays
|
|
in shared display feature.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,dba-panel:
|
|
description: >
|
|
Indicates whether the current panel is used as a display bridge
|
|
to a non-DSI interface.
|
|
|
|
qcom,bridge-name:
|
|
description: >
|
|
A string to indicate the name of the bridge chip connected to DSI. qcom,bridge-name
|
|
is required if qcom,dba-panel is defined for the panel.
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
|
|
qcom,adjust-timer-wakeup-ms:
|
|
description: >
|
|
An integer value to indicate the timer delay(in ms) to accommodate
|
|
s/w delay while configuring the event timer wakeup logic.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
qcom,mdss-dsi-display-timings:
|
|
description: >
|
|
Parent node that lists the different resolutions that the panel supports.
|
|
Each child represents timings settings for a specific resolution.
|
|
|
|
qcom,mdss-dsi-post-init-delay:
|
|
description: >
|
|
Specifies required number of frames to wait so that panel can be functional
|
|
to show proper display.
|
|
|
|
qcom,mdss-dsi-video-mode:
|
|
description: A boolean to indicates current timing can only work in video mode.
|
|
|
|
qcom,mdss-dsi-cmd-mode:
|
|
description: A boolean to indicates current timing can only work in command mode.
|
|
|
|
# Additional properties added to the second level nodes that represent timings properties:
|
|
|
|
qcom,mdss-dsi-timing-default:
|
|
description: >
|
|
Property that specifies the current child as the default
|
|
timing configuration that will be used.
|
|
|
|
qcom,mdss-dsi-timing-switch-command:
|
|
description: >
|
|
List of commands that need to be sent
|
|
to panel when the resolution/timing switch happens dynamically.
|
|
Refer to "qcom,mdss-dsi-on-command" section for adding commands.
|
|
|
|
qcom,mdss-dsi-timing-switch-command-state:
|
|
description: >
|
|
String that specifies the ctrl state for sending resolution switch
|
|
commands.
|
|
"dsi_lp_mode" = DSI low power mode (default)
|
|
"dsi_hs_mode" = DSI high speed mode
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
default: dsi_lp_mode
|
|
enum: [dsi_lp_mode, dsi_hs_mode]
|
|
|
|
qcom,dsi-dyn-clk-list:
|
|
description: >
|
|
An u32 array of all the supported dsi bit clock
|
|
frequencies in Hz for the given mode, listed in
|
|
order of preference.
|
|
$ref: /schemas/types.yaml#/definitions/uint32-array
|
|
|
|
qcom,dsi-dyn-clk-hfp-list:
|
|
description: >
|
|
An u32 array of horizontal front porch values corresponding to the
|
|
dsi bit clock frequencies in qcom,dsi-dyn-clk-list for the given mode.
|
|
This property is essential for the adjust-hfp dynamic clock type,
|
|
which is used for specific horizontal porch adjustments when maintaining
|
|
a constant frame rate is not required.
|
|
$ref: /schemas/types.yaml#/definitions/uint32-array
|
|
|
|
qcom,dsi-dyn-clk-vfp-list:
|
|
description: >
|
|
An u32 array of vertical front porch values corresponding to the
|
|
dsi bit clock frequencies in qcom,dsi-dyn-clk-list for the given mode.
|
|
This property is essential for the adjust-vfp dynamic clock type,
|
|
which is used for specific horizontal porch adjustments when maintaining
|
|
a constant frame rate is not required.
|
|
$ref: /schemas/types.yaml#/definitions/uint32-array
|
|
|
|
qcom,disable-rsc-solver:
|
|
description: >
|
|
Timing node property to dynamically disable RSC solver for
|
|
high FPS usecase due to lower bitclk rate.
|
|
|
|
required:
|
|
- compatible
|
|
- status
|
|
- qcom,mdss-dsi-panel-controller
|
|
- qcom,mdss-dsi-panel-width
|
|
- qcom,mdss-dsi-panel-height
|
|
- qcom,mdss-dsi-bpp
|
|
- qcom,mdss-dsi-panel-destination
|
|
- qcom,mdss-dsi-panel-timings
|
|
- qcom,mdss-dsi-panel-timings-8996
|
|
- qcom,mdss-dsi-on-command
|
|
- qcom,mdss-dsi-off-command
|
|
- qcom,mdss-dsi-post-panel-on-command
|
|
- qcom,platform-reset-gpio
|
|
|
|
if:
|
|
properties:
|
|
contains:
|
|
const: bl_ctrl_pwm
|
|
then:
|
|
required:
|
|
- qcom,mdss-dsi-bl-pmic-bank-select
|
|
- qcom,mdss-dsi-bl-pmic-pwm-frequency
|
|
- qcom,mdss-dsi-pwm-gpio
|
|
|
|
examples:
|
|
- |
|
|
&mdss_mdp {
|
|
dsi_sim_vid: qcom,mdss_dsi_sim_video {
|
|
qcom,mdss-dsi-panel-name = "simulator video mode dsi panel";
|
|
qcom,mdss-dsi-panel-controller = <&mdss_dsi0>;
|
|
qcom,mdss-dsi-panel-height = <1280>;
|
|
qcom,mdss-dsi-panel-width = <720>;
|
|
qcom,mdss-dsi-bpp = <24>;
|
|
qcom,mdss-dsi-pixel-packing = <0>;
|
|
qcom,mdss-dsi-panel-destination = "display_1";
|
|
qcom,cmd-sync-wait-broadcast;
|
|
qcom,mdss-dsi-fbc-enable;
|
|
qcom,mdss-dsi-panel-mode-switch;
|
|
qcom,poms-align-panel-vsync;
|
|
qcom,mdss-dsi-bpp-switch;
|
|
qcom,mdss-dsi-fbc-slice-height = <5>;
|
|
qcom,mdss-dsi-fbc-2d-pred-mode;
|
|
qcom,mdss-dsi-fbc-ver2-mode;
|
|
qcom,mdss-dsi-fbc-bpp = <0>;
|
|
qcom,mdss-dsi-fbc-packing = <0>;
|
|
qcom,mdss-dsi-fbc-quant-error;
|
|
qcom,mdss-dsi-fbc-bias = <0>;
|
|
qcom,mdss-dsi-fbc-pat-mode;
|
|
qcom,mdss-dsi-fbc-vlc-mode;
|
|
qcom,mdss-dsi-fbc-bflc-mode;
|
|
qcom,mdss-dsi-fbc-h-line-budget = <0>;
|
|
qcom,mdss-dsi-fbc-budget-ctrl = <0>;
|
|
qcom,mdss-dsi-fbc-block-budget = <0>;
|
|
qcom,mdss-dsi-fbc-lossless-threshold = <0>;
|
|
qcom,mdss-dsi-fbc-lossy-threshold = <0>;
|
|
qcom,mdss-dsi-fbc-rgb-threshold = <0>;
|
|
qcom,mdss-dsi-fbc-lossy-mode-idx = <0>;
|
|
qcom,mdss-dsi-fbc-max-pred-err = <2>;
|
|
qcom,mdss-dsi-h-front-porch = <140>;
|
|
qcom,mdss-dsi-h-back-porch = <164>;
|
|
qcom,mdss-dsi-h-pulse-width = <8>;
|
|
qcom,mdss-dsi-h-sync-skew = <0>;
|
|
qcom,mdss-dsi-v-back-porch = <6>;
|
|
qcom,mdss-dsi-v-front-porch = <1>;
|
|
qcom,mdss-dsi-v-pulse-width = <1>;
|
|
qcom,mdss-dsi-h-left-border = <0>;
|
|
qcom,mdss-dsi-h-right-border = <0>;
|
|
qcom,mdss-dsi-v-top-border = <0>;
|
|
qcom,mdss-dsi-v-bottom-border = <0>;
|
|
qcom,mdss-dsi-border-color = <0>;
|
|
qcom,mdss-dsi-underflow-color = <0xff>;
|
|
qcom,mdss-dsi-bl-min-level = <1>;
|
|
qcom,mdss-dsi-bl-max-level = < 15>;
|
|
qcom,mdss-brightness-max-level = <255>;
|
|
qcom,bl-update-flag = "delay_until_first_frame";
|
|
qcom,spr-pack-type = "pentile";
|
|
qcom,mdss-dsi-interleave-mode = <0>;
|
|
qcom,mdss-dsi-panel-type = "dsi_video_mode";
|
|
qcom,mdss-dsi-te-check-enable;
|
|
qcom,mdss-dsi-te-using-wd;
|
|
qcom,mdss-dsi-te-using-te-pin;
|
|
qcom,qsync-enable;
|
|
qcom,mdss-dsi-qsync-min-refresh-rate = <30>;
|
|
qcom,mdss-dsi-te-dcs-command = <1>;
|
|
qcom,mdss-dsi-wr-mem-continue = <0x3c>;
|
|
qcom,mdss-dsi-wr-mem-start = <0x2c>;
|
|
qcom,mdss-dsi-te-pin-select = <1>;
|
|
qcom,mdss-dsi-h-sync-pulse = <1>;
|
|
qcom,mdss-dsi-hfp-power-mode;
|
|
qcom,mdss-dsi-hbp-power-mode;
|
|
qcom,mdss-dsi-hsa-power-mode;
|
|
qcom,mdss-dsi-bllp-eof-power-mode;
|
|
qcom,mdss-dsi-bllp-power-mode;
|
|
qcom,mdss-dsi-last-line-interleave;
|
|
qcom,mdss-dsi-traffic-mode = <0>;
|
|
qcom,mdss-dsi-virtual-channel-id = <0>;
|
|
qcom,mdss-dsi-color-order = <0>;
|
|
qcom,mdss-dsi-lane-0-state;
|
|
qcom,mdss-dsi-lane-1-state;
|
|
qcom,mdss-dsi-lane-2-state;
|
|
qcom,mdss-dsi-lane-3-state;
|
|
qcom,mdss-dsi-t-clk-post = <0x20>;
|
|
qcom,mdss-dsi-t-clk-pre = <0x2c>;
|
|
qcom,mdss-dsi-stream = <0>;
|
|
qcom,mdss-dsi-mdp-trigger = <0>;
|
|
qcom,mdss-dsi-dma-trigger = <0>;
|
|
qcom,mdss-dsi-panel-framerate = <60>;
|
|
qcom,mdss-dsi-panel-timings = [7d 25 1d 00 37 33
|
|
22 27 1e 03 04 00];
|
|
qcom,mdss-dsi-panel-timings-8996 = [23 20 06 09 05 03 04 a0
|
|
23 20 06 09 05 03 04 a0
|
|
23 20 06 09 05 03 04 a0
|
|
23 20 06 09 05 03 04 a0
|
|
23 2e 06 08 05 03 04 a0];
|
|
qcom,mdss-dsi-on-command = [32 01 00 00 00 00 02 00 00
|
|
29 01 00 00 10 00 02 FF 99];
|
|
qcom,mdss-dsi-on-command-state = "dsi_lp_mode";
|
|
qcom,mdss-dsi-off-command = [22 01 00 00 00 00 00];
|
|
qcom,mdss-dsi-off-command-state = "dsi_hs_mode";
|
|
qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_wled";
|
|
qcom,mdss-dsi-pan-enable-dynamic-fps;
|
|
qcom,mdss-dsi-pan-fps-update = "dfps_suspend_resume_mode";
|
|
qcom,dsi-supported-dfps-list = <30 45 60>;
|
|
qcom,dsi-supported-qsync-min-fps-list = <30 40 55>;
|
|
qcom,dsi-qsync-avr-step-list = <0 360 660>;
|
|
qcom,dsi-qsync-avr-step-fps = <360>;
|
|
qcom,min-refresh-rate = <30>;
|
|
qcom,max-refresh-rate = <60>;
|
|
qcom,mdss-dsi-bl-pmic-bank-select = <0>;
|
|
qcom,mdss-dsi-bl-pmic-pwm-frequency = <0>;
|
|
qcom,mdss-dsi-pwm-gpio = <&pm8941_mpps 5 0>;
|
|
qcom,5v-boost-gpio = <&pm8994_gpios 14 0>;
|
|
qcom,mdss-pan-physical-width-dimension = <60>;
|
|
qcom,mdss-pan-physical-height-dimension = <140>;
|
|
qcom,mdss-dsi-mode-sel-gpio-state = "dsc_mode";
|
|
qcom,mdss-tear-check-sync-cfg-height = <0xfff0>;
|
|
qcom,mdss-tear-check-sync-init-val = <1280>;
|
|
qcom,mdss-tear-check-sync-threshold-start = <4>;
|
|
qcom,mdss-tear-check-sync-threshold-continue = <4>;
|
|
qcom,mdss-tear-check-start-pos = <1280>;
|
|
qcom,mdss-tear-check-rd-ptr-trigger-intr = <1281>;
|
|
qcom,mdss-tear-check-frame-rate = <6000>;
|
|
qcom,mdss-dsi-reset-sequence = <1 2>, <0 10>, <1 10>;
|
|
qcom,dcs-cmd-by-left;
|
|
qcom,mdss-dsi-lp11-init;
|
|
qcom,mdss-dsi-init-delay-us = <100>;
|
|
mdss-dsi-rx-eot-ignore;
|
|
mdss-dsi-tx-eot-append;
|
|
qcom,ulps-enabled;
|
|
qcom,suspend-ulps-enabled;
|
|
qcom,mdss-esync;
|
|
qcom,mdss-esync-milli-skew = <150>;
|
|
qcom,mdss-esync-hsync-milli-pulse-width = <750>;
|
|
qcom,mdss-esync-emsync-fps = <240>;
|
|
qcom,mdss-esync-emsync-milli-pulse-width = <300>;
|
|
qcom,qsync-enable;
|
|
qcom,vrr-enable;
|
|
qcom,video-psr-enable;
|
|
qcom,dsi-qsync-avr-step-fps = <240>;
|
|
qcom,mdss-dsi-qsync-min-refresh-rate = <60>;
|
|
qcom,esd-check-enabled;
|
|
qcom,mdss-dsi-panel-status-command = [06 01 00 01 05 00 02 0A 08];
|
|
qcom,mdss-dsi-panel-status-command-state = "dsi_lp_mode";
|
|
qcom,mdss-dsi-panel-status-check-mode = "reg_read";
|
|
qcom,mdss-dsi-panel-status-read-length = <8>;
|
|
qcom,mdss-dsi-panel-max-error-count = <3>;
|
|
qcom,mdss-dsi-panel-status-value = <0x1c 0x00 0x05 0x02 0x40 0x84 0x06 0x01>;
|
|
qcom,dynamic-mode-switch-enabled;
|
|
qcom,dynamic-mode-switch-type = "dynamic-switch-immediate";
|
|
qcom,mdss-dsi-post-mode-switch-on-command = [32 01 00 00 00 00 02 00 00
|
|
29 01 00 00 10 00 02 B0 03];
|
|
qcom,video-to-cmd-mode-switch-commands = [15 01 00 00 00 00 02 C2 0B
|
|
15 01 00 00 00 00 02 C2 08];
|
|
qcom,cmd-to-video-mode-switch-commands = [15 01 00 00 00 00 02 C2 03];
|
|
qcom,send-pps-before-switch;
|
|
qcom,panel-ack-disabled;
|
|
qcom,mdss-dsi-horizontal-line-idle = <0 40 256>,
|
|
<40 120 128>,
|
|
<128 240 64>;
|
|
qcom,mdss-dsi-panel-orientation = "180"
|
|
qcom,mdss-dsi-panel-jitter = <0x8 0x10>;
|
|
qcom,mdss-dsi-panel-prefill-lines = <0x10>;
|
|
qcom,mdss-dsi-force-clock-lane-hs;
|
|
qcom,compression-mode = "dsc";
|
|
qcom,mdss-dsc-rc-override_v1;
|
|
qcom,adjust-timer-wakeup-ms = <1>;
|
|
qcom,platform-reset-gpio = <&tlmm 0 0>;
|
|
|
|
qcom,dsi-dyn-clk-enable;
|
|
qcom,dsi-dyn-clk-type = "adjust-hfp";
|
|
|
|
qcom,mdss-dsi-display-timings {
|
|
wqhd {
|
|
cell-index = <0>;
|
|
qcom,mdss-dsi-cmd-mode;
|
|
qcom,mdss-dsi-video-mode;
|
|
qcom,mdss-dsi-bpp-mode = <24>;
|
|
qcom,mdss-dsi-timing-default;
|
|
qcom,mdss-dsi-panel-width = <720>;
|
|
qcom,mdss-dsi-panel-height = <2560>;
|
|
qcom,mdss-dsi-h-front-porch = <20>;
|
|
qcom,mdss-dsi-h-back-porch = <8>;
|
|
qcom,mdss-dsi-h-pulse-width = <8>;
|
|
qcom,mdss-dsi-h-sync-skew = <0>;
|
|
qcom,mdss-dsi-v-back-porch = <4>;
|
|
qcom,mdss-dsi-v-front-porch = <728>;
|
|
qcom,mdss-dsi-v-pulse-width = <4>;
|
|
qcom,mdss-dsi-panel-framerate = <60>;
|
|
qcom,mdss-dsi-panel-clockrate = <424000000>;
|
|
qcom,mdss-mdp-transfer-time-us = <12500>;
|
|
qcom,dsi-wd-jitter-enable;
|
|
qcom,mdss-dsi-panel-jitter = <0x2 0x1>;
|
|
qcom,dsi-wd-ltj-max-jitter = <0x4 0x1>;
|
|
qcom,dsi-wd-ltj-time-sec = <3600>;
|
|
qcom,mdss-mdp-transfer-time-us-min = <10000>;
|
|
qcom,mdss-mdp-transfer-time-us-max = <15000>;
|
|
qcom,mdss-dsi-panel-timings = [E6 38 26 00 68 6E 2A 3C 2C 03 04 00];
|
|
qcom,mdss-dsi-t-clk-post = <0x02>;
|
|
qcom,mdss-dsi-t-clk-pre = <0x2a>;
|
|
qcom,mdss-dsi-on-command = [05 01 00 00 a0 00 02 11 00
|
|
05 01 00 00 02 00 02 29 00];
|
|
qcom,mdss-dsi-on-command-state = "dsi_lp_mode";
|
|
qcom,mdss-dsi-esync-post-on-commands = [05 01 00 00 a0 00 02 11 00
|
|
05 01 00 00 02 00 02 29 00];
|
|
qcom,mdss-dsi-sticky_still_en-command = [05 01 00 00 a0 00 02 11 00
|
|
05 01 00 00 02 00 02 29 00];
|
|
qcom,mdss-dsi-sticky_still_disable-command = [05 01 00 00 a0 00 02 11 00
|
|
05 01 00 00 02 00 02 29 00];
|
|
qcom,mdss-dsi-sticky_on_fly-command = [05 01 00 00 a0 00 02 11 00
|
|
05 01 00 00 02 00 02 29 00];
|
|
qcom,mdss-dsi-qsync-freq-step-sequence-interval =
|
|
<0 120000 2>, <0 10000 1>;
|
|
qcom,mdss-dsi-qsync-freq-step-sequence =
|
|
<60000 1>, <10000 1>,
|
|
<10000 2>;
|
|
qcom,mdss-dsi-freq-step-pattern1-command = [05 01 00 00 a0 00 02 11 00
|
|
05 01 00 00 02 00 02 29 00];
|
|
qcom,mdss-dsi-freq-step-pattern2-command = [05 01 00 00 a0 00 02 11 00
|
|
05 01 00 00 02 00 02 29 00];
|
|
qcom,mdss-dsi-freq-step-pattern3-command = [05 01 00 00 a0 00 02 11 00
|
|
05 01 00 00 02 00 02 29 00];
|
|
qcom,mdss-dsi-freq-step-pattern4-command = [05 01 00 00 a0 00 02 11 00
|
|
05 01 00 00 02 00 02 29 00];
|
|
qcom,mdss-dsi-freq-step-pattern5-command = [05 01 00 00 a0 00 02 11 00
|
|
05 01 00 00 02 00 02 29 00];
|
|
qcom,mdss-dsi-timing-switch-command = [
|
|
29 00 00 00 00 00 02 B0 04
|
|
29 00 00 00 00 00 02 F1 00];
|
|
qcom,mdss-dsi-timing-switch-command-state = "dsi_lp_mode";
|
|
qcom,qsync-mode-min-refresh-rate = <48>;
|
|
qcom,dsi-qsync-mode-avr-step-fps = <360>;
|
|
qcom,mdss-dsi-qsync-on-commands = [15 01 00 00 00 00 02 51 00];
|
|
qcom,mdss-dsi-qsync-on-commands-state = "dsi_hs_mode";
|
|
qcom,mdss-dsi-qsync-off-commands = [15 01 00 00 00 00 02 51 00];
|
|
qcom,mdss-dsi-qsync-off-commands-state = "dsi_hs_mode";
|
|
qcom,video-mode-switch-out-commands = [
|
|
39 01 00 00 00 00 06 b2 00 5d 04 80 49];
|
|
qcom,video-mode-switch-out-commands-state = "dsi_lp_mode";
|
|
qcom,video-mode-switch-in-commands = [
|
|
39 01 00 00 00 00 06 b2 00 5d 04 80 40];
|
|
qcom,video-mode-switch-in-commands-state = "dsi_lp_mode";
|
|
qcom,cmd-mode-switch-in-commands = [
|
|
39 01 00 00 00 00 06 b2 00 5d 04 80 42];
|
|
qcom,cmd-mode-switch-in-commands-state = "dsi_lp_mode";
|
|
qcom,cmd-mode-switch-out-commands = [
|
|
39 01 00 00 00 00 06 b2 00 5d 01 02 50];
|
|
qcom,cmd-mode-switch-out-commands-state = "dsi_lp_mode";
|
|
|
|
qcom,dsi-dyn-clk-list = <524637388 525735938 528842882>;
|
|
qcom,dsi-dyn-clk-hfp-list = <52 64 96>;
|
|
|
|
qcom,vert-padding-value = <2940>;
|
|
qcom,mdss-dsc-slice-height = <16>;
|
|
qcom,mdss-dsc-slice-width = <360>;
|
|
qcom,mdss-dsc-slice-per-pkt = <2>;
|
|
qcom,mdss-dsc-bit-per-component = <8>;
|
|
qcom,mdss-dsc-bit-per-pixel = <8>;
|
|
qcom,mdss-dsc-block-prediction-enable;
|
|
qcom,mdss-dsc-config-by-manufacture-cmd;
|
|
qcom,display-topology = <1 1 1>;
|
|
qcom,default-topology-index = <0>;
|
|
qcom,partial-update-enabled = "single_roi";
|
|
qcom,panel-roi-alignment = <4 4 2 2 20 20>;
|
|
};
|
|
};
|
|
qcom,panel-supply-entries {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
qcom,panel-supply-entry@0 {
|
|
reg = <0>;
|
|
qcom,supply-name = "vdd";
|
|
qcom,supply-min-voltage = <2800000>;
|
|
qcom,supply-max-voltage = <2800000>;
|
|
qcom,supply-enable-load = <100000>;
|
|
qcom,supply-disable-load = <100>;
|
|
qcom,supply-pre-on-sleep = <0>;
|
|
qcom,supply-post-on-sleep = <0>;
|
|
qcom,supply-pre-off-sleep = <0>;
|
|
qcom,supply-post-off-sleep = <0>;
|
|
};
|
|
|
|
qcom,panel-supply-entry@1 {
|
|
reg = <1>;
|
|
qcom,supply-name = "vddio";
|
|
qcom,supply-min-voltage = <1800000>;
|
|
qcom,supply-max-voltage = <1800000>;
|
|
qcom,supply-enable-load = <100000>;
|
|
qcom,supply-disable-load = <100>;
|
|
qcom,supply-pre-on-sleep = <0>;
|
|
qcom,supply-post-on-sleep = <0>;
|
|
qcom,supply-pre-off-sleep = <0>;
|
|
qcom,supply-post-off-sleep = <0>;
|
|
};
|
|
};
|
|
|
|
qcom,dba-panel;
|
|
qcom,bridge-name = "adv7533";
|
|
qcom,mdss-dsc-version = <0x11>;
|
|
qcom,mdss-dsc-scr-version = <0x1>;
|
|
qcom,mdss-dsc-slice-height = <16>;
|
|
qcom,mdss-dsc-slice-width = <360>;
|
|
qcom,mdss-dsc-slice-per-pkt = <2>;
|
|
qcom,mdss-dsc-bit-per-component = <8>;
|
|
qcom,mdss-dsc-bit-per-pixel = <8>;
|
|
qcom,mdss-dsc-block-prediction-enable;
|
|
qcom,mdss-dsc-config-by-manufacture-cmd;
|
|
qcom,display-topology = <1 1 1>,
|
|
<2 2 1>;
|
|
qcom,default-topology-index = <0>;
|
|
qcom,vdc-version = <0x12>;
|
|
qcom,vdc-version-release = <0>;
|
|
qcom,vdc-slice-height = <256>;
|
|
qcom,vdc-slice-width = <720>;
|
|
qcom,vdc-slice-per-pkt = <2>;
|
|
qcom,vdc-bit-per-component = <8>;
|
|
qcom,vdc-bit-per-pixel = <6>;
|
|
qcom,src-color-space = <0>;
|
|
qcom,src-chroma-format = <0>;
|
|
qcom,mdss-dsi-dma-schedule-line = <5>;
|
|
qcom,mdss-dsi-dma-schedule-window = <50>;
|
|
};
|
|
};
|
|
...
|