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
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
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>