Okay so g60madman asked to see the HDMI work that I had done on CM7, so I finally got myself familiar with github and have posted my changes in hopes that someone can use them as a starting point to fix HDMI. I haven't had a whole lot of time to work on it recently so maybe this can give someone a head start on fixing it.
You can see my github and the work I did here -> https://github.com/wsimon
There are a lot of changes that I have made. Some I know are not necessary and some I know are. I left them all in just in case. Its a combination of some things I pulled from Isaacs work, things pulled from the Andro-ID rom, things I rewrote based on decompiled portions of the Andro-ID rom, and other portions grabbed from the web and the hdmi support that ICS has.
I am not sure where the remaining problem is in fixing HDMI. The logs look fine and I am not seeing where the error is (I probably need to look closer at the logs though). My best guess would be that the problem is in one of the .so libraries that the hdmid uses to do the mirroring. I am pretty confident in the rewrites of HDMIService.java and HDMIListener.java that I did (in android_frameworks_base/services/java/com/android/server) which does much of the logic and communication.
With the changes from my github, you should see that when you plug in the hdmi cable, it comes up as a notification and you get some response/signal on your TV/monitor (I get a blue screen).
Here is a dl link to a CM7 rom built with my fixes: update-cm-7.2.0-RC0-triumph-KANG-signed.zip
Perhaps someone can try plugging in the various libraries from one of the GB-based roms that has working HDMI like Andro-ID or Ziggy/Mobstergunz' WIP rom (which is based on Andro-ID). I would start with libsurfaceflinger_client.so, libsurfaceflinger.so, liboverlay.so and its hdmid (although I am pretty sure the hdmid in my rom was pulled from Andro-ID).
If you guys want sometime this weekend I can post a high level view of how everything should work/communicate and the the different components in the rom that make hdmi work and where they are.
And if you have questions, just ask- I have time to answer them because I can always answer from work/school, I just don't have much time to do dev work in the little off time I have.
Edit: Forgot to add that it currently doesn't pick up on when you unplug HDMI, and there is very weird behavior after you unplug it. Just restart the phone and it should be back to normal.
You can see my github and the work I did here -> https://github.com/wsimon
There are a lot of changes that I have made. Some I know are not necessary and some I know are. I left them all in just in case. Its a combination of some things I pulled from Isaacs work, things pulled from the Andro-ID rom, things I rewrote based on decompiled portions of the Andro-ID rom, and other portions grabbed from the web and the hdmi support that ICS has.
I am not sure where the remaining problem is in fixing HDMI. The logs look fine and I am not seeing where the error is (I probably need to look closer at the logs though). My best guess would be that the problem is in one of the .so libraries that the hdmid uses to do the mirroring. I am pretty confident in the rewrites of HDMIService.java and HDMIListener.java that I did (in android_frameworks_base/services/java/com/android/server) which does much of the logic and communication.
With the changes from my github, you should see that when you plug in the hdmi cable, it comes up as a notification and you get some response/signal on your TV/monitor (I get a blue screen).
Here is a dl link to a CM7 rom built with my fixes: update-cm-7.2.0-RC0-triumph-KANG-signed.zip
Perhaps someone can try plugging in the various libraries from one of the GB-based roms that has working HDMI like Andro-ID or Ziggy/Mobstergunz' WIP rom (which is based on Andro-ID). I would start with libsurfaceflinger_client.so, libsurfaceflinger.so, liboverlay.so and its hdmid (although I am pretty sure the hdmid in my rom was pulled from Andro-ID).
If you guys want sometime this weekend I can post a high level view of how everything should work/communicate and the the different components in the rom that make hdmi work and where they are.
And if you have questions, just ask- I have time to answer them because I can always answer from work/school, I just don't have much time to do dev work in the little off time I have.
Edit: Forgot to add that it currently doesn't pick up on when you unplug HDMI, and there is very weird behavior after you unplug it. Just restart the phone and it should be back to normal.
