[Deepin-Kernel-SIG] [Deepin] [linux 6.6-y] deepin: HID: i2c-hid: add a retry loop in i2c_hid_get_report #611
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
A touchscreen cannot work in matebook 14(FLMH model),
failed in i2c_hid_get_report, it return -EAGAIN but retry in i2c-core is failed,
it use i2c-desginware-pcidrv.
usleep(400, 500) not okay, usleep(4000, 5000) is okay
Summary by Sourcery
Implements a retry mechanism in the
i2c_hid_get_reportfunction to address touchscreen issues on Matebook 14 devices. The retry loop handles-EAGAINerrors, improving the robustness of the I2C communication.Bug Fixes:
i2c_hid_get_report.Enhancements:
i2c_hid_get_reportto handle-EAGAINerrors, which occur when the device is temporarily unavailable. The loop retries up to 5 times with a delay of 4000-5000 microseconds between attempts.