drm_hwcomposer: Make changes needed for AEMv8-A Base Platform RevC FVP
Background
AEMv8-A Base Platform RevC FVP (Fixed Virtual Platform), aka FVP Base RevC, has the PL111 color LCD controller for display. This platform has been available in Android Open Source Project (AOSP) for several years, in https://android.googlesource.com/device/generic/goldfish/+/main/fvpbase
In the past, this platform used fbdev for display. Now with the deprecation of fbdev, the Android GKI (generic kernel image) is not shipped with fbdev or drm-fbdev emulation. This merge request is part of the effort to switch to DRM.
Changes
This merge requests consists of two changes to make drm_hwcomposer work with the PL111 controller:
- Treat unknown connector as internal display - FVP Base RevC does not simulate any display connectors
- Add pl111 to the client backend device list - PL111 has a very small video memory that is only enough for client layer buffers
Testing
I fetched the latest AOSP main branch, navigated to external/drm_hwcomposer
(Android's fork), did git merge fvp-base-revc-support
to locally bring in my patches and the latest patches from freedesktop's repository, and built and ran Android.