DragonBoard 845c Android 13 HDMI Display not working

Newly purchased DragonBoard 845c board, dowloaded the latest available pre-build images (Android13) from the following link:

https://snapshots.linaro.org/96boards/dragonboard845c/linaro/aosp-master/

“adb devices”, “adb logcat” both comes up fine, however, no HDMI display. Tried different HDMI displays (both monitors and TV), all is black screen. Really appreciated if anyone can help out or advices. Thanks.

@pundiramit is it a known issue with latests android version? could it be that newer 845 require a hdmi bridge (lt9611) firmware update like rb5?

@HLDB845c There is a very rare display bug biting me on v6.0+ kernel versions where the display doesn’t come up (once in 20 reboots) but our daily builds at Linaro Snapshots run v5.15 kernel and it should just boot fine with HDMI display up and running unless there is an AOSP breakage/regression that day. And these builds run AOSP/master branch not Android13 release tag.

If you are specifically looking for a reference Android 13 build then please try these images Index of /~amit.pundir/db845c-userdebug-android13

@HLDB845c also how are you flashing the images? I suggest you run installer/db845c/flash-all-aosp.sh - device/linaro/dragonboard - Git at Google script. Please take care of the relative path of bootloader binaries and AOSP images in the script.

Also since you have a brand new board, I’m assuming that you have done the QDL recovery step mentioned on the getting started page. If not then please start with that.

@Loic I’m not aware of a newer lt9611 firmware for DB845c. Our daily builds boot fine as is, unless there is a new AOSP breakage that day.

@pundiramit what is the difference between “Linaro Snapshots” and
“repo init -u platform/manifest - Git at Google -b master” for DB845c?

I downloaded “boot.img, super.img, userdata.img, vendor_boot.img” from
https://snapshots.linaro.org/96boards/dragonboard845c/linaro/aosp-master/1205/
and flashed into my DB845c, now my DB845c is hosted, i.e. either “adb devices” or “fastboot devices” shows no device.

Before I flash the above, I had the images built from
“repo init -u platform/manifest - Git at Google -b master” pulled on 11/21/2022, although I did not have HDMI display, “adb devices” was o.k.

I assumed that both above have different kernel? By any chance, how can I recover, once I lost both “adb” and “fastboot”?

I did use “installer/db845c/flash-all-aosp.sh” to flash.

I forgot to mention that I did try both options in

to recover the board without success.

@pundiramit If I understand correctly, it is a known issue to manufacture of DB845c “new hardware” has HDMI OUT not working at all issue, the manufacture has released the fix for Android 10 on 10/2022 (one month ago) but has no plan to port it into Android 13. Do you have any of your DB845c purchased recently? As someone I know who bought DB845c two years ago, does not have this HDMI out issue either. But, he does have black screen issue if he flash the image built from

“repo init -u platform/manifest - Git at Google -b master”

but HDMI OUT is fine if he flashes with the pre-built image from

https://snapshots.linaro.org/96boards/dragonboard845c/linaro/aosp-master/1190/

In summary, it seems to me there are two issues:

  1. “repo init -u platform/manifest - Git at Google -b master” HDMI black screen issue with “new” or old DB845c.
  2. “new” as mine DB845c has HDMI bridge issue with both pre-built image from both
    Linaro Snapshots and image built from
    “repo init -u platform/manifest - Git at Google -b master”

@pundiramit @Loic I recovered my DB845c, back to “adb devices”, “adb logcat”, etc. except HDMI bridge is broken.

Based on what I understand from manufacture, is only one line change in lt9611.c. However, based on the source code I downloaded from
“repo init -u platform/manifest - Git at Google -b master” I do not have access to lt9611.c. I only sees lt960.ko. By any chance, could Linaro helps out?

Thanks.

–Hong

@HLDB845c Hi, Nice job on recovering your device. What helped?

Also, the “repo init…” steps download prebuilt kernel Image and modules. You can build your kernel by following official instructions here: Using Reference Boards  |  Android Open Source Project

Use common-android14-5.15 branch instead of common-android-mainline because of an upstream breakage we are working on.

Can you please share the lt9611.c change that fixed your issue. We should push it upstream.

@pundiramit Thank you for your reply. What I understand is that in lt9611.c (based on Android 10)

(after) line 376: lt9611_write(pdata, 0x28, 0x88);

(need to add) line 377: lt9611_write(pdata, 0x2a, 0x20);

(before) line 379: if (pclk > 150000) {

PS. Luckily, someone gave me a flat build (instead of flash build) for Android 10 for DB845c so that I can recover my board, and got back the “adb” as well as “fastboot”.

@pundiramit One update: I received a flat build for Android 10, which is released by the manufacture in 10/2022 (based on release note, the release has the above lt9611.c fix in it). After flash the flat build into my DB845c, the HDMI display does come up. So, I assume that if the same fix gets to port into Android 13, may fix the HDMI bridge issue in Android 13 also.

@pundiramit @Loic By any chance, could you point me to how to upgrade from Android 10 to Android 13? I tried it with installer/db845c/flash-all-aosp.sh no success. Initially when the board came with Linux build, I had no issue use the flash-all-aosp.sh to flash Android 13 (even though has no HDMI display issue). Or if you know how to do manufacture reset back to the original linux build?

@HLDB845c hi, is it possible for you to share the link of the release note or the release package? I’m curious to see the rationale behind that change.

@HLDB845c hi… Linaro only support AOSP builds on DB845c and we do not provide Android release builds. But we will help you smoke test Android release versions. That is why we have uploaded Android 13 reference release build here: Index of /~amit.pundir/db845c-userdebug-android13. FWIW this build boots fine on the DB845c devices we have smoke tested so far.

If I understand correctly your HDMI display doesn’t come up with the above Android 13 build and you may have found a reason/solution in the downstream kernel / release notes. It would really help us better understand the problem if you can share the downstream kernel / release note link for reference.

Also is your DB845c connected to a 4K HDMI monitor by any chance? There are some known issues with HDMI display not getting probed successfully with DB845c in 4K mode. So let us know if that is the case.

Also share your entire DB845c bootlog, I just want to make sure that you are running up-to-date Bootloader binaries or not.

@pundiramit 1. I am just using a simple LG monitor, not 4K HDMI monitor. 2. Now, my device is stuck in AOSP (Android 10 version), encountered “no partition” issue when I tried to upgrade to AOSP (Android 13), by any chance, do you know any instruction how to upgrade from AOSP (Android 10 version) to AOSP (Android 11 version). 3. Please email me hongsd2015@gmail.com, I will be able to provide you all I know in details. Thanks.

@pundiramit Latest update, I did manage flash with today’s Linaro pre-build:

https://snapshots.linaro.org/96boards/dragonboard845c/linaro/aosp-master/1211/
getprop ro.build.version.release: [13] → Android 13
getprop ro.kernel.version: [5.15] → Kernel version: 5.15
No HDMI display, “adb disable-verity” give error:

“adb_user_verity.c:100: ERROR: Data from ‘boot_a’ does not look like a vbmeta footer.”

I went back to flash with older pre-build on 11/15/2022:
https://snapshots.linaro.org/96boards/dragonboard845c/linaro/aosp-master/1190/
getprop ro.build.version.release: [13] → Android 13
getprop ro.kernel.version: [5.15] → Kernel version: 5.15
Still no HDMI display, but “adb disable-verity” is fine.

Hi :grinning_face_with_smiling_eyes:
I am a newbie here

Hello do you know any android 12 versions that HDMI actually works ? Can you point me to the build number on linaro aosp-master folder ?
Here is the logcat output from when I plug the hdmi cable on Android 13

I found that this commit is needed to build the kernel mainline for HDMI to work
https://android.googlesource.com/kernel/common/+/2a9df204be0bbb896e087f00b9ee3fc559d5a608
But from what I can tell ( correct me if I am wrong ) this is not delivered to prebuults repo refs/heads/master - device/linaro/dragonboard-kernel - Git at Google
So after building the kernel mainline and replace binaries HDMI worked at least for me.