Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

linux-yocto: enable display on QCM6490 IDP board #593

Open
wants to merge 5 commits into
base: master
Choose a base branch
from
Open
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -29,5 +29,5 @@ CONFIG_ATL1C=m
CONFIG_CAN=m
CONFIG_CAN_MCP251XFD=m

CONFIG_BACKLIGHT_PWM=m
CONFIG_DRM_PANEL_NOVATEK_NT36672E=m
CONFIG_BACKLIGHT_PWM=y
CONFIG_DRM_PANEL_NOVATEK_NT36672E=y
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please describe the issue that you have and how does this fix the issue?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

With the above configs set to m, when I tried initially it was working. But later on I found that on multiple reboots, it's not working most of the time. But when the above configs are set as y, the device boots to shell consistently. In the failure case, the device is getting stuck before UFS enumeration and hence the panel and backlight modules are not loaded.

DSI PHY supply(vreg_l10c_0p88) is shared among UFS and USB as well. We tried below experiments suspecting it is a shared resource issue:

  1. As the UFS enumeration is not happening, we tried removing the PHY supply reference from the driver, the PHY probe is going ahead, but the issue is still there.
  2. We removed disable vote on the PHY supply but the issue persists.

So, it's not related to the shared supply between DSI PHY and UFS.

Below are the last set of logs in the failure case:

[ 1.824887] platform ae01000.display-controller: Fixed dependency cycle(s) with /soc@0/display-subsystem@ae00000/dsi@ae94000
[ 1.837031] platform ae01000.display-controller: Fixed dependency cycle(s) with /soc@0/display-subsystem@ae00000/dsi@ae94000
[ 1.848618] platform ae94000.dsi: Fixed dependency cycle(s) with /soc@0/display-subsystem@ae00000/dsi@ae94000/panel@0
[ 1.859535] platform ae94000.dsi: Fixed dependency cycle(s) with /soc@0/display-subsystem@ae00000/display-controller@ae01000
[ 1.874211] msm_dsi ae94000.dsi: supply refgen not found, using dummy regulator
[ 1.882201] msm_dsi ae94000.dsi: Fixed dependency cycle(s) with /soc@0/display-subsystem@ae00000/dsi@ae94000/panel@0
[ 1.893073] mipi-dsi ae94000.dsi.0: Fixed dependency cycle(s) with /soc@0/display-subsystem@ae00000/dsi@ae94000
[ 1.904303] printk: console [netcon0] enabled
[ 1.908812] netconsole: network logging started
[ 1.919298] clk: Disabling unused clocks
[ 2.028658] scsi 0:0:0:49488: Well-known LUN MICRON MT256GARAT4U313Q 0104 PQ: 0 ANSI: 6
[ 2.041892] scsi 0:0:0:49476: Well-known LUN MICRON MT256GARAT4U313Q 0104 PQ: 0 ANSI: 6
[ 2.052772] scsi 0:0:0:49456: Well-known LUN MICRON MT256GARAT4U313Q 0104 PQ: 0 ANSI: 6

I tried debugging but I didn't get any breakthrough, so we decided to go with y.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This doesn't answer the question, why it is not working. So, the issue needs to be debugged and solved properly.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please consider discussing the topic with the UFS team and with @Mani-Sadhasivam , upstream ufs-qcom maintainer. Anyway, building the panel to the kernel is not a proper fix for the UFS issue.