summaryrefslogtreecommitdiff
path: root/drivers/video (follow)
Commit message (Collapse)AuthorAge
...
| | * | | | | | | | | | | | Merge tag 'v4.4.46' into android-4.4.yDmitry Shmidt2017-02-01
| | |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the 4.4.46 stable release
| | * | | | | | | | | | | | Merge remote-tracking branch 'common/android-4.4' into android-4.4.yDmitry Shmidt2016-11-21
| | |\ \ \ \ \ \ \ \ \ \ \ \
| | | * | | | | | | | | | | | ANDROID: video: goldfishfb: fix platform_no_drv_owner.cocci warningskbuild test robot2016-11-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | drivers/video/fbdev/goldfishfb.c:318:3-8: No need to set .owner here. The core will do it. Remove .owner field if calls are used which set it automatically Generated by: scripts/coccinelle/api/platform_no_drv_owner.cocci CC: Greg Hackmann <ghackmann@google.com> Signed-off-by: Fengguang Wu <fengguang.wu@intel.com> Signed-off-by: Guenter Roeck <groeck@chromium.org>
| | | * | | | | | | | | | | | ANDROID: goldfish_fb: Set pixclock = 0Christoffer Dall2016-11-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | User space Android code identifies pixclock == 0 as a sign for emulation and will set the frame rate to 60 fps when reading this value, which is the desired outcome. Change-Id: I759bf518bf6683446bc786bf1be3cafa02dd8d42 Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| | | * | | | | | | | | | | | ANDROID: goldfish: Enable ACPI-based enumeration for goldfish framebufferYu Ning2016-11-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Follow the same way in which ACPI was enabled for goldfish battery. See commit d3be10e for details. Note that this patch also depends on commit af33cac. Change-Id: Ic63b6e7e0a4b9896ef9a9d0ed135a7796a4c1fdb Signed-off-by: Yu Ning <yu.ning@intel.com>
| | | * | | | | | | | | | | | ANDROID: video: goldfishfb: add devicetree bindingsGreg Hackmann2016-11-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I5f4ba861b981edf39af537001f8ac72202927031 Signed-off-by: Greg Hackmann <ghackmann@google.com>
| | * | | | | | | | | | | | | Merge remote-tracking branch 'common/android-4.4' into android-4.4.yDmitry Shmidt2016-11-15
| | |\| | | | | | | | | | | |
| | | * | | | | | | | | | | | ANDROID: video: adf: Avoid directly referencing user pointersJonathan Hamilton2016-11-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Enabling KASAN on a kernel using ADF causes a number of places where user-supplied pointers to ioctls pointers are directly dereferenced without copy_from_user or access_ok. Bug: 31806036 Signed-off-by: Jonathan Hamilton <jonathan.hamilton@imgtec.com> Change-Id: I6e86237aaa6cec0f6e1c385336aefcc5332080ae
| | * | | | | | | | | | | | | Merge tag 'v4.4.28' into android-4.4.yDmitry Shmidt2016-10-28
| | |\ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the 4.4.28 stable release
| | * \ \ \ \ \ \ \ \ \ \ \ \ \ Merge tag 'v4.4.16' into android-4.4.yDmitry Shmidt2016-08-01
| | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ | | | |_|/ / / / / / / / / / / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the 4.4.16 stable release Change-Id: Ibaf7b7e03695e1acebc654a2ca1a4bfcc48fcea4
| | * | | | | | | | | | | | | | video: adf: Set ADF_MEMBLOCK to booleanGuenter Roeck2016-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Attempts to build with CONFIG_ADF_MEMBLOCK=m result in the following build error. ERROR: "memblock_free" [drivers/video/adf/adf_memblock.ko] undefined! memblock_free() is marked as __init_memblock, so exporting it seems to be a bad idea. All other callers are only configurable into the kernel, so do the same with ADF_MEMBLOCK. Signed-off-by: Guenter Roeck <groeck@chromium.org>
| | * | | | | | | | | | | | | | video: adf: Fix modular buildGuenter Roeck2016-03-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Builds with ADF configured as module fail the following errors. ERROR: "adf_fops" [drivers/video/adf/adf_sysfs.ko] undefined! ERROR: "adf_obj_sysfs_find" [drivers/video/adf/adf_fops.ko] undefined! ERROR: "adf_buffer_cleanup" [drivers/video/adf/adf_fops.ko] undefined! ERROR: "adf_attachment_validate" [drivers/video/adf/adf_client.ko] undefined! ERROR: "adf_attachment_find" [drivers/video/adf/adf_client.ko] undefined! ERROR: "adf_buffer_mapping_cleanup" [drivers/video/adf/adf_client.ko] undefined! ERROR: "adf_attachment_free" [drivers/video/adf/adf_client.ko] undefined! ERROR: "adf_obj_find_event_refcount" [drivers/video/adf/adf_client.ko] undefined! ERROR: "adf_file_queue_event" [drivers/video/adf/adf.ko] undefined! ERROR: "adf_interface_sysfs_init" [drivers/video/adf/adf.ko] undefined! ERROR: "adf_interface_sysfs_destroy" [drivers/video/adf/adf.ko] undefined! ERROR: "adf_device_sysfs_init" [drivers/video/adf/adf.ko] undefined! ERROR: "adf_device_sysfs_destroy" [drivers/video/adf/adf.ko] undefined! ERROR: "adf_sysfs_destroy" [drivers/video/adf/adf.ko] undefined! ERROR: "adf_overlay_engine_sysfs_init" [drivers/video/adf/adf.ko] undefined! ERROR: "adf_overlay_engine_sysfs_destroy" [drivers/video/adf/adf.ko] undefined! ERROR: "adf_sysfs_init" [drivers/video/adf/adf.ko] undefined! If ADF is configured as module, each of the object files ends up being a separate module. Since the functions are used across the various files but not exported, this results in the observed build errors. Modify the Makefile to create a single module instead. Fixes: 066a50cee536 ("video: add atomic display framework") Signed-off-by: Guenter Roeck <groeck@chromium.org>
* | | | | | | | | | | | | | | | Merge "msm: mdss: Add check to avoid NULL pointer dereference"Linux Build Service Account2017-04-27
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | |_|_|_|_|_|_|_|_|/ / / / / / / |/| | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | | msm: mdss: Add check to avoid NULL pointer dereferenceSachin Bhayare2017-04-04
| | |_|_|_|_|/ / / / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add mfd NULL check to avoid NULL pointer dereference. Change-Id: I42ec3c73170765a008b9cae6f40a587afc818164 Signed-off-by: Sachin Bhayare <sachin.bhayare@codeaurora.org>
* | | | | | | | | | | | | | | Merge "msm: mdss: wait for pp done when switching from ON to LP1"Linux Build Service Account2017-04-25
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | |_|_|_|_|_|_|_|_|_|_|/ / / / |/| | | | | | | | | | | | | |
| * | | | | | | | | | | | | | msm: mdss: wait for pp done when switching from ON to LP1Rajkumar Subbiah2017-03-28
| | |_|_|_|_|_|_|_|_|_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a low power mode switch is initiated while a kickoff is in progress, the panel could be turned off before the current frame transfer is completed causing a display hang. This change recognizes this case and waits for the current frame to finish before initiating the power state switch. Change-Id: Ieea32acd67c56a7ed8a83ff92c3b49ad76d70086 Signed-off-by: Rajkumar Subbiah <rsubbia@codeaurora.org>
* | | | | | | | | | | | | | Merge "msm: mdss: fix a warning for unused value"Linux Build Service Account2017-04-24
|\ \ \ \ \ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | | | | | msm: mdss: fix a warning for unused valueAshish Garg2017-04-20
| | |_|/ / / / / / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Value computed is not being used in the statement which is causing a compilation error on some build flavors. Fix the issue by not computing the value as it is not needed. Change-Id: Ia628388deb3057da45989d6376503048b08e8167 Signed-off-by: Ashish Garg <ashigarg@codeaurora.org>
* | | | | | | | | | | | | | Merge "msm: mdss: Populate alpha for compat"Linux Build Service Account2017-04-24
|\ \ \ \ \ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | | | | | msm: mdss: Populate alpha for compatAnimesh Kishore2017-04-20
| | |_|_|_|_|_|_|_|_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Copy alpha explicitly from 32 bit layer structure to 64 bit layer structure. CRs-Fixed: 2034181 Change-Id: Iba3e291a828975b8f909956405922d2564427092 Signed-off-by: Animesh Kishore <animeshk@codeaurora.org>
* | | | | | | | | | | | | | Merge "msm: mdss: Separate PP programming to advanced and deferred modes"Linux Build Service Account2017-04-24
|\ \ \ \ \ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | | | | | msm: mdss: Separate PP programming to advanced and deferred modesSravan Kumar D.V.N2017-04-21
| | |_|_|_|_|_|_|_|/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Deferring all the PP features programming to post pingpong done in command mode panels causing performance issues in certain use cases. To fix this, defer only the programming of features with single buffered registers and program features with double buffered registers before wait for pingpong. Change-Id: I6a1e8114b50c558f667bde4db5c0ba57009d6f50 Signed-off-by: Sravan Kumar D.V.N <sravank1@codeaurora.org>
* | | | | | | | | | | | | | Merge "msm: mdss: check for audio support before notifying frameworks"Linux Build Service Account2017-04-21
|\ \ \ \ \ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | | | | | msm: mdss: check for audio support before notifying frameworksSandeep Panda2017-04-19
| | |_|_|_|_|_|_|_|_|_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the current implementation DBA driver always assumes the TV connected is supporting audio. However if the TV connected is in DVI mode or it's EDID does not contain any audio block then it will not support audio data. Hence after parsing EDID, check if the connected TV has support for audio and accordingly configure and send HPD events to audio framework. Change-Id: Id1d175b9c0c1c07bcb4447eeaa907a17c15df098 Signed-off-by: Sandeep Panda <spanda@codeaurora.org> Signed-off-by: Vishnuvardhan Prodduturi <vproddut@codeaurora.org>
* | | | | | | | | | | | | | Merge "msm: mdss: add debug bus support for dsi block"Linux Build Service Account2017-04-21
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ | |_|/ / / / / / / / / / / / |/| | | | | | | | | | | | |
| * | | | | | | | | | | | | msm: mdss: add debug bus support for dsi blockSandeep Panda2017-04-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support to dump dsi debug bus registers to memory or print in xlog. This will be helpful in analyzing HW behavior more precisely while debugging DSI stability issues. Change-Id: I7735897d9f24ca06e15015cf0d277bfe800b35bf Signed-off-by: Sandeep Panda <spanda@codeaurora.org>
* | | | | | | | | | | | | | Merge "msm: mdss: fix race condition during mdp debugfs release"Linux Build Service Account2017-04-20
|\ \ \ \ \ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | | | | | msm: mdss: fix race condition during mdp debugfs releaseHarsh Sahu2017-04-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix race condition in the release of the mdp debugfs functions panel_debug_base_release and mdss_debug_base_release by adding the lock for unpreempted freeing of the buffer so that multiple concurrent processes cannot affect the release which can possibly lead to use-after-free operation on the buffer. Change-Id: I9586081b65ae2eb0e7f6e30c606ee748ae9ef7e8 Signed-off-by: Harsh Sahu <hsahu@codeaurora.org>
* | | | | | | | | | | | | | | Merge "msm: mdss: dp: gracefully handle cable disconnect"Linux Build Service Account2017-04-20
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | | | | | | msm: mdss: dp: gracefully handle cable disconnectAravind Venkateswaran2017-04-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the downstream DP device is physically disconnected, ensure that all pending events are removed and the event thread is parked. Reset all the software state so that subsequent connection events are handled correctly. CRs-Fixed: 2034023 Change-Id: Ie94b1da903b8e78509220e373bec4ff54026885c Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org>
* | | | | | | | | | | | | | | | Merge "msm: mdss: dp: fix HDCP 1.x state transitions"Linux Build Service Account2017-04-20
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | | | | | | | msm: mdss: dp: fix HDCP 1.x state transitionsTatenda Chipeperekwa2017-04-13
| |/ / / / / / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix HDCP 1.x state transitions by ensuring that transitions to authenticating state can be made from both an uninitialized and a failure state, and making sure that authentication thread is synchronously canceled before transitioning to a disabled state. CRs-Fixed: 2006096 Change-Id: Ic097e16451166f589acbd7c23f87bd9b4c1a65f3 Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
| * | | | | | | | | | | | | | | msm: mdss: dp: fix handling of EDID extension blocksTatenda Chipeperekwa2017-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Current implementation assumes that the first extension block of the EDID data always has the CEA extension tag. This is incorrect and can lead to incorrect parsing of resolution data. Fix this by removing the hardcoding of the extension tag for the first extension block. CRs-Fixed: 2027108 Change-Id: I5ef4cdb186591e291b2217db7ccec6f942d79ca4 Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
| * | | | | | | | | | | | | | | msm: mdss: dp: read the DPCD if the AUX setting have changedTatenda Chipeperekwa2017-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Trigger the reading of DPCD if there was a change in the AUX configuration caused by a failure while reading the EDID. This is required to ensure the integrity and validity of the sink capabilities read that will subsequently be used to establish the mainlink. CRs-Fixed: 2006096 Change-Id: If3a51b5efd9124fd20dc9860e5f2cdb4e466a2c6 Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
| * | | | | | | | | | | | | | | msm: mdss: dp: ignore PHY AUX stop errorAravind Venkateswaran2017-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ignore the PHY AUX stop error if we receive this error during an AUX transaction. We can safely ignore this error and proceed to read the buffered data from the hardware since this error happens after the data has been received by the AUX controller hardware. CRs-Fixed: 2006096 Change-Id: Idb3f0e59b572be565e7572db500699471665f287 Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org> Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
| * | | | | | | | | | | | | | | msm: mdss: dp: fix programming sequence for aux transactionsAravind Venkateswaran2017-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ensure that all previous interrupt status are cleared before triggering a new aux transaction, and do not set the NO_SEND_STOP request bit for read transactions to align with the hardware programming recommendations. CRs-Fixed: 2006096 Change-Id: Icc17ac7b09d70ab5b330189be38fa32e3bff850e Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org> Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
| * | | | | | | | | | | | | | | msm: mdss: dp: read edid data in shorter burst sizeAravind Venkateswaran2017-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Each block of EDID data is usually 128 bytes long. Reading each block in a single burst can sometimes result in incorrect or corrupted data returned from the sink. Add support to read EDID in shorter burst sizes and set the default burst size to 16 bytes. CRs-Fixed: 2006096 Change-Id: I681f2d2eb01de11eadc1857dd5089cbe35befad2 Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org> Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
| * | | | | | | | | | | | | | | msm: mdss: dp: fix EDID read sequenceAravind Venkateswaran2017-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update the EDID read sequence to first write the offset to request the appropriate EDID block prior to reading the EDID block data. In addition, write the correct segment address when reading more than two extension blocks. CRs-Fixed: 2006096 Change-Id: Ic4b2bd4d4cf9da5e247c5735b4e768b9e2b87b27 Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org> Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
| * | | | | | | | | | | | | | | msm: mdss: dp: retry failed AUX transactionsAravind Venkateswaran2017-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Retry AUX read/write transactions that have failed either due to the AUX controller hardware indicating an error via the ISR, or due to a software based timeout while waiting for transaction completion. The transaction retry strategy is as follows: first repeat the transaction using the same PHY AUX settings, and then retry the transaction using updated PHY AUX settings if repeating the transaction has failed. CRs-Fixed: 2006096 Change-Id: Id9c3c7ae1ab320540545b9c178d947a3cd023079 Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org> Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
| * | | | | | | | | | | | | | | msm: mdss: dp: update parsing of AUX controller configurationsTatenda Chipeperekwa2017-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make the parsing of the AUX controller configurations more extensible by adding support for multiple settings per configuration, as well as the parsing of the register offsets. This enables the extension to support different targets, and combinations of AUX controller settings depending on the use case. CRs-Fixed: 2006096 Change-Id: I4e6b623a4d9fafcfcc89477dfa57880eb798c350 Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
| * | | | | | | | | | | | | | | msm: mdss: dp: increase AUX controller hardware timeout limitsAravind Venkateswaran2017-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Increase the AUX controller hardware timeout limits to the maximum value supported. This increases the AUX controller hardware's robustness in handling transactions in the face of differing timing from one DisplayPort sink to another. CRs-Fixed: 2006096 Change-Id: Ia0da13720526a96f3a88a849043a3ffbb1185cf7 Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org> Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
| * | | | | | | | | | | | | | | msm: mdss: dp: add interrupt handling for PHY AUX errorsAravind Venkateswaran2017-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add interrupt handling for PHY AUX errors that might happen during AUX communication. Read the interrupt status and clear it before initiating the next AUX transaction. This will help identify any issues that result in AUX transaction failures. CRs-Fixed: 2006096 Change-Id: I0733bfb163c8c3c108002fbe4309e36dc105ccb8 Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org> Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
| * | | | | | | | | | | | | | | msm: mdss: dp: fix handling of branch devicesAravind Venkateswaran2017-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A branch device usually notifies a change in downstream connections using the HPD IRQ pulse. Handle this by checking for a change in downstream sink count and appropriately handling EDID reads. It is also possible that the branch device may not have any local EDID. In such cases, when the downstream sink count is zero, do not read EDID. CRs-Fixed: 1112711 Change-Id: I230560c995d7c3b395e37aef5483e5468e1d1dec Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org>
| * | | | | | | | | | | | | | | msm: mdss: dp: implement failsafe for delayed power off/on eventsTatenda Chipeperekwa2017-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement a failsafe mechanism that will prevent the DisplayPort driver from entering an irrecoverable state in the face of delayed power off/on events from the display framework. For example, the driver must indefinitely postpone the handling of other events from the sink until the power off event is complete, ensuring that there is no interleaving of events that could lead to a bad state, or un-clocked register access. CRs-Fixed: 2006096 Change-Id: I1bfa887ba5ee94cbf44c87aa0d60766cafc854b4 Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
* | | | | | | | | | | | | | | | Merge "msm: mdss: dp: always set default resolution"Linux Build Service Account2017-04-20
|\| | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | | msm: mdss: dp: always set default resolutionAravind Venkateswaran2017-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | EDID utility always lists the default resolution as part of the list of available modes. If the client does not specify a default resolution it can result in incorrect behavior. Ensure that the Display Port driver always initialized with a default resolution. CRs-Fixed: 2030915 Change-Id: Ib6c75d655e6fcbd5c792ca1aa9da6b08ba2f416e Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org>
* | | | | | | | | | | | | | | | Merge "msm: mdss: Ensure MDSS GDSC switched off during FB PM suspend"Linux Build Service Account2017-04-20
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | | | | | | | msm: mdss: Ensure MDSS GDSC switched off during FB PM suspendJayant Shekhar2017-04-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are some cases where MDSS GSDC is not turned off after FB PM suspend ever after clock ref count is 0 as runtime suspend is not triggered. Ensure that MDSS GDCC is toggled in these cases. Change-Id: I33389ad736960b619b32a9bec4b2b157eed4d20b Signed-off-by: Jayant Shekhar <jshekhar@codeaurora.org>
* | | | | | | | | | | | | | | | | Merge "msm: mdss: make panel status check and dfps update exclusive"Linux Build Service Account2017-04-20
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | | | | | | | | msm: mdss: make panel status check and dfps update exclusiveSandeep Panda2017-04-15
| | |_|_|_|/ / / / / / / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since on some platforms DSI_CMD_OFFSET register has become double buffered, so dynamic fps update and DSI DMA command transfer can not happen at the same time. This changes makes panel status check which in turn does a DSI DMA transfer, and dfps update mutually exclusive. Change-Id: If8591c55d31669dbf3f565db041c04bcd6cb616a Signed-off-by: Sandeep Panda <spanda@codeaurora.org>