firmware: arm_scmi: Ensure scmi_devices are always matched by name as well

Currently, devices without a name in the id_table cannot register drivers,
and no scmi_device is created without a name via scmi_device_create().
However, the function __scmi_device_create() allows devices with no name,
which are then labeled as "unknown."

Removes support for matching scmi_device instances without a name,
ensuring consistency across the driver registration and probing process.

Message-Id: <20250317-b4-scmi_minor_cleanup-v2-1-f4be99bd9864@arm.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
pull/1253/head
Sudeep Holla 2025-03-17 10:31:21 +00:00
parent 0af2f6be1b
commit db28d02c40
1 changed files with 4 additions and 7 deletions

View File

@ -209,13 +209,10 @@ scmi_dev_match_id(struct scmi_device *scmi_dev, const struct scmi_driver *scmi_d
if (!id)
return NULL;
for (; id->protocol_id; id++)
if (id->protocol_id == scmi_dev->protocol_id) {
if (!id->name)
return id;
else if (!strcmp(id->name, scmi_dev->name))
return id;
}
for (; id->protocol_id && id->name; id++)
if (id->protocol_id == scmi_dev->protocol_id &&
!strcmp(id->name, scmi_dev->name))
return id;
return NULL;
}