HID: rmi: Scan the report descriptor to determine if the device is suitable for the hid-rmi driver

On composite HID devices there may be multiple HID devices on separate interfaces, but hid-rmi
should only bind to the touchpad. The previous version simply checked that the interface protocol
was set to mouse. Unfortuately, it is not always the case that the touchpad has the mouse interface
protocol set. This patch takes a different approach and scans the report descriptor looking for
the Generic Desktop Pointer usage and the Vendor Specific Top Level Collection needed by the
hid-rmi driver to interface with the device.

Signed-off-by: Andrew Duggan <aduggan@synaptics.com>
HID: rmi: Add support for the touchpad in the Razer Blade 14 laptop

The Razer Blade 14 has a Synaptic's TouchPad on one of the interfaces of
a composite USB device. This patch allows the hid-rmi driver to bind
to that interface. It also adds support for the external click buttons
on the Razer's touchpad. External buttons are reported using generic
mouse reports instead of through the F30 like it is on ClickPads.

Signed-off-by: Andrew Duggan <aduggan@synaptics.com>