summaryrefslogtreecommitdiff
path: root/Documentation/devicetree
diff options
context:
space:
mode:
authorNarendra Muppalla <NarendraM@codeaurora.org>2017-01-29 12:20:13 -0800
committerNarendra Muppalla <NarendraM@codeaurora.org>2017-01-30 11:53:27 -0800
commit3a7cd576f7c7b5e655a74c5528a08c789b7c14f6 (patch)
treed2d46cef6a7c25e601442b95c5f16b850e2bfe06 /Documentation/devicetree
parent958e36a73f7fe46ee28a749cd9b56ddf5dbf56cd (diff)
parent3ac6b6590ba8390a1b25f0f9cea8953220c6b6a3 (diff)
Merge remote-tracking branch 'quic/dev/msm-4.4-drm_kms' into msm-4.4-01-29-tip
* quic/dev/msm-4.4-drm_kms: drm/msm/sde: allow mmus to be optional during kms init drm/msm/sde: check for null catalog in sde hw destroy drm/msm: treat data bus dtsi property as optional drm/msm/sde: add crtc clock & bandwidth capabilities drm/msm/sde: parse csc type dtsi entry to select valid csc drm/msm: fix copyright marking in "msm" drm driver drm/msm: remove smmu coherent hardware table walk attrib drm/msm/sde: add DMA2 and DMA3 pipe staging support drm/msm/sde: add event for underruns drm/msm/sde: fix check for frame event overflow ARM: dts: msm: add ping pong split definitions for msm8996 ARM: dts: msm: add sde max bus bandwidth setting for msm8996 drm/msm/sde: add dynamic clock and bandwidth commit support ARM: dts: msm: add sde bus scale settings for msm8996 drm/msm/sde: add bus bandwidth control for crtc drm/msm/sde: add frame done callback event to crtc drm/msm/sde: bypass crtc atomic begin/flush if disabled drm/msm/sde: add debugfs entry for vbif drm/msm/sde: add debugfs entry for danger and safe status drm/msm/sde: enable ping pong split support ARM: dts: msm: enable imgswap on sharp nt35597 dual panel drm/msm/sde: remove catalog parsing limits drm/msm/sde: update pixel extension uapi drm/msm/sde: enable master physical encoder last drm/msm/sde: reset ctl mixer config at end of use case drm/msm: Support virtualization of color processing properties drm/msm/sde: Move DSPP/SSPP color process hw programming to common location drm/msm/sde: Add support for Memory Color in plane drm/msm/sde: Add PA global adjustment properties to plane drm/msm: implement smmu detach and guard freeing of client dev drm/msm/sde: reset kickoff count atomically before irq enable ARM: dts: msm: default sde clock rate to max for msm8996 drm/msm/sde: base scaler phase on decimated dimensions drm/msm/sde: move sde hw init to hw_init callback drm/msm/sde: check for missed irqs in command encoder drm/msm: support probe deferral in msm_drv drm/msm/sde: fix iounmap usage and init callflow drm/msm/sde: fixup sde_kms shutdown sequence and naming drm/msm/sde: fix cmd mode vblank irq control drm/msm/sde: apply correct zpos range for sde clients drm: Increase max number of DRM object properties drm/msm/sde: add debug dump and panic facility drm/msm/sde: match xlog features in evtlog drm/msm/sde: add debugfs support for misr data drm/msm/sde: Add device tree subnode parsing capability drm/msm: create separate commit thread for each display drm/msm/sde: Add backlight class support for sde drm driver drm/msm/sde: add common sde debug folder drm/msm/sde: route evtlog to sde trace log drm/msm/sde: add systrace compatible trace macro drm/msm/sde: separate plane/encoder/crtc functions into headers drm/msm/sde: add default 10 bit csc matrix to source pipe drm/msm/sde: add 10 bit csc for sde drm/msm/sde: add qseedv3.x support for sde drm/msm/sde: add 10-bit formats support drm/msm/sde: print error only if catalog property is mandatory drm/msm/sde: remove redundant vblank request in crtc drm/msm/sde: add vblank reference counting to crtc drm/msm/sde: handle pingpong blocks from virtual encoder drm/msm/sde: add support for BGRX and XBGR formats in plane drm/msm/sde: add multi-client and ref counting for core irq drm/msm/sde: cache connector list in sde crtc drm/msm/sde: remove display manager drm/msm/sde: fix video encoder access in phy encoder drm/msm/sde: add debugfs node for vsync and underrun status drm/msm/sde: update vblank and underrun isr handling drm/msm/sde: fix color component order drm/msm/dsi-staging: fix issues related to deferral drm/msm/sde: remove static allocation of mdp_top hw block drm/msm: initialize local varibles in sde power module drm/msm/sde: dual pipe use case support drm/msm/sde: update crtc status debugfs node ARM: dts: msm: add vbif OT and plane QoS/LUT for msm8996 drm/msm/sde: add clock control parsing to hardware catalog drm/msm/sde: correct read out of bit offset array drm/msm/sde: add plane QoS parsing to hardware catalog drm/msm/sde: add vbif parsing to hardware catalog drm/msm/sde: add writeback id parsing to hardware catalog drm/msm/sde: update mixer op mode config bit fields correctly drm/msm/sde: add sde error prefix for all errors drm/msm: add capability property for crtc drm/msm/sde: update ubwc and src split properties for sde drm/msm/sde: correct to use sync vblank request for commit drm/msm: execute pending vblank disable upon last close drm/msm/sde: update crtc to use sde debug macros drm/msm/sde: remove unused functions in sde crtc drm/msm/sde: move sde_crtc declarations into sde_crtc header drm/msm/sde: move sde_crtc away from legacy drm vblank apis drm/msm: add error logging in msm_atomic drm/msm/sde: move vbif functions to their own file defconfig: enable backlight class driver for msm defconfig. drm/msm/sde: additional event logging for fences drm/msm/sde: assign relative mixer stages based on zpos drm/msm/sde: remove redundant vblank request and notification drm/msm/sde: fixup header markings drm/msm: fix power handle APIs when clk are not present drm/msm/sde: don't convert ktime to ns when waiting for fences DOWNSTREAM: drm/msm/sde: enable sde client customizations drm/msm: rename kernel module to msm_drm drm/msm/sde: allow primary planes to be used with all crtcs drm/msm/sde: limit primary plane count to number of crtcs drm/msm: teardown all modes in lastclose handler drm/msm/sde: update proper error message for rm failure drm/sde: move hardware catalog to dtsi parser drm/msm/sde: enable proper support for split flush drm/msm/sde: add mode config mutex lock for connector search drm/msm/sde: bypass wait for commit done if crtc is not enabled drm/msm/sde: add proper mode config lock to plane QoS check drm/msm/sde: correct crtc to use new plane state for update drm/msm/sde: remove error message from optional settings drm/msm/sde: remove unused traffic shaper from hw drivers drm/msm: property read should return success for virtual crtc drm/msm/sde: avoid programming same plane source address drm/msm/sde: update plane dmesg logging to use sde macros drm/msm/sde: update scaler property definition and type drm/msm/sde: break out plane decimation to separate properties drm/msm/sde: update register writes to use SDE logging macros drm/msm/sde: update csc property definition and type drm/msm: Modularize property install function of color processing drm/msm: Add support for PA vLut feature drm/msm: Expose Assertive display capability drm/msm: Suspend/Resume support for color processing features drm/msm: Add support for PCC in Crtc drm/msm/sde: update catalog for post processing drm/msm/sde: don't duplicate input fence pointer with state drm/msm/sde: fix color component order for compressed formats drm/msm/sde: add writeback ROI support for msmskunk drm/msm/sde: add const alpha support for msmskunk ARM: dts: msm: add max clock property for sde to msm8996 drm/msm/sde: add max clock property for sde drm/msm: add support for custom event notification drm/msm: Initial version post processing header drm/msm: remove msm clock driver header files drm/msm/dsi-staging: keep backlight api under LED config drm/msm/sde: enable sde clocks during debugfs register read drm/msm/sde: update pipes on dirty plane properties drm/msm/sde: fix compilation issues in sde driver drm/msm/sde: update encoder dmesg logging to use sde macros drm/msm/sde: remove unused header dependency drm/msm/sde: use const alpha for wb if pipe alpha not supported drm/msm/sde: remove unused sde functions drm/msm/sde: add mode change request to cdm resource update drm/msm/sde: cleanup alpha calc and plane stage in crtc ARM: dts: msm: send panel off command during pre off state drm/msm/sde: remove unused writeback function stubs drm/msm/sde: remove unused vblank control for writeback drm/msm/sde: remove unused encoder function drm/msm/sde: always clear topology name when removing rsvp drm/msm/sde: reorganize top level interrupt handling code drm/msm/sde: add OT support for source pipe and writeback drm/msm/sde: add danger/safe/QoS support for source pipe drm/msm/sde: improve debug log for blend setup DOWNSTREAM: drm/msm/sde: optionally delay output fence signal drm/msm/sde: determine output fence timing on create drm/sde: use power handle api to vote for core clock ARM: dts: msm: add clk rate and gdsc supply entry for msm8996 drm/msm: add power handle driver for msm drm/msm/sde: add helper macro for performing ktime comparisons drm/msm/sde: assign ctls based on capability requirements drm/msm/sde: clean up crtc ctl tracking drm/msm/sde: improve resource manager hw block lookup time drm/msm: internal property updates should update cached value drm/msm/sde: fix plane stage setup in sde crtc ARM: dts: msm: add nt35597 panel definition for msm8996 drm/sde: remove warn on from sde encoder drm/sde: allow base layer plane stagging drm/msm: update plane, crtc and connector caps blob prop drm/msm/sde: add api for determining current interface mode drm/msm/sde: fix uninitialized return code in rm drm/msm/sde: fix atomic check for crtc driver drm/msm: validate framebuffer before accessing it drm/msm: fix atomic mode check for sde plane drm/msm: use drm helper API for atomic check ARM: dts: msm: remove hdmi connector for msm8996 drm/msm/sde: enable dynamic hardware resource assignment drm/msm/sde: dynamic hardware resource manager drm/msm/sde: move crtc towards multi-encoder support drm/msm/sde: list block interconnects as bitmasks drm/msm/sde: add topology management properties drivers/gpu/drm: disable drm fbdev emulation drm/msm/sde: use common structure for phys encoder init drm/msm/sde: list hardwired mixer connections drm/msm: enable/disable sde during driver open and close drm/dsi: turn off the wled backlight with panel power off drm/dsi: fix dsi control power supply turn off sequence drm/msm/sde: add support for dirty properties drm/msm: allow flags to be set in property helpers drm/msm/sde: trigger plane modeset on buffer pitch change ARM: dts: msm: add SDE writeback display for msm8996 drm/msm/sde: enable writeback enumeration in display manager drm/msm/sde: add virtual writeback device and connector drm/msm/sde: add resource management for writeback and cdm drm/msm/sde: add hardware driver support for chroma down module drm/msm/sde: add hardware driver support for writeback interface drm/msm/sde: add smmu domain selection logic to connector drm/msm/sde: add function to return raw interrupt status ARM: dts: msm: add SDE smmu node to msm8996 drm/msm/sde: Bypass unused interface during smmu init drm/msm: add non-realtime and secure smmu domains drm/msm: cache active displays within display manager drm/msm/sde: add connector api for querying display info drm/msm/sde: use msm_display_info for display information drm/msm/sde: explicitly enumerate supported plane formats drm/msm/sde: add retire fence support drm/msm/dsi-staging: use sde connector for dsi drm/msm/sde: add generic support for drm connectors drm/msm/sde: add utility functions for kms info drm/msm/sde: enable output_fence property drm/msm/sde: add output fence utility functions drm/msm/sde: support more formats including compression drm/msm: subdriver hook to validate modified formats drm/msm/sde: add drm fourcc modifier for qcom compressed format drm/msm/sde: command mode panel encoder support drm/msm/dsi-staging: turn gpio off if panel reset fails drm/msm/sde: single kickoff to flush hardware drm/msm/dsi-staging: add dsi cmd/vid mode to display info drm/msm: add subdriver callback for single kickoff drm/msm/sde: fix reading of the pingpong counters drm/dsi-staging: update configurations for display related GPIOs drm/msm/sde: add register name to logging drm/msm/sde: add logmask area for top registers drm/msm/sde: define sde specific macros for dmesg logging drm/msm/sde: enable explicit input fences drm/msm/sde: add support for crtc properties drm/dsi-staging: reset drm/dsi data before reconfiguring ARM: dts: msm: fix compilation errors for msm8996 ARM: dts: msm: add configurations for 1080p panel on msm8996 defconfig: enabled drm/kms driver in msm defconfig drm/msm/dsi: remove unused tag from dsi API drm/kms: remove compilation of hdcp_hdmi ARM: dts: msm: update settings for dsi panels drm/msm: disable mdp4 driver in drm kms drm/msm: switch to qti KGSL driver ARM: dts: msm: add configurations for 720p panel ARM: dts: msm: add device tree for sde dsi device on msm8996 drm/dsi-staging: add support to get regulator data from device tree drm/msm/sde: use sde plane csc cfg struct for user settings drm/msm: add display manager to makefile drm/msm: rename MSM drm platform driver's name into msm_drm drm/msm/sde: avoid dereferencing scaler blob if null state drm/msm: handle null blob property array drm/msm: enable both dsi drivers together drm: mipi: change header format to work with msm hardware drm/dsi-staging: remove interrupt handling drm/msm: move display manager out from dsi-staging drm/msm/dsi-staging: fix dynamic fps and seamless updates drm/msm/dsi-staging: support dynamic frame-rate and validation drm/msm: defer drm driver probe if backlight isn't ready drm/msm: common display interface for mdp driver drm/msm/sde: init private kms pointer before modeset init drm/msm/dsi-staging: add dsi panel driver drm/msm/dsi-staging: add debugfs support for dsi driver drm/msm/dsi-staging: add support for command mode panels drm/msm/dsi-staging: dsi display tests drm/msm/dsi-staging: add dsi drm interface drm/msm/dsi-staging: add dsi display driver drm/msm/sde: replace plane property/state handling with msm_prop drm/msm: add generic property/state handling drm/msm: use sde specific color format throughout drm/msm: move dynamic fps and seamless updates drm/msm: update wrapper macros for event logging drm/msm/sde: init spinlock for lm_lock drm/msm/sde: clean up debug output drm/msm: add event log for profiling msm drm driver events drm/msm/sde: pageflip fixes drm/msm/sde: remove crtc full modeset based on plane changes drm/msm/sde: add z-order and plane id to prints drm/msm/sde: add wrappers for release fence API drm/msm/sde: update max up/down scale drm/msm/sde: add planes color fill/fence timeout drm/msm/sde: updates to planes atomic_check drm/msm/sde: add cache for released plane states drm/msm/sde: input fence support for planes drm/msm/sde: add debugfs for crtc drm/msm/sde: don't overflow mixer cfg fields drm/msm: enable seamless dynamic framerates drm/msm/sde: remove plane decimation properties drm/msm/sde: change csc matrix coeff in h/w driver to s15.16 drm/msm/sde: enable blending across all planes drm/msm/sde: remove 'mdp' from sde file names defconfig: msm: enable SYNC Driver drm/msm/sde: add valid rotator writeback flag drm/msm/sde: add properties for planes msm: sde: sde plane properties user definitions drm/msm/sde: consolidate SDE error logging on DRM standard calls drm/msm/sde: set encoder role at display probe time drm/msm/sde: add preliminary debugfs support drm/msm/sde: add blending support for more use cases drm/msm/sde: enable NV12 modetest for planes drm/msm/sde: fixup mdp top split pipe control drm/msm/sde: add support for vblank callback drm/msm/dsi-staging: add dsi phy driver drm/msm/dsi-staging: add clock and power utilities drm/msm/dsi-staging: add dsi controller driver drm/msm/sde: add resource manager to enable dual dsi drm/msm/sde: adding implementation for mdp_top in hw driver drm/msm/sde: sde hw interrupt handling drm/msm/sde: simplify encoder display probe logic drm/msm/sde: move sde encoder to new display interface drm/msm/sde: programmable pre-fetch support for video encoders drm/msm/sde: sde encoder virtualization drm/msm/sde: add controller instance to INTF block in catalog drm/msm/sde: add basic sde object enumeration drm/msm: add smmu handler drm/msm/sde: add driver for sde support drm/msm/dsi-staging: add catalog for dsi driver drm/msm/dsi-staging: add hardware driver for dsi controller drm/msm/dsi-staging: add hardware driver for dsi phy drm/msm/dsi-staging: add dsi definitions for new dsi driver drm/msm: remove clock framework dependency Change-Id: I20ec5183e730d1033f824f3b33f52d5b1578f740 Signed-off-by: Narendra Muppalla <NarendraM@codeaurora.org>
Diffstat (limited to 'Documentation/devicetree')
-rw-r--r--Documentation/devicetree/bindings/display/msm/dsi.txt16
-rw-r--r--Documentation/devicetree/bindings/display/msm/sde.txt472
-rw-r--r--Documentation/devicetree/bindings/drm/msm/sde-dsi.txt96
-rw-r--r--Documentation/devicetree/bindings/drm/msm/sde-wb.txt23
-rw-r--r--Documentation/devicetree/bindings/fb/mdss-dsi-panel.txt1
5 files changed, 608 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/display/msm/dsi.txt b/Documentation/devicetree/bindings/display/msm/dsi.txt
index f344b9e49198..ae2278fb3d1c 100644
--- a/Documentation/devicetree/bindings/display/msm/dsi.txt
+++ b/Documentation/devicetree/bindings/display/msm/dsi.txt
@@ -69,6 +69,20 @@ Required properties:
Optional properties:
- qcom,dsi-phy-regulator-ldo-mode: Boolean value indicating if the LDO mode PHY
regulator is wanted.
+- qcom,mdss-mdp-transfer-time-us: 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 is enabled, this time should not be higher
+ than two times the dsi link rate time.
+ If the property is not specified, then the default value is 14000 us.
Example:
mdss_dsi0: qcom,mdss_dsi@fd922800 {
@@ -105,6 +119,8 @@ Example:
qcom,master-dsi;
qcom,sync-dual-dsi;
+ qcom,mdss-mdp-transfer-time-us = <12000>;
+
pinctrl-names = "default", "sleep";
pinctrl-0 = <&mdss_dsi_active>;
pinctrl-1 = <&mdss_dsi_suspend>;
diff --git a/Documentation/devicetree/bindings/display/msm/sde.txt b/Documentation/devicetree/bindings/display/msm/sde.txt
new file mode 100644
index 000000000000..c9e7d7423d7f
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/msm/sde.txt
@@ -0,0 +1,472 @@
+Qualcomm Technologies, Inc. SDE KMS
+
+Snapdragon Display Engine implements Linux DRM/KMS APIs to drive user
+interface to different panel interfaces. SDE driver is the core of
+display subsystem which manage all data paths to different panel interfaces.
+
+Required properties
+- compatible: Must be "qcom,sde-kms"
+- reg: Offset and length of the register set for the device.
+- reg-names : Names to refer to register sets related to this device
+- clocks: List of Phandles for clock device nodes
+ needed by the device.
+- clock-names: List of clock names needed by the device.
+- mmagic-supply: Phandle for mmagic mdss supply regulator device node.
+- vdd-supply: Phandle for vdd regulator device node.
+- interrupt-parent: Must be core interrupt controller.
+- interrupts: Interrupt associated with MDSS.
+- interrupt-controller: Mark the device node as an interrupt controller.
+- #interrupt-cells: Should be one. The first cell is interrupt number.
+- iommus: Specifies the SID's used by this context bank.
+- qcom,sde-sspp-type: Array of strings for SDE source surface pipes type information.
+ A source pipe can be "vig", "rgb", "dma" or "cursor" type.
+ Number of xin ids defined should match the number of offsets
+ defined in property: qcom,sde-sspp-off.
+- qcom,sde-sspp-off: Array of offset for SDE source surface pipes. The offsets
+ are calculated from register "mdp_phys" defined in
+ reg property + "sde-off". The number of offsets defined here should
+ reflect the amount of pipes that can be active in SDE for
+ this configuration.
+- qcom,sde-sspp-xin-id: Array of VBIF clients ids (xins) corresponding
+ to the respective source pipes. Number of xin ids
+ defined should match the number of offsets
+ defined in property: qcom,sde-sspp-off.
+- qcom,sde-ctl-off: Array of offset addresses for the available ctl
+ hw blocks within SDE, these offsets are
+ calculated from register "mdp_phys" defined in
+ reg property. The number of ctl offsets defined
+ here should reflect the number of control paths
+ that can be configured concurrently on SDE for
+ this configuration.
+- qcom,sde-wb-off: Array of offset addresses for the programmable
+ writeback blocks within SDE.
+- qcom,sde-wb-xin-id: Array of VBIF clients ids (xins) corresponding
+ to the respective writeback. Number of xin ids
+ defined should match the number of offsets
+ defined in property: qcom,sde-wb-off.
+- qcom,sde-mixer-off: Array of offset addresses for the available
+ mixer blocks that can drive data to panel
+ interfaces. These offsets are be calculated from
+ register "mdp_phys" defined in reg property.
+ The number of offsets defined should reflect the
+ amount of mixers that can drive data to a panel
+ interface.
+- qcom,sde-dspp-off: Array of offset addresses for the available dspp
+ blocks. These offsets are calculated from
+ register "mdp_phys" defined in reg property.
+- qcom,sde-pp-off: Array of offset addresses for the available
+ pingpong blocks. These offsets are calculated
+ from register "mdp_phys" defined in reg property.
+- qcom,sde-pp-slave: Array of flags indicating whether each ping pong
+ block may be configured as a pp slave.
+- qcom,sde-intf-off: Array of offset addresses for the available SDE
+ interface blocks that can drive data to a
+ panel controller. The offsets are calculated
+ from "mdp_phys" defined in reg property. The number
+ of offsets defined should reflect the number of
+ programmable interface blocks available in hardware.
+
+Optional properties:
+- clock-rate: List of clock rates in Hz.
+- clock-max-rate: List of maximum clock rate in Hz that this device supports.
+- qcom,platform-supply-entries: A node that lists the elements of the supply. There
+ can be more than one instance of this binding,
+ in which case the entry would be appended with
+ the supply entry index.
+ e.g. qcom,platform-supply-entry@0
+ -- reg: offset and length of the register set for the device.
+ -- qcom,supply-name: name of the supply (vdd/vdda/vddio)
+ -- qcom,supply-min-voltage: minimum voltage level (uV)
+ -- qcom,supply-max-voltage: maximum voltage level (uV)
+ -- qcom,supply-enable-load: load drawn (uA) from enabled supply
+ -- qcom,supply-disable-load: load drawn (uA) from disabled supply
+ -- qcom,supply-pre-on-sleep: time to sleep (ms) before turning on
+ -- qcom,supply-post-on-sleep: time to sleep (ms) after turning on
+ -- qcom,supply-pre-off-sleep: time to sleep (ms) before turning off
+ -- qcom,supply-post-off-sleep: time to sleep (ms) after turning off
+- qcom,sde-sspp-src-size: A u32 value indicates the address range for each sspp.
+- qcom,sde-mixer-size: A u32 value indicates the address range for each mixer.
+- qcom,sde-ctl-size: A u32 value indicates the address range for each ctl.
+- qcom,sde-dspp-size: A u32 value indicates the address range for each dspp.
+- qcom,sde-intf-size: A u32 value indicates the address range for each intf.
+- qcom,sde-dsc-size: A u32 value indicates the address range for each dsc.
+- qcom,sde-cdm-size: A u32 value indicates the address range for each cdm.
+- qcom,sde-pp-size: A u32 value indicates the address range for each pingpong.
+- qcom,sde-wb-size: A u32 value indicates the address range for each writeback.
+- qcom,sde-len: A u32 entry for SDE address range.
+- qcom,sde-intf-max-prefetch-lines: Array of u32 values for max prefetch lines on
+ each interface.
+- qcom,sde-sspp-linewidth: A u32 value indicates the max sspp line width.
+- qcom,sde-mixer-linewidth: A u32 value indicates the max mixer line width.
+- qcom,sde-wb-linewidth: A u32 value indicates the max writeback line width.
+- qcom,sde-sspp-scale-size: A u32 value indicates the scaling block size on sspp.
+- qcom,sde-mixer-blendstages: A u32 value indicates the max mixer blend stages for
+ alpha blending.
+- qcom,sde-qseed-type: A string entry indicates qseed support on sspp and wb.
+ It supports "qssedv3" and "qseedv2" entries for qseed
+ type. By default "qseedv2" is used if this optional property
+ is not defined.
+- qcom,sde-csc-type: A string entry indicates csc support on sspp and wb.
+ It supports "csc" and "csc-10bit" entries for csc
+ type.
+- qcom,sde-highest-bank-bit: A u32 property to indicate GPU/Camera/Video highest memory
+ bank bit used for tile format buffers.
+- qcom,sde-panic-per-pipe: Boolean property to indicate if panic signal
+ control feature is available on each source pipe.
+- qcom,sde-has-src-split: Boolean property to indicate if source split
+ feature is available or not.
+- qcom,sde-has-mixer-gc: Boolean property to indicate if mixer has gamma correction
+ feature available or not.
+- qcom,sde-has-cdp: Boolean property to indicate if cdp feature is
+ available or not.
+- qcom,sde-sspp-clk-ctrl: Array of offsets describing clk control
+ offsets for dynamic clock gating. 1st value
+ in the array represents offset of the control
+ register. 2nd value represents bit offset within
+ control register. Number of offsets defined should
+ match the number of offsets defined in
+ property: qcom,sde-sspp-off
+- qcom,sde-sspp-clk-status: Array of offsets describing clk status
+ offsets for dynamic clock gating. 1st value
+ in the array represents offset of the status
+ register. 2nd value represents bit offset within
+ control register. Number of offsets defined should
+ match the number of offsets defined in
+ property: qcom,sde-sspp-off.
+- qcom,sde-sspp-danger-lut: A 3 cell property, with a format of <linear, tile, nrt>,
+ indicating the danger luts on sspp.
+- qcom,sde-sspp-safe-lut: A 3 cell property, with a format of <linear, tile, nrt>,
+ indicating the safe luts on sspp.
+- qcom,sde-sspp-max-rects: Array of u32 values indicating maximum rectangles supported
+ on each sspp. This property is for multirect feature support.
+ Number of offsets defined should match the number of
+ offsets defined in property: qcom,sde-sspp-off.
+- qcom,sde-intf-type: Array of string provides the interface type information.
+ Possible string values
+ "dsi" - dsi display interface
+ "dp" - Display Port interface
+ "hdmi" - HDMI display interface
+ An interface is considered as "none" if interface type
+ is not defined.
+- qcom,sde-off: SDE offset from "mdp_phys" defined in reg property.
+- qcom,sde-cdm-off: Array of offset addresses for the available
+ cdm blocks. These offsets will be calculated from
+ register "mdp_phys" defined in reg property.
+- qcom,sde-vbif-off: Array of offset addresses for the available
+ vbif blocks. These offsets will be calculated from
+ register "vbif_phys" defined in reg property.
+- qcom,sde-vbif-size: A u32 value indicates the vbif block address range.
+- qcom,sde-te-off: A u32 offset indicates the te block offset on pingpong.
+ This offset is 0x0 by default.
+- qcom,sde-te2-off: A u32 offset indicates the te2 block offset on pingpong.
+- qcom,sde-te-size: A u32 value indicates the te block address range.
+- qcom,sde-te2-size: A u32 value indicates the te2 block address range.
+- qcom,sde-dsc-off: A u32 offset indicates the dsc block offset on pingpong.
+- qcom,sde-sspp-vig-blocks: A node that lists the blocks inside the VIG hardware. The
+ block entries will contain the offset and version (if needed)
+ of each feature block. The presence of a block entry
+ indicates that the SSPP VIG contains that feature hardware.
+ e.g. qcom,sde-sspp-vig-blocks
+ -- qcom,sde-vig-csc-off: offset of CSC hardware
+ -- qcom,sde-vig-qseed-off: offset of QSEED hardware
+ -- qcom,sde-vig-pcc: offset and version of PCC hardware
+ -- qcom,sde-vig-hsic: offset and version of global PA adjustment
+ -- qcom,sde-vig-memcolor: offset and version of PA memcolor hardware
+- qcom,sde-sspp-rgb-blocks: A node that lists the blocks inside the RGB hardware. The
+ block entries will contain the offset and version (if needed)
+ of each feature block. The presence of a block entry
+ indicates that the SSPP RGB contains that feature hardware.
+ e.g. qcom,sde-sspp-vig-blocks
+ -- qcom,sde-rgb-scaler-off: offset of RGB scaler hardware
+ -- qcom,sde-rgb-pcc: offset and version of PCC hardware
+- qcom,sde-dspp-blocks: A node that lists the blocks inside the DSPP hardware. The
+ block entries will contain the offset and version of each
+ feature block. The presence of a block entry indicates that
+ the DSPP contains that feature hardware.
+ e.g. qcom,sde-dspp-blocks
+ -- qcom,sde-dspp-pcc: offset and version of PCC hardware
+ -- qcom,sde-dspp-gc: offset and version of GC hardware
+ -- qcom,sde-dspp-hsic: offset and version of global PA adjustment
+ -- qcom,sde-dspp-memcolor: offset and version of PA memcolor hardware
+ -- qcom,sde-dspp-sixzone: offset and version of PA sixzone hardware
+ -- qcom,sde-dspp-gamut: offset and version of Gamut mapping hardware
+ -- qcom,sde-dspp-dither: offset and version of dither hardware
+ -- qcom,sde-dspp-hist: offset and version of histogram hardware
+ -- qcom,sde-dspp-vlut: offset and version of PA vLUT hardware
+- qcom,sde-mixer-blocks: A node that lists the blocks inside the layer mixer hardware. The
+ block entries will contain the offset and version (if needed)
+ of each feature block. The presence of a block entry
+ indicates that the layer mixer contains that feature hardware.
+ e.g. qcom,sde-mixer-blocks
+ -- qcom,sde-mixer-gc: offset and version of mixer GC hardware
+- qcom,sde-dspp-ad-off: Array of u32 offsets indicate the ad block offset from the
+ DSPP offset. Since AD hardware is represented as part of
+ DSPP block, the AD offsets must be offset from the
+ corresponding DSPP base.
+- qcom,sde-dspp-ad-version A u32 value indicating the version of the AD hardware
+- qcom,sde-vbif-id: Array of vbif ids corresponding to the
+ offsets defined in property: qcom,sde-vbif-off.
+- qcom,sde-vbif-default-ot-rd-limit: A u32 value indicates the default read OT limit
+- qcom,sde-vbif-default-ot-wr-limit: A u32 value indicates the default write OT limit
+- qcom,sde-vbif-dynamic-ot-rd-limit: A series of 2 cell property, with a format
+ of (pps, OT limit), where pps is pixel per second and
+ OT limit is the read limit to apply if the given
+ pps is not exceeded.
+- qcom,sde-vbif-dynamic-ot-wr-limit: A series of 2 cell property, with a format
+ of (pps, OT limit), where pps is pixel per second and
+ OT limit is the write limit to apply if the given
+ pps is not exceeded.
+- qcom,sde-wb-id: Array of writeback ids corresponding to the
+ offsets defined in property: qcom,sde-wb-off.
+- qcom,sde-wb-clk-ctrl: Array of 2 cell property describing clk control
+ offsets for dynamic clock gating. 1st value
+ in the array represents offset of the control
+ register. 2nd value represents bit offset within
+ control register. Number of offsets defined should
+ match the number of offsets defined in
+ property: qcom,sde-wb-off
+- qcom,sde-dram-channels: This represents the number of channels in the
+ Bus memory controller.
+- qcom,sde-num-nrt-paths: Integer property represents the number of non-realtime
+ paths in each Bus Scaling Usecase. This value depends on
+ number of AXI ports that are dedicated to non-realtime VBIF
+ for particular chipset.
+ These paths must be defined after rt-paths in
+ "qcom,msm-bus,vectors-KBps" vector request.
+- qcom,sde-max-bw-low-kbps: This value indicates the max bandwidth in Kbps
+ that can be supported without underflow.
+ This is a low bandwidth threshold which should
+ be applied in most scenarios to be safe from
+ underflows when unable to satisfy bandwidth
+ requirements.
+- qcom,sde-max-bw-high-kbps: This value indicates the max bandwidth in Kbps
+ that can be supported without underflow.
+ This is a high bandwidth threshold which can be
+ applied in scenarios where panel interface can
+ be more tolerant to memory latency such as
+ command mode panels.
+
+Bus Scaling Subnodes:
+- qcom,sde-reg-bus: Property to provide Bus scaling for register access for
+ mdss blocks.
+- qcom,sde-data-bus: Property to provide Bus scaling for data bus access for
+ mdss blocks.
+
+Bus Scaling Data:
+- qcom,msm-bus,name: String property describing client name.
+- qcom,msm-bus,num-cases: This is the number of Bus Scaling use cases
+ defined in the vectors property.
+- qcom,msm-bus,num-paths: This represents the number of paths in each
+ Bus Scaling Usecase.
+- qcom,msm-bus,vectors-KBps: * A series of 4 cell properties, with a format
+ of (src, dst, ab, ib) which is defined at
+ Documentation/devicetree/bindings/arm/msm/msm_bus.txt
+ * Current values of src & dst are defined at
+ include/linux/msm-bus-board.h
+
+
+Please refer to ../../interrupt-controller/interrupts.txt for a general
+description of interrupt bindings.
+
+Example:
+ mdss_mdp: qcom,mdss_mdp@900000 {
+ compatible = "qcom,sde-kms";
+ reg = <0x00900000 0x90000>,
+ <0x009b0000 0x1040>,
+ <0x009b8000 0x1040>;
+ reg-names = "mdp_phys",
+ "vbif_phys",
+ "vbif_nrt_phys";
+ clocks = <&clock_mmss clk_mdss_ahb_clk>,
+ <&clock_mmss clk_mdss_axi_clk>,
+ <&clock_mmss clk_mdp_clk_src>,
+ <&clock_mmss clk_mdss_mdp_vote_clk>,
+ <&clock_mmss clk_smmu_mdp_axi_clk>,
+ <&clock_mmss clk_mmagic_mdss_axi_clk>,
+ <&clock_mmss clk_mdss_vsync_clk>;
+ clock-names = "iface_clk",
+ "bus_clk",
+ "core_clk_src",
+ "core_clk",
+ "iommu_clk",
+ "mmagic_clk",
+ "vsync_clk";
+ clock-rate = <0>, <0>, <0>;
+ clock-max-rate= <0 320000000 0>;
+ mmagic-supply = <&gdsc_mmagic_mdss>;
+ vdd-supply = <&gdsc_mdss>;
+ interrupt-parent = <&intc>;
+ interrupts = <0 83 0>;
+ interrupt-controller;
+ #interrupt-cells = <1>;
+ iommus = <&mdp_smmu 0>;
+
+ qcom,sde-off = <0x1000>;
+ qcom,sde-ctl-off = <0x00002000 0x00002200 0x00002400
+ 0x00002600 0x00002800>;
+ qcom,sde-mixer-off = <0x00045000 0x00046000
+ 0x00047000 0x0004a000>;
+ qcom,sde-dspp-off = <0x00055000 0x00057000>;
+ qcom,sde-dspp-ad-off = <0x24000 0x22800>;
+ qcom,sde-dspp-ad-version = <0x00030000>;
+ qcom,sde-wb-off = <0x00066000>;
+ qcom,sde-wb-xin-id = <6>;
+ qcom,sde-intf-off = <0x0006b000 0x0006b800
+ 0x0006c000 0x0006c800>;
+ qcom,sde-intf-type = "none", "dsi", "dsi", "hdmi";
+ qcom,sde-pp-off = <0x00071000 0x00071800
+ 0x00072000 0x00072800>;
+ qcom,sde-pp-slave = <0x0 0x0 0x0 0x0>;
+ qcom,sde-cdm-off = <0x0007a200>;
+ qcom,sde-dsc-off = <0x00081000 0x00081400>;
+ qcom,sde-intf-max-prefetch-lines = <0x15 0x15 0x15 0x15>;
+
+ qcom,sde-sspp-type = "vig", "vig", "vig",
+ "vig", "rgb", "rgb",
+ "rgb", "rgb", "dma",
+ "dma", "cursor", "cursor";
+
+ qcom,sde-sspp-off = <0x00005000 0x00007000 0x00009000
+ 0x0000b000 0x00015000 0x00017000
+ 0x00019000 0x0001b000 0x00025000
+ 0x00027000 0x00035000 0x00037000>;
+
+ qcom,sde-sspp-xin-id = <0 4 8
+ 12 1 5
+ 9 13 2
+ 10 7 7>;
+
+ /* offsets are relative to "mdp_phys + qcom,sde-off */
+ qcom,sde-sspp-clk-ctrl = <0x2ac 0>, <0x2b4 0>, <0x2bc 0>,
+ <0x2c4 0>, <0x2ac 4>, <0x2b4 4>, <0x2bc 4>,
+ <0x2c4 4>, <0x2ac 8>, <0x2b4 8>, <0x3a8 16>,
+ <0x3b0 16>;
+ qcom,sde-sspp-clk-status = <0x2ac 0>, <0x2b4 0>, <0x2bc 0>,
+ <0x2c4 0>, <0x2ac 4>, <0x2b4 4>, <0x2bc 4>,
+ <0x2c4 4>, <0x2ac 8>, <0x2b4 8>, <0x3a8 16>,
+ <0x3b0 16>;
+ qcom,sde-mixer-linewidth = <2560>;
+ qcom,sde-sspp-linewidth = <2560>;
+ qcom,sde-mixer-blendstages = <0x7>;
+ qcom,sde-highest-bank-bit = <0x2>;
+ qcom,sde-panic-per-pipe;
+ qcom,sde-has-cdp;
+ qcom,sde-has-src-split;
+ qcom,sde-sspp-src-size = <0x100>;
+ qcom,sde-mixer-size = <0x100>;
+ qcom,sde-ctl-size = <0x100>;
+ qcom,sde-dspp-size = <0x100>;
+ qcom,sde-intf-size = <0x100>;
+ qcom,sde-dsc-size = <0x100>;
+ qcom,sde-cdm-size = <0x100>;
+ qcom,sde-pp-size = <0x100>;
+ qcom,sde-wb-size = <0x100>;
+ qcom,sde-len = <0x100>;
+ qcom,sde-wb-linewidth = <2560>;
+ qcom,sde-sspp-scale-size = <0x100>;
+ qcom,sde-mixer-blendstages = <0x8>;
+ qcom,sde-qseed-type = "qseedv2";
+ qcom,sde-highest-bank-bit = <15>;
+ qcom,sde-has-mixer-gc;
+ qcom,sde-sspp-max-rects = <1 1 1 1
+ 1 1 1 1
+ 1 1
+ 1 1>;
+ qcom,sde-te-off = <0x100>;
+ qcom,sde-te2-off = <0x100>;
+ qcom,sde-te-size = <0xffff>;
+ qcom,sde-te2-size = <0xffff>;
+
+ qcom,sde-wb-id = <2>;
+ qcom,sde-wb-clk-ctrl = <0x2bc 16>;
+
+ qcom,sde-sspp-danger-lut = <0x000f 0xffff 0x0000>;
+ qcom,sde-sspp-safe-lut = <0xfffc 0xff00 0xffff>;
+
+ qcom,sde-vbif-off = <0 0>;
+ qcom,sde-vbif-id = <0 1>;
+ qcom,sde-vbif-default-ot-rd-limit = <32>;
+ qcom,sde-vbif-default-ot-wr-limit = <16>;
+ qcom,sde-vbif-dynamic-ot-rd-limit = <62208000 2>,
+ <124416000 4>, <248832000 16>;
+ qcom,sde-vbif-dynamic-ot-wr-limit = <62208000 2>,
+ <124416000 4>, <248832000 16>;
+
+ qcom,sde-dram-channels = <2>;
+ qcom,sde-num-nrt-paths = <1>;
+
+ qcom,sde-max-bw-high-kbps = <9000000>;
+ qcom,sde-max-bw-low-kbps = <9000000>;
+
+ qcom,sde-sspp-vig-blocks {
+ qcom,sde-vig-csc-off = <0x320>;
+ qcom,sde-vig-qseed-off = <0x200>;
+ /* Offset from vig top, version of HSIC */
+ qcom,sde-vig-hsic = <0x200 0x00010000>;
+ qcom,sde-vig-memcolor = <0x200 0x00010000>;
+ qcom,sde-vig-pcc = <0x1780 0x00010000>;
+ };
+
+ qcom,sde-sspp-rgb-blocks {
+ qcom,sde-rgb-scaler-off = <0x200>;
+ qcom,sde-rgb-pcc = <0x380 0x00010000>;
+ };
+
+ qcom,sde-dspp-blocks {
+ qcom,sde-dspp-pcc = <0x1700 0x00010000>;
+ qcom,sde-dspp-gc = <0x17c0 0x00010000>;
+ qcom,sde-dspp-hsic = <0x0 0x00010000>;
+ qcom,sde-dspp-memcolor = <0x0 0x00010000>;
+ qcom,sde-dspp-sixzone = <0x0 0x00010000>;
+ qcom,sde-dspp-gamut = <0x1600 0x00010000>;
+ qcom,sde-dspp-dither = <0x0 0x00010000>;
+ qcom,sde-dspp-hist = <0x0 0x00010000>;
+ qcom,sde-dspp-vlut = <0x0 0x00010000>;
+ };
+
+ qcom,sde-mixer-blocks {
+ qcom,sde-mixer-gc = <0x3c0 0x00010000>;
+ };
+
+ qcom,platform-supply-entries {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ qcom,platform-supply-entry@0 {
+ reg = <0>;
+ qcom,supply-name = "vdd";
+ qcom,supply-min-voltage = <0>;
+ qcom,supply-max-voltage = <0>;
+ qcom,supply-enable-load = <0>;
+ qcom,supply-disable-load = <0>;
+ 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,sde-data-bus {
+ qcom,msm-bus,name = "mdss_sde";
+ qcom,msm-bus,num-cases = <3>;
+ qcom,msm-bus,num-paths = <3>;
+ qcom,msm-bus,vectors-KBps =
+ <22 512 0 0>, <23 512 0 0>, <25 512 0 0>,
+ <22 512 0 6400000>, <23 512 0 6400000>,
+ <25 512 0 6400000>,
+ <22 512 0 6400000>, <23 512 0 6400000>,
+ <25 512 0 6400000>;
+ };
+
+ qcom,sde-reg-bus {
+ /* Reg Bus Scale Settings */
+ qcom,msm-bus,name = "mdss_reg";
+ qcom,msm-bus,num-cases = <4>;
+ qcom,msm-bus,num-paths = <1>;
+ qcom,msm-bus,active-only;
+ qcom,msm-bus,vectors-KBps =
+ <1 590 0 0>,
+ <1 590 0 76800>,
+ <1 590 0 160000>,
+ <1 590 0 320000>;
+ };
+ };
diff --git a/Documentation/devicetree/bindings/drm/msm/sde-dsi.txt b/Documentation/devicetree/bindings/drm/msm/sde-dsi.txt
new file mode 100644
index 000000000000..48a2c6c78297
--- /dev/null
+++ b/Documentation/devicetree/bindings/drm/msm/sde-dsi.txt
@@ -0,0 +1,96 @@
+Qualcomm Technologies, Inc.
+
+mdss-dsi is the master DSI device which supports multiple DSI host controllers
+that are compatible with MIPI display serial interface specification.
+
+DSI Controller:
+Required properties:
+- compatible: Should be "qcom,dsi-ctrl-hw-v<version>". Supported
+ versions include 1.4 and 2.0.
+ eg: qcom,dsi-ctrl-hw-v1.4, qcom,dsi-ctrl-hw-v2.0
+ And for dsi phy driver:
+ qcom,dsi-phy-v1.0, qcom,dsi-phy-v2.0, qcom,dsi-phy-v3.0,
+ qcom,dsi-phy-v4.0
+- reg: Base address and length of DSI controller's memory
+ mapped regions.
+- reg-names: A list of strings that name the list of regs.
+ "dsi_ctrl" - DSI controller memory region.
+ "mmss_misc" - MMSS misc memory region.
+- cell-index: Specifies the controller instance.
+- clocks: Clocks required for DSI controller operation.
+- clock-names: Names of the clocks corresponding to handles. Following
+ clocks are required:
+ "mdp_core_clk"
+ "iface_clk"
+ "core_mmss_clk"
+ "bus_clk"
+ "byte_clk"
+ "pixel_clk"
+ "core_clk"
+ "byte_clk_rcg"
+ "pixel_clk_rcg"
+- gdsc-supply: phandle to gdsc regulator node.
+- vdda-supply: phandle to vdda regulator node.
+- vcca-supply: phandle to vcca regulator node.
+- interrupt-parent phandle to the interrupt parent device node.
+- interrupts: The interrupt signal from the DSI block.
+
+Bus Scaling Data:
+- qcom,msm-bus,name: String property describing MDSS client.
+- qcom,msm-bus,num-cases: This is the number of bus scaling use cases
+ defined in the vectors property. This must be
+ set to <2> for MDSS DSI driver where use-case 0
+ is used to remove BW votes from the system. Use
+ case 1 is used to generate bandwidth requestes
+ when sending command packets.
+- qcom,msm-bus,num-paths: This represents number of paths in each bus
+ scaling usecase. This value depends on number of
+ AXI master ports dedicated to MDSS for
+ particular chipset.
+- qcom,msm-bus,vectors-KBps: A series of 4 cell properties, with a format
+ of (src, dst, ab, ib) which is defined at
+ Documentation/devicetree/bindings/arm/msm/msm_bus.txt.
+ DSI driver should always set average bandwidth
+ (ab) to 0 and always use instantaneous
+ bandwidth(ib) values.
+
+Optional properties:
+- label: String to describe controller.
+- qcom,platform-te-gpio: Specifies the gpio used for TE.
+- qcom,dsi-display-active: Current active display
+- qcom,dsi-ctrl: handle to dsi controller device
+- qcom,dsi-phy: handle to dsi phy device
+- qcom,dsi-manager: Specifies dsi manager is present
+- qcom,dsi-display: Specifies dsi display is present
+- qcom,hdmi-display: Specifies hdmi is present
+- qcom,dp-display: Specified dp is present
+- qcom,<type>-supply-entries: A node that lists the elements of the supply used by the
+ a particular "type" of DSI module. The module "types"
+ can be "core", "ctrl", and "phy". Within the same type,
+ there can be more than one instance of this binding,
+ in which case the entry would be appended with the
+ supply entry index.
+ e.g. qcom,ctrl-supply-entry@0
+ -- qcom,supply-name: name of the supply (vdd/vdda/vddio)
+ -- qcom,supply-min-voltage: minimum voltage level (uV)
+ -- qcom,supply-max-voltage: maximum voltage level (uV)
+ -- qcom,supply-enable-load: load drawn (uA) from enabled supply
+ -- qcom,supply-disable-load: load drawn (uA) from disabled supply
+ -- qcom,supply-pre-on-sleep: time to sleep (ms) before turning on
+ -- qcom,supply-post-on-sleep: time to sleep (ms) after turning on
+ -- qcom,supply-pre-off-sleep: time to sleep (ms) before turning off
+ -- qcom,supply-post-off-sleep: time to sleep (ms) after turning off
+- qcom,mdss-mdp-transfer-time-us: 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.
+ If the property is not specified, then the default value is 14000 us. \ No newline at end of file
diff --git a/Documentation/devicetree/bindings/drm/msm/sde-wb.txt b/Documentation/devicetree/bindings/drm/msm/sde-wb.txt
new file mode 100644
index 000000000000..863b334e438a
--- /dev/null
+++ b/Documentation/devicetree/bindings/drm/msm/sde-wb.txt
@@ -0,0 +1,23 @@
+QTI Snapdragon Display Engine (SDE) writeback display
+
+Required properties:
+- compatible: "qcom,wb-display"
+
+Optional properties:
+- cell-index: Index of writeback device instance.
+ Default to 0 if not specified.
+- label: String to describe this writeback display.
+ Default to "unknown" if not specified.
+
+Example:
+
+/ {
+ ...
+
+ sde_wb: qcom,wb-display {
+ compatible = "qcom,wb-display";
+ cell-index = <2>;
+ label = "wb_display";
+ };
+
+};
diff --git a/Documentation/devicetree/bindings/fb/mdss-dsi-panel.txt b/Documentation/devicetree/bindings/fb/mdss-dsi-panel.txt
index b676efe97b8b..4fd0c2ecbc6e 100644
--- a/Documentation/devicetree/bindings/fb/mdss-dsi-panel.txt
+++ b/Documentation/devicetree/bindings/fb/mdss-dsi-panel.txt
@@ -628,6 +628,7 @@ Example:
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,mdss-dsi-interleave-mode = <0>;
qcom,mdss-dsi-panel-type = "dsi_video_mode";
qcom,mdss-dsi-te-check-enable;