summaryrefslogtreecommitdiff
path: root/drivers/video/fbdev (follow)
Commit message (Collapse)AuthorAge
...
| | * | | msm: mdss: hdmi: reset TMDS_Bit_Clock_Ratio bitNarender Ankam2020-03-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When TMDS clock rate is lte 340MHz and downstream sink doesn't support LTE_340MHz_scramble, reset TMDS_Bit_Clock_Ratio bit in the sink. Change-Id: Ib5a60c17d78e0c70071bec93e5081419d21bddd0 Signed-off-by: Narender Ankam <nankam@codeaurora.org>
| * | | | fbdev: msm: handle unbalanced TE irq callsraghavendra ambadas2020-03-30
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to TE irq enabled/disabled from both dsi blank/unblank and from the wait4pingpong function during esd panel recovery, which causes unbalanced te irq calls during enabling, this fails panel recovery fail during esd test. Fix the issue by synchronizing the irq calls using single function call to update the te irq from different functions. Change-Id: Ia7a532f28f6ecc1c509406ca1dbc129fcd8a9244 Signed-off-by: Raghavendra Ambadas <rambad@codeaurora.org>
* | | | msm: mdss: fb: Validate output_format before updatingdianlujitao2020-05-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Unexpected behavior occurs when panel_info->out_format is assigned an erroneous value. Change-Id: Ied76ae7b8a330cb2cb29c64c79c1418267fb5eca
* | | | mdss: livedisplay: Allow independent CABC commanddianlujitao2020-04-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * The current CABC/SRE/ACO command is OR'd together from CABC off command and a mode mask. However, on some modern panels, the commands are more complex and can't be simply calculated. Add DT fields to store independent CABC command without runtime calculation. * Try the simple unified CABC commands first, and use the independent one as fallback. Change-Id: I6dcf2db9586d309f3181539bbd6031f5fd0949a7
* | | | mdss: livedisplay: Fix memory leaks in mdss_livedisplay_update()Sultanxda2020-04-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | parse_dsi_cmds() allocates two blocks of memory and stores their addresses in a stack-allocated variable, but they are never freed, so when the function exits, all references to them are gone. Free the allocated memory after using it in order to fix the memory leaks. Change-Id: Ie574848e2429167fc38ed39975feb3df68ed2aed Signed-off-by: Sultanxda <sultanxda@gmail.com>
* | | | video: mdss: LiveDisplay driverSteve Kondik2020-04-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Bring in a lightweight version of the LiveDisplay driver which works for this chipset, and remove all the OEM spaghetti code. * This version of the driver does not include the generic RGB offset postprocessing, since we're going to do this using the official QDCM APIs. Change-Id: Ifcaaf93d56933d019d1f469fd70b8466cd4ad3e7
* | | | Merge tag 'LA.UM.8.4.r1-05300-8x98.0' of ↵Michael Bestas2020-04-14
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://source.codeaurora.org/quic/la/kernel/msm-4.4 into lineage-17.1-caf-msm8998 * tag 'LA.UM.8.4.r1-05300-8x98.0' of https://source.codeaurora.org/quic/la/kernel/msm-4.4: drivers/misc: check if mute_sink is a valid function pointer mdss: msm: hdmi: fix CEC broadcast loopback issue mdss: msm: hdmi: use circular buffer for CEC rx mdss: msm: hdmi: add CEC clear_logical_addr sysnode fbdev: msm: hdmi: read CEC msg before clearing interrupt msm: mdss: hdcp: synchronize HDCP1 qseecom commands msm: mdss: hdcp: handle hdcp1 mutex properly msm: mdss: hdcp: set hdcpsrm_supported flag correctly msm: mdss: hdmi: reset deep_color before parsing EDID msm: mdss: mdp: update CDM CSC coefficients during HDR playback msm: mdss: hdmi: update colorimetry in AVI infoframe msm: mdss: hdmi: parse E-EDID's COLORIMETRY data block msm: mdss: hdmi: modify min_enc_level logic msm: mdss: edid: conditionally set rgb_support for Y420 EDID modes msm: mdss: hdmi: validate EDID modes against max refresh rate msm: mdss: hdmi: set the output bitdepth msm: mdss: edid: modify the extended data block's length check msm: mdss: hdmi: handle wake_irq on suspend/resume msm: mdss: hdmi: handle HPD disconnect event during suspend msm: mdss: hdmi: set colorimetry info in AVI infoframe msm: mdss: hdmi: set quantization range in AVI infoframe msm: mdss: mdp: configure CSC_10 to set correct quantization range msm: mdss: hdmi: check if given resolution is CE video format msm: mdss: hdcp: read V' only for non-zero device count repeater msm: mdss: hdmi: set max tmds clock rate correctly msm: mdss: fb: fix panel reconfiguration check for format change msm: mdss: mdp: do null commit during panel reconfiguration msm: mdss: hdmi: modify HPD polarity change setup msm: mdss: hdmi: check HDMI 1.4 VSDB length msm: mdss: hdmi: set max TMDS clock rate msm: mdss: hdmi: fix parsing Y420CMDB block of EDID msm: mdss: hdmi: override default resolution after parsing EDID msm: mdss: hdmi: fix HDMI panel reconfiguration issue msm: mdss: hdmi: fix handoff if deep color is supported by TV msm: mdss: hdmi: support only progressive DTDs fbdev: msm: check for hdmi as primary msm: mdss: hdmi: parse extended EDID block map msm: mdss: hdmi: reset sink_caps before parsing EDID ARM: msm: dts: add splash memory region for APQ8098 msm: mdss: hdmi: skip pan_display during handoff net: ipc_router: Do not allow change of default security rule mm-camera2:isp2: Notify dual cam drop msm: mdss: mdp: fix parsing total number of displays Change-Id: I17f2df832abc746d23f89670c9a5b0aeb5e6d625
| * | | Merge "mdss: msm: hdmi: fix CEC broadcast loopback issue"Linux Build Service Account2020-03-15
| |\ \ \
| | * | | mdss: msm: hdmi: fix CEC broadcast loopback issueVenkata Prahlad Valluru2020-03-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A new logical address is searched and allocated when HDMI hotplug interrupt happens. But there might be pending broadcast messages which are being handled with the old logical address, then the messages are received back again causing loopback issue. To fix this, abort CEC message sending if the message is broadcasting and the sender's logical address is different than the current logical address. Change-Id: I26c487bac8749c9de81b176d611f1263eab0d9ad Signed-off-by: Venkata Prahlad Valluru <vvalluru@codeaurora.org>
| | * | | mdss: msm: hdmi: use circular buffer for CEC rxVenkata Prahlad Valluru2020-03-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There's only one CEC message buffer which could be overwritten if the next interrupt happens before the workthread reads the buffer. To resolve this, defined 4 circular buffers (practially 3 due to linux circular buffer limitation) to rotate the buffer. Since CEC is slow bus, 3 buffers should be enough to avoid potential message overwriting. Change-Id: I538c5902e95edb2231077c1c03a73f690ce68f1a Signed-off-by: Venkata Prahlad Valluru <vvalluru@codeaurora.org>
| | * | | mdss: msm: hdmi: add CEC clear_logical_addr sysnodeVenkata Prahlad Valluru2020-03-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the logical address is cleared, CEC hal sets the logical address to 15 but kernel cannot determine whether the logical address is cleared or set to 15. To clearly detect that the logical address is cleared, a new sysnode "clear_logical_addr" is added. If clear_logical_addr is set to 1, then kernel ignores received CEC messages until it's reset to 0. Change-Id: I517a3054c0816e774836767f3e0e47f92b395666 Signed-off-by: Venkata Prahlad Valluru <vvalluru@codeaurora.org>
| | * | | fbdev: msm: hdmi: read CEC msg before clearing interruptVenkata Prahlad Valluru2020-03-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Read CEC msg in ISR itself and then trigger work queue. Change-Id: Ib40e544849e3b3338a412b9fa5ba737bfc13dad9 Signed-off-by: Venkata Prahlad Valluru <vvalluru@codeaurora.org>
| * | | | msm: mdss: hdmi: reset deep_color before parsing EDIDNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reset previous EDID's deep_color value before parsing new EDID. HDMI driver is already checking if sink supports deep color or not using hdmi_tx_sink_dc_support function. Remove dc_support check which is redundant. Change-Id: I7b95310ba6c7451a86ba7a536a6d59b7f0c98edd Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: mdp: update CDM CSC coefficients during HDR playbackNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On HDR playback, update CDM CSC coefficients from Rec709 to BT2020, so that RGB will be converted to YUV444 and then to YUV420 in BT2020 colorspace. Once HDR playback is done, reset CDM CSC coefficients to default Rec709 values. Change-Id: Ib3ab4fb61fc3392d76cf138cc4a20d4bc55ed016 Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: hdmi: update colorimetry in AVI infoframeNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On HDR stream playback, if sink supports BT2020 standard, update colorimetry info of AVI infoframe to BT2020 standard. On completion of HDR playback, update colorimetry back to default value in AVI infoframe. Change-Id: Icaa314a95d1a27e41bb85d02de4a3ad8bcf79212 Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: hdmi: parse E-EDID's COLORIMETRY data blockNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As part of EDID parser, parse E-EDID's COLORIMETRY data block. Change-Id: I37fb2a436e5c2520b3e0d0c7411047514aecfbcf Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: hdmi: modify min_enc_level logicNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now display HAL will call hdcp library's min_enc_level sysfs entry instead of hdcp2p2's min_enc_level sysfs entry. This will make sure hdcp lib to have better control on content type transmission. hdcp lib will notify hdcp2p2 driver regarding new encryption level. Change-Id: Ibf3c51f7f8ad7db2520a434308361c31379c4948 Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: edid: conditionally set rgb_support for Y420 EDID modesNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As part of Y420VDB, an EDID mode might have been already added to the mode_list supporting only Y420 sampling mode. And later while parsing VDB block, for such EDID modes, set rgb_support flag only if its TMDS clock is within max TMDS clock. Change-Id: Ieaa9e0fc82d1fd81f8ea07829da6c1b32ef6018a Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: hdmi: validate EDID modes against max refresh rateVenkata Prahlad Valluru2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not support EDID's DTD modes whose refresh rate is greater than max supported refresh rate. Change-Id: I9e5e5367d38b482fff210d35cad89455656d33fe Signed-off-by: Venkata Prahlad Valluru <vvalluru@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: hdmi: set the output bitdepthNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Maintain the correct output bit depth value if HDMI driver is enabling HDMI output with deep color. Change-Id: I8bf39fe2471c4857f54540235543ae74283bccf4 Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: edid: modify the extended data block's length checkNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | EDID parser is validating the minimum length of Extended data blocks before parsing them. Current minimum length is 2 bytes but some extended data block like Y420CMDB's length can be 1 data byte. Modify the minimum length to 1 data byte. Change-Id: Iecbfbfa216160a93101a8051cd1ddef5c0426e77 Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: hdmi: handle wake_irq on suspend/resumeNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Enable wake_irq on device suspend to receive CEC/HPD interrupts when device is in deep suspend state. Disable wake_irq on device resume. Change-Id: I058b4354c1690e23243107310bf9e3563cf2c16e Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: hdmi: handle HPD disconnect event during suspendNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On device suspend, HDMI fb node is powered down. If HDMI cable is now disconnected in suspend state, even though DISCONNECT event is notified to display HAL to close HDMI fb node, fb driver early returns since this fb node is already powered off. As a result, HPD polarity is never configured to detect HPD high (connect) and no subsequent HPD connections will be ever detected. So on receiving HPD Disconnect event, configure HPD polarity to detect HPD High if HDMI panel is already powered off. Also make sure no HPD event is notified if same event is already notified and waiting for completion. Change-Id: I839b07f39eb5c2c24c249260cb482ae39b9bc771 Signed-off-by: Narender Ankam <nankam@codeaurora.org>
| * | | | msm: mdss: hdmi: set colorimetry info in AVI infoframeNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If output colorspace is YCbCr, set colorimetry information as per vertical active line count. Change-Id: Id615bfbe979cb4fe7ffe8f31d29aae9299d480b6 Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: hdmi: set quantization range in AVI infoframeNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CE video formats are encoded using Limited Range levels and IT video formats are encoded using Full Range levels. Set RGB and YCbCr Quantization levels information in AVI infoframe to Limited or Full Range levels based on CE or IT video format. Change-Id: Iff03af7f6b733d57625338b5d6edd7467bd2612c Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: mdp: configure CSC_10 to set correct quantization rangeNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For external HDMI display, as per CEA-861 spec, any CE video format shall be encoded either in RGB or YCbCr using Limited Range levels. And any IT video format shall be encoded in RGB using Full Range levels. Add 8bit and 10bit CSC config parameters for missing YCbCr_709_FR and RGB_L colorspaces and use MDP_CDM_0 module to set RGB or YCbCr quantization range levels for a CE or IT video format accordingly. Change-Id: Icecfdf0d1d49e17672df2360933d33a48d485892 Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: hdmi: check if given resolution is CE video formatNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As per CEA-861 spec, any standard resolution ranging from VIC=2 to VIC=107 are CE video formats. All other non standard resolutions and VIC=1 (640x480p) are IT video formats. Check if the output video format timing is a CE video format or an IT video format. Change-Id: I26405e1cb77a89ea81acb633ee2475021d61f116 Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: hdcp: read V' only for non-zero device count repeaterNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For repeaters having zero device count, the HDCP CTS expects the device under test to either read V' and perform full authentication or not read V' and re-authenticate. Current HDCP driver reads V' and also re-authenticates causing a failure of zero device count repeater test cases. Fix this issue by implementing the correct sequence in case of zero downstream devices. Change-Id: I8f9980196c46c7f9bea56501e1f047e58dfb091d Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: hdmi: set max tmds clock rate correctlyNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While parsing HDMI 1.4 VSDB or HDMI Forum VSDB, set max tmds clock rate only if respective byte is a non zero value. Change-Id: I07b51156038c8b8914f6f1fc1527eaad8a99d7a1 Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: fb: fix panel reconfiguration check for format changeVenkata Prahlad Valluru2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously output_format is not updated. Update the new output_format in panel_info. Change-Id: I8ee76a9fabb5d2a9aa93d5c14deeeef9b26ba78b Signed-off-by: Venkata Prahlad Valluru <vvalluru@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: mdp: do null commit during panel reconfigurationVenkata Prahlad Valluru2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If panel reconfiguration is triggered during splash handoff, splash cleanup will be called before any commit. This will cause control path reset due to no bandwidth votes. Add null commit during splash cleanup in case of panel reconfiguration. Change-Id: If500fdfb3913726d4d8462d38c200797256b4f46 Signed-off-by: Venkata Prahlad Valluru <vvalluru@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: hdmi: modify HPD polarity change setupNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If HDMI cable is disconnected before changing HPD polarity to detect disconnection, HDMI HW is unable to detect HPD change thus no HPD disconnection interrupt is being triggered. Change the HPD polarity to detect disconnection right after receiving HPD connection event. Also synchronize the HPD event notifications to display HAL. Change-Id: I0c46907cefa6a2ef328c546921e5d98a7bd4c6fd Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: hdmi: check HDMI 1.4 VSDB lengthNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | HDMI 1.4 Vendor Specific data block length can vary from minimum 5 bytes to maximum 31 bytes. Always check the extension field bytes against the max length of this data block. Also check if this data block is an HDMI 1.4 VSDB before parsing extension bytes. Change-Id: I1b89f12334d44ce9ef49b440c81a0a7f8ee1fe6c Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: hdmi: set max TMDS clock rateNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pxl clock frequency of every video timing parsed from EDID is being checked against max TMDS clock rate supported by HDMI controller without considering HDMI Sink's max TMDS clock rate. HDMI Sink's max TMDS clock rate will be indicated in HDMI 1.4 VSDB or HDMI Forum VSDB if available. Set the minimum of HDMI controller's and HDMI Sink's max TMDS clock rate and then check if video timings are supported or not. Change-Id: I9668f77edebc5de16d24e9892ba06f9f64f0f743 Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: hdmi: fix parsing Y420CMDB block of EDIDNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | YCbCr 4:2:0 Capability Map Data Block (Y420CMDB) indicates exactly which SVDs listed in Video Data Block also support YCbCr 4:2:0 sampling mode in addition to RGB mode. But this data block is being parsed before SVDs are parsed where the SVD list is NULL. So, as part of Y420CMDB parsing, for now store the SVD list supporting Y420 mode and later add Y420 support to the SVDs while parsing Video Data Block. Change-Id: I96f522663de8c847f3b146003e68801ae7d22bd5 Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: hdmi: override default resolution after parsing EDIDNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | HDMI driver registers fb device with default resolution. This default resolution is being added to the list of supported modes. But there is a chance that this default resolution may not be supported by downstream HDMI sink device. So, always override the default resolution with first supported mode parsed from EDID. Change-Id: I5d4ad735f2e0f5bef9582f19e479b0db43623b25 Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: hdmi: fix HDMI panel reconfiguration issueNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | New video timing's VIC value is compared against previously configured HDMI controller's VIC value. If both the VICs are same (though their video timing parameters are different), MDSS skips reconfiguration. Reset HDMI controller's VIC value for every cable connection so that MDSS can reconfigure the panel with new video timing. Change-Id: I3d26669f8853c4b84e5be2c4a26931f299daa8c5 Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: hdmi: fix handoff if deep color is supported by TVVenkata Prahlad Valluru2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since bootloader doesn't support deep color, do panel reconfig during handoff. Change-Id: I878b17385a1e3aa50735361fbc404088af4d3eb4 Signed-off-by: Venkata Prahlad Valluru <vvalluru@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: hdmi: support only progressive DTDsNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not support interlaced timings while parsing EDID DTDs. Change-Id: I9ef6e820a49224fbf3bd6373c6722ce44f4bd3c9 Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | fbdev: msm: check for hdmi as primaryraghavendra ambadas2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | skip pan display operation if found hdmi as primary and handoff is pending. This check will help pan display path to execute for primary display in recovery mode. Change-Id: Iedd7e6b98f62d3a0d5b9cdda4ba4591ed8bfac68 Signed-off-by: Raghavendra Ambadas <rambad@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: hdmi: parse extended EDID block mapNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As part of EDID parser, add support to parse extended EDID Block Map (0xf0) block and parse all subsequent CEA (0x02) extended EDID Blocks. Change-Id: I581efae59dde3abf6f297d5a2519ac0088554b64 Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: hdmi: reset sink_caps before parsing EDIDNarender Ankam2020-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Within EDID parser's data structure, sink_caps of previous EDID are being retained. Reset sink_caps before parsing new EDID. Change-Id: I7927161256ec87ab77b26a9d7bc5e0cd1df5583b Signed-off-by: Narender Ankam <nankam@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | | msm: mdss: hdmi: skip pan_display during handoffVenkata Prahlad Valluru2020-03-02
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In case of HDMI as primary, skip pan_display until handoff completes. Change-Id: I5af8142292bcac0f085fffab1af99f635d3ff304 Signed-off-by: Venkata Prahlad Valluru <vvalluru@codeaurora.org> Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
| * | | msm: mdss: mdp: fix parsing total number of displaysVenkata Prahlad Valluru2020-01-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Interpret each interface of INTF_SEL register as 1 instead of respective byte value. Change-Id: I475d9d7770ccfb444264d872f7b279b518e6c1b3 Signed-off-by: Venkata Prahlad Valluru <vvalluru@codeaurora.org>
* | | | Merge branch 'android-4.4-p' of ↵Michael Bestas2020-03-08
|\ \ \ \ | | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://android.googlesource.com/kernel/common into lineage-17.1-caf-msm8998 This brings LA.UM.8.4.r1-05200-8x98.0 up to date with https://android.googlesource.com/kernel/common/ android-4.4-p at commit: 4db1ebdd40ec0 FROMLIST: HID: nintendo: add nintendo switch controller driver Conflicts: arch/arm64/boot/Makefile arch/arm64/kernel/psci.c arch/x86/configs/x86_64_cuttlefish_defconfig drivers/md/dm.c drivers/of/Kconfig drivers/thermal/thermal_core.c fs/proc/meminfo.c kernel/locking/spinlock_debug.c kernel/time/hrtimer.c net/wireless/util.c Change-Id: I5b5163497b7c6ab8487ffbb2d036e4cda01ed670
| * | | Merge 4.4.212 into android-4.4-pGreg Kroah-Hartman2020-01-29
| |\ \ \ | | | |/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes in 4.4.212 xfs: Sanity check flags of Q_XQUOTARM call powerpc/archrandom: fix arch_get_random_seed_int() mt7601u: fix bbp version check in mt7601u_wait_bbp_ready drm/virtio: fix bounds check in virtio_gpu_cmd_get_capset() ALSA: hda: fix unused variable warning ALSA: usb-audio: update quirk for B&W PX to remove microphone staging: comedi: ni_mio_common: protect register write overflow pcrypt: use format specifier in kobject_add exportfs: fix 'passing zero to ERR_PTR()' warning drm/dp_mst: Skip validating ports during destruction, just ref pinctrl: sh-pfc: r8a7740: Add missing REF125CK pin to gether_gmii group pinctrl: sh-pfc: r8a7740: Add missing LCD0 marks to lcd0_data24_1 group pinctrl: sh-pfc: r8a7791: Remove bogus ctrl marks from qspi_data4_b group pinctrl: sh-pfc: r8a7791: Remove bogus marks from vin1_b_data18 group pinctrl: sh-pfc: sh73a0: Add missing TO pin to tpu4_to3 group pinctrl: sh-pfc: r8a7794: Remove bogus IPSR9 field pinctrl: sh-pfc: sh7734: Add missing IPSR11 field pinctrl: sh-pfc: sh7269: Add missing PCIOR0 field pinctrl: sh-pfc: sh7734: Remove bogus IPSR10 value Input: nomadik-ske-keypad - fix a loop timeout test clk: highbank: fix refcount leak in hb_clk_init() clk: qoriq: fix refcount leak in clockgen_init() clk: socfpga: fix refcount leak clk: samsung: exynos4: fix refcount leak in exynos4_get_xom() clk: imx6q: fix refcount leak in imx6q_clocks_init() clk: imx6sx: fix refcount leak in imx6sx_clocks_init() clk: imx7d: fix refcount leak in imx7d_clocks_init() clk: vf610: fix refcount leak in vf610_clocks_init() clk: armada-370: fix refcount leak in a370_clk_init() clk: kirkwood: fix refcount leak in kirkwood_clk_init() clk: armada-xp: fix refcount leak in axp_clk_init() IB/usnic: Fix out of bounds index check in query pkey RDMA/ocrdma: Fix out of bounds index check in query pkey media: s5p-jpeg: Correct step and max values for V4L2_CID_JPEG_RESTART_INTERVAL crypto: tgr192 - fix unaligned memory access ASoC: imx-sgtl5000: put of nodes if finding codec fails rtc: cmos: ignore bogus century byte tty: ipwireless: Fix potential NULL pointer dereference rtc: ds1672: fix unintended sign extension rtc: 88pm860x: fix unintended sign extension rtc: 88pm80x: fix unintended sign extension rtc: pm8xxx: fix unintended sign extension fbdev: chipsfb: remove set but not used variable 'size' pinctrl: sh-pfc: emev2: Add missing pinmux functions pinctrl: sh-pfc: r8a7791: Fix scifb2_data_c pin group pinctrl: sh-pfc: sh73a0: Fix fsic_spdif pin groups block: don't use bio->bi_vcnt to figure out segment number vfio_pci: Enable memory accesses before calling pci_map_rom cdc-wdm: pass return value of recover_from_urb_loss drm/nouveau/bios/ramcfg: fix missing parentheses when calculating RON drm/nouveau/pmu: don't print reply values if exec is false ASoC: qcom: Fix of-node refcount unbalance in apq8016_sbc_parse_of() fs/nfs: Fix nfs_parse_devname to not modify it's argument clocksource/drivers/sun5i: Fail gracefully when clock rate is unavailable ARM: 8847/1: pm: fix HYP/SVC mode mismatch when MCPM is used regulator: wm831x-dcdc: Fix list of wm831x_dcdc_ilim from mA to uA nios2: ksyms: Add missing symbol exports scsi: megaraid_sas: reduce module load time xen, cpu_hotplug: Prevent an out of bounds access net: sh_eth: fix a missing check of of_get_phy_mode media: ivtv: update *pos correctly in ivtv_read_pos() media: cx18: update *pos correctly in cx18_read_pos() media: wl128x: Fix an error code in fm_download_firmware() media: cx23885: check allocation return jfs: fix bogus variable self-initialization m68k: mac: Fix VIA timer counter accesses ARM: OMAP2+: Fix potentially uninitialized return value for _setup_reset() media: davinci-isif: avoid uninitialized variable use spi: tegra114: clear packed bit for unpacked mode spi: tegra114: fix for unpacked mode transfers soc/fsl/qe: Fix an error code in qe_pin_request() spi: bcm2835aux: fix driver to not allow 65535 (=-1) cs-gpios ehea: Fix a copy-paste err in ehea_init_port_res scsi: qla2xxx: Unregister chrdev if module initialization fails ARM: pxa: ssp: Fix "WARNING: invalid free of devm_ allocated data" hwmon: (w83627hf) Use request_muxed_region for Super-IO accesses tipc: set sysctl_tipc_rmem and named_timeout right range powerpc: vdso: Make vdso32 installation conditional in vdso_install media: ov2659: fix unbalanced mutex_lock/unlock 6lowpan: Off by one handling ->nexthdr dmaengine: axi-dmac: Don't check the number of frames for alignment ALSA: usb-audio: Handle the error from snd_usb_mixer_apply_create_quirk() packet: in recvmsg msg_name return at least sizeof sockaddr_ll ASoC: fix valid stream condition IB/mlx5: Add missing XRC options to QP optional params mask iommu/vt-d: Make kernel parameter igfx_off work with vIOMMU media: omap_vout: potential buffer overflow in vidioc_dqbuf() media: davinci/vpbe: array underflow in vpbe_enum_outputs() platform/x86: alienware-wmi: printing the wrong error code netfilter: ebtables: CONFIG_COMPAT: reject trailing data after last rule ARM: riscpc: fix lack of keyboard interrupts after irq conversion kdb: do a sanity check on the cpu in kdb_per_cpu() backlight: lm3630a: Return 0 on success in update_status functions thermal: cpu_cooling: Actually trace CPU load in thermal_power_cpu_get_power spi: spi-fsl-spi: call spi_finalize_current_message() at the end misc: sgi-xp: Properly initialize buf in xpc_get_rsvd_page_pa iommu: Use right function to get group for device signal/cifs: Fix cifs_put_tcp_session to call send_sig instead of force_sig inet: frags: call inet_frags_fini() after unregister_pernet_subsys() media: vivid: fix incorrect assignment operation when setting video mode powerpc/cacheinfo: add cacheinfo_teardown, cacheinfo_rebuild drm/msm/mdp5: Fix mdp5_cfg_init error return net/af_iucv: always register net_device notifier ASoC: ti: davinci-mcasp: Fix slot mask settings when using multiple AXRs rtc: pcf8563: Clear event flags and disable interrupts before requesting irq drm/msm/a3xx: remove TPL1 regs from snapshot iommu/amd: Make iommu_disable safer mfd: intel-lpss: Release IDA resources devres: allow const resource arguments net: pasemi: fix an use-after-free in pasemi_mac_phy_init() scsi: libfc: fix null pointer dereference on a null lport libertas_tf: Use correct channel range in lbtf_geo_init usb: host: xhci-hub: fix extra endianness conversion mic: avoid statically declaring a 'struct device'. x86/kgbd: Use NMI_VECTOR not APIC_DM_NMI ALSA: aoa: onyx: always initialize register read value cifs: fix rmmod regression in cifs.ko caused by force_sig changes crypto: caam - free resources in case caam_rng registration failed ext4: set error return correctly when ext4_htree_store_dirent fails ASoC: es8328: Fix copy-paste error in es8328_right_line_controls ASoC: cs4349: Use PM ops 'cs4349_runtime_pm' ASoC: wm8737: Fix copy-paste error in wm8737_snd_controls signal: Allow cifs and drbd to receive their terminating signals dmaengine: dw: platform: Switch to acpi_dma_controller_register() mac80211: minstrel_ht: fix per-group max throughput rate initialization mips: avoid explicit UB in assignment of mips_io_port_base ahci: Do not export local variable ahci_em_messages Partially revert "kfifo: fix kfifo_alloc() and kfifo_init()" power: supply: Init device wakeup after device_add() x86, perf: Fix the dependency of the x86 insn decoder selftest bcma: fix incorrect update of BCMA_CORE_PCI_MDIO_DATA iio: dac: ad5380: fix incorrect assignment to val ath9k: dynack: fix possible deadlock in ath_dynack_node_{de}init net: sonic: return NETDEV_TX_OK if failed to map buffer Btrfs: fix hang when loading existing inode cache off disk hwmon: (shtc1) fix shtc1 and shtw1 id mask net: sonic: replace dev_kfree_skb in sonic_send_packet net/rds: Fix 'ib_evt_handler_call' element in 'rds_ib_stat_names' iommu/amd: Wait for completion of IOTLB flush in attach_device net: hisilicon: Fix signedness bug in hix5hd2_dev_probe() net: broadcom/bcmsysport: Fix signedness in bcm_sysport_probe() net: ethernet: stmmac: Fix signedness bug in ipq806x_gmac_of_parse() mac80211: accept deauth frames in IBSS mode llc: fix another potential sk_buff leak in llc_ui_sendmsg() llc: fix sk_buff refcounting in llc_conn_state_process() net: stmmac: fix length of PTP clock's name string drm/msm/dsi: Implement reset correctly dmaengine: imx-sdma: fix size check for sdma script_number net: qca_spi: Move reset_count to struct qcaspi media: ov6650: Fix incorrect use of JPEG colorspace media: ov6650: Fix some format attributes not under control media: ov6650: Fix .get_fmt() V4L2_SUBDEV_FORMAT_TRY support MIPS: Loongson: Fix return value of loongson_hwmon_init net: neigh: use long type to store jiffies delta packet: fix data-race in fanout_flow_is_huge() dmaengine: ti: edma: fix missed failure handling drm/radeon: fix bad DMA from INTERRUPT_CNTL2 arm64: dts: juno: Fix UART frequency m68k: Call timer_interrupt() with interrupts disabled can, slip: Protect tty->disc_data in write_wakeup and close with RCU firestream: fix memory leaks net: cxgb3_main: Add CAP_NET_ADMIN check to CHELSIO_GET_MEM net, ip_tunnel: fix namespaces move net_sched: fix datalen for ematch net: usb: lan78xx: Add .ndo_features_check hwmon: (adt7475) Make volt2reg return same reg as reg2volt input Input: keyspan-remote - fix control-message timeouts ARM: 8950/1: ftrace/recordmcount: filter relocation types mmc: sdhci: fix minimum clock rate for v3 controller Input: sur40 - fix interface sanity checks Input: gtco - fix endpoint sanity check Input: aiptek - fix endpoint sanity check hwmon: (nct7802) Fix voltage limits to wrong registers scsi: RDMA/isert: Fix a recently introduced regression related to logout tracing: xen: Ordered comparison of function pointers do_last(): fetch directory ->i_mode and ->i_uid before it's too late iio: buffer: align the size of scan bytes to size of the largest element scsi: iscsi: Avoid potential deadlock in iscsi_if_rx func md: Avoid namespace collision with bitmap API bitmap: Add bitmap_alloc(), bitmap_zalloc() and bitmap_free() netfilter: ipset: use bitmap infrastructure completely net/x25: fix nonblocking connect libertas: Fix two buffer overflows at parsing bss descriptor Linux 4.4.212 Change-Id: Ic427b213b19cb47b394a4ddc4ed48c7278376c71 Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
| | * | fbdev: chipsfb: remove set but not used variable 'size'YueHaibing2020-01-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ Upstream commit 8e71fa5e4d86bedfd26df85381d65d6b4c860020 ] Fixes gcc '-Wunused-but-set-variable' warning: drivers/video/fbdev/chipsfb.c: In function 'chipsfb_pci_init': drivers/video/fbdev/chipsfb.c:352:22: warning: variable 'size' set but not used [-Wunused-but-set-variable] Fixes: 8c8709334cec ("[PATCH] ppc32: Remove CONFIG_PMAC_PBOOK"). Signed-off-by: YueHaibing <yuehaibing@huawei.com> Acked-by: Michael Ellerman <mpe@ellerman.id.au> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Christophe Leroy <christophe.leroy@c-s.fr> [b.zolnierkie: minor commit summary and description fixups] Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
* | | | msm: mdss: Remove unnecessary parentheses in is_valid_calib_dspp_addrNathan Chancellor2020-02-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clang warns: ../drivers/video/fbdev/msm/mdss_mdp_pp.c:6923:19: warning: equality comparison with extraneous parentheses [-Wparentheses-equality] } else if ((ptr == base + MDSS_MDP_REG_DSPP_DITHER_DEPTH)) { ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../drivers/video/fbdev/msm/mdss_mdp_pp.c:6923:19: note: remove extraneous parentheses around the comparison to silence this warning } else if ((ptr == base + MDSS_MDP_REG_DSPP_DITHER_DEPTH)) { ~ ^ ~ ../drivers/video/fbdev/msm/mdss_mdp_pp.c:6923:19: note: use '=' to turn this equality comparison into an assignment } else if ((ptr == base + MDSS_MDP_REG_DSPP_DITHER_DEPTH)) { ^~ = Fixes: 94d860d801b8 ("msm: mdss: Support post processing blocks address access") Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
* | | | msm: mdss: Remove pointless NULL check in pp_ad_calc_blNathan Chancellor2020-02-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clang warns: ../drivers/video/fbdev/msm/mdss_mdp_pp.c:3372:8: warning: address of array 'ad->bl_att_lut' will always evaluate to 'true' [-Wpointer-bool-conversion] !ad->bl_att_lut) { ~~~~~^~~~~~~~~~ Fixes: 0e2fd71526fb ("msm: mdss: Upgrade and fix AD implementation") Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
* | | | msm: mdss: Remove unnecessary parentheses in mdss_check_dsi_ctrl_statusNathan Chancellor2020-02-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clang warns: ../drivers/video/fbdev/msm/dsi_status_6g.c:171:44: warning: equality comparison with extraneous parentheses [-Wparentheses-equality] if ((pstatus_data->mfd->panel_power_state == MDSS_PANEL_POWER_ON)) { ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ../drivers/video/fbdev/msm/dsi_status_6g.c:171:44: note: remove extraneous parentheses around the comparison to silence this warning if ((pstatus_data->mfd->panel_power_state == MDSS_PANEL_POWER_ON)) { ~ ^ ~ ../drivers/video/fbdev/msm/dsi_status_6g.c:171:44: note: use '=' to turn this equality comparison into an assignment if ((pstatus_data->mfd->panel_power_state == MDSS_PANEL_POWER_ON)) { ^~ = 1 warning generated. Fixes: b9095befda98 ("msm: mdss: add support for different panel power states") Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>