iichid uses IICBUS_ACPI_PNP_INFO to specify the supported ACPI ids,
however the format of this seems wrong. That uses ACPICOMPAT_PNP_INFO
under the hood, which uses a format of "Z:_HID". This expects a list of
strings, but we currently give it a list of struct iichid_id that
contain mixed pointers and ints. The other users of ACPICOMPAT_PNP_INFO
seem to use a list of char * pointers as well, iichid is the only one
that differs.
This change breaks out the struct array into a char * array and a
int array, and indexes into them instead of iterating through the
structs. This seems to fix the touchpad on my Legion 5 laptop.