1
0
Fork 0
Commit graph

8 commits

Author SHA1 Message Date
Andrew Wolfers
b7eb6f087f Cleanup includes in stats/ per IWYU style
Change-Id: I49b9bc58961ff8efee630f8eedaf6763a6a91cba
2025-11-11 19:14:24 +00:00
Andrew Wolfers
6c2df0cbdd Move CompositionPlanner from backend/ to compositor/
Change-Id: Iebd4a4d0e15c5171aa20fafe3686b7bc8c08a175
2025-11-06 18:32:05 +00:00
Andrew Wolfers
460ef8d0a8 Add explicit mappings from HwcStats enums to atom types
Change-Id: I9496a7a5c3018a3dcea8eddd2bd6b5db80467419
2025-11-06 14:59:13 +00:00
Drew Davenport
f119d34769 Rename Backend to CompositionPlanner
With the Backend concept expanding to also include the initial display
configuration and creation of DrmDisplayPipeline, rename the Backend
class to more precisely reflect its purpose.

Change-Id: I8a9a0d49242771e5df6e80cd50f0b2b0670c2de2
2025-10-30 12:07:09 -06:00
Andrew Wolfers
5b8fc6f028 Update reporting for new DesktopAtoms
Change-Id: I5e0053c65480b26c02377320bb9904ed141504f4
2025-10-08 16:44:41 +00:00
Andrew Wolfers
9255d0d10b drm_hwcomposer: Migrate to android::drm_hwcomposer namespace
Change-Id: I2859aa8f55532d88231389724956fc77b0625339
2025-09-08 18:53:00 +00:00
Drew Davenport
de45e91269 drm_hwcomposer: Check for IStats service as needed
IStats service is started by system_server which is not running during
VTS tests. In this case, the IStats service is declared, but not
started, which may result in a hang when calling AServiceManager_waitForService.

Acquire the IStats client lazily when reporting atoms, and log an error
upon failure to do so. If IStats is declared, we should expect that the
service will be available under normal operation.

Another benefit of this approach is that acquiring the IStats service is
no longer blocking service initialization.

Change-Id: Ib7a38930b1a3cbcaa629e576f601d7a05980e257
2025-06-25 08:06:33 -06:00
Drew Davenport
129d12f38a drm_hwcomposer: Report composition stats as vendor atoms
The IStats service provides an interface for reporting metrics from
vendor processes through the IStats::reportVendorAtom interface.

The type and ordering of the data in a VendorAtom are determined by a
proto definition which is typically OEM-specific. The code to construct
the VendorAtom is generated from the proto definition.

Add a soong config variable in the DRMHWC config namespace to enable the
atom reporting. Currently there is only one such implementation.
  atom_reporter: Set this to configure OEM-specific atom reporting.

With the config variable omitted, reporting will be disabled and a stub
implementation is used, ensuring no build or runtime dependency or usage
of the IStats service.

Change-Id: I832adbd42412db1ab4c9403c1da60fa075443caa
Signed-off-by: Drew Davenport <ddavenport@google.com>
2025-06-10 06:59:51 +00:00