But, ignore devices like UEFI, NVMe and Redfish as this is specified in the firmware metadata.
Devices may want to support more than one protocol, and for some devices (e.g. Unifying peripherals stuck in bootloader mode) you might not even be able to query for the correct protocol anyway.