Hardware Verifier is a command line tool that checks if the device is compliant. The program obtains the hardware probe result from the Rumtime Probe and compares it with the hardware verification spec. The hardware verification spec is generated from the DLM (Device Lifecycle Management) and the AVL (Approved Vendor List) services and contains both the qualification status of each hardware components and the expected hardware probe result like the total DRAM size and the display panel resolution.
Various of benefits can be taken from the Hardware Verifier. The following list contains some potential scenarios:
Currently, the HWID generating flow provides similar checks. However, that check is a one-time check and only available in the manufacturing environment.
Users can call the tool directly by invoking the binary with arguments:
/usr/bin/hardware_verifier \ [--verbosity=<log_level>] \ [--probe_result_file=<path_to_the_probe_result>] \ [--hw_verification_spec=<path_to_the_hardware_verification_spec>] \ [--output_format=proto|text]
The tool loads the correct probe result data and the hardware verification spec based on the given arguments. Then it outputs the verification results to the standard output.
Users can call the tool using D-Bus. It owns the service name
org.chromium.HardwareVerifier at the service path
/org.chromium/HardwareVerifier and exports an interface named
dbus-send --system --print-reply --dest=org.chromium.HardwareVerifier \ /org/chromium/HardwareVerifier <method>
Unit tests are provided and can be run in chroot by the following command:
FEATURES=test emerge-<board> chromeos-base/hardware_verifier