It’s a common task to port an existing Android BSP of a custom board or free ROM of a phone to a new Android version. Especially for devices that are already deployed in the field and should be supported with feature and security upgrades for a longer time.
In this talk, I want to present my learnings from porting Android on a custom board to a newer Android version. I will share my approach and helpful debugging techniques. We will look at using reference devices, other existing ports and how to dive deep into Android source code. I also cover AVB (Android Verified Boot) issues, proprietary HAL implementations debugging, kernel driver porting, device tree analysis and other topics based on real world examples. E.g., how to analyse issues based on available logs in logcat and dmesg.
Android and Linux debug tools, Issue triaging based on log messages and log diffing to reference devices, Tips for Android source code analysis, Basic binary blob reverse engineering, Divide and conquer debugging approach