Commit daeed86b authored by Zhang Lixu's avatar Zhang Lixu Committed by Benjamin Tissoires
Browse files

HID: intel-ish-hid: Update ishtp bus match to support device ID table



The ishtp_cl_bus_match() function previously only checked the first entry
in the driver's device ID table. Update it to iterate over the entire
table, allowing proper matching for drivers with multiple supported
protocol GUIDs.

Signed-off-by: default avatarZhang Lixu <lixu.zhang@intel.com>
Acked-by: default avatarSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: default avatarBenjamin Tissoires <bentiss@kernel.org>
parent 0e13150c
Loading
Loading
Loading
Loading
+10 −2
Original line number Diff line number Diff line
@@ -240,9 +240,17 @@ static int ishtp_cl_bus_match(struct device *dev, const struct device_driver *dr
{
	struct ishtp_cl_device *device = to_ishtp_cl_device(dev);
	struct ishtp_cl_driver *driver = to_ishtp_cl_driver(drv);
	struct ishtp_fw_client *client = device->fw_client;
	const struct ishtp_device_id *id;

	return(device->fw_client ? guid_equal(&driver->id[0].guid,
	       &device->fw_client->props.protocol_name) : 0);
	if (client) {
		for (id = driver->id; !guid_is_null(&id->guid); id++) {
			if (guid_equal(&id->guid, &client->props.protocol_name))
				return 1;
		}
	}

	return 0;
}

/**