mirror of
https://github.com/torvalds/linux.git
synced 2026-05-23 22:52:19 +02:00
usb: typec: ucsi: fix probe failure in gaokun_ucsi_probe()
The gaokun_ucsi_probe() uses ucsi_create() to allocate a UCSI instance.
The ucsi_create() validates whether ops->poll_cci is defined, and if not,
it directly returns -EINVAL. However, the gaokun_ucsi_ops structure does
not define the poll_cci, causing ucsi_create() always fail with -EINVAL.
This issue can be observed in the kernel log with the following error:
ucsi_huawei_gaokun.ucsi huawei_gaokun_ec.ucsi.0: probe with driver
ucsi_huawei_gaokun.ucsi failed with error -22
Fix the issue by adding the missing poll_cci callback to gaokun_ucsi_ops.
Fixes: 00327d7f2c ("usb: typec: ucsi: add Huawei Matebook E Go ucsi driver")
Cc: stable <stable@kernel.org>
Signed-off-by: Duoming Zhou <duoming@zju.edu.cn>
Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Reviewed-by: Pengyu Luo <mitltlatltl@gmail.com>
Link: https://patch.msgid.link/4d077d6439d728be68646bb8c8678436a3a0885e.1764065838.git.duoming@zju.edu.cn
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
6d935ce213
commit
6b120ef99f
|
|
@ -196,6 +196,7 @@ static void gaokun_ucsi_connector_status(struct ucsi_connector *con)
|
|||
const struct ucsi_operations gaokun_ucsi_ops = {
|
||||
.read_version = gaokun_ucsi_read_version,
|
||||
.read_cci = gaokun_ucsi_read_cci,
|
||||
.poll_cci = gaokun_ucsi_read_cci,
|
||||
.read_message_in = gaokun_ucsi_read_message_in,
|
||||
.sync_control = ucsi_sync_control_common,
|
||||
.async_control = gaokun_ucsi_async_control,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user