Problems encountered by i2c-i801 drivers
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 30/100
- Issue type
- Bug
- Clarity
- Needs clarification
- Activity status
- Stale
- Tech stack
- c, linux
- Domain
- embedded-iot, operating-systems
Research direction
Start with drivers/i2c/busses/i2c-i801.c and trace the SMBus-busy and I2C deadlock handling described in the issue. Reproduce or inspect both failure paths, then verify that controller reset and nine-clock recovery restore I2C operation without regressions; no test file is named.
Written by the indexing model from the issue text.
Description
Code Path:drivers/i2c/busses/i2c-i801.c
Issue 1:“SMBus is busy, can't use it!”Error happens sometimes. The I2C controller cannot be used.
Issue 2:An occasional I2C deadlock (SCL is high voltage level and SDA is low voltage level) cannot be recovered, making the I2C controller unusable.
Regarding this issue, our solution is:
Issue1:The cause of SMBus Busy is unknown. At present, we have added controller reset logic. When SMBus Busy occurs, the controller is reset, so that the I2C controller can be recovered after a fault occurs.
Issue2: The cause of I2C deadlock is unknown. Now, we have added the I2C nine clocks function. Before I2C transmission, the driver checks whether I2C deadlock occurs (SCL is high voltage level and SDA is low voltage level). If the I2C deadlock occurs, nine clocks are sent to unlock the device
- Dominant language
- Shell
- Stars
- 72
- Forks
- 237
- Avg merge
- 7d 19h
- Merged PRs (30d)
- 8
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from sonic-net/sonic-linux-kernel
-
Difficulty 3/5 1-2 days Newbie friendliness 48/100
sonic-net/sonic-linux-kernel#531 · 2 comments ·
-
Difficulty 5/5 Over a week Newbie friendliness 20/100
sonic-net/sonic-linux-kernel#367 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 42/100
sonic-net/sonic-linux-kernel#348 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
sonic-net/sonic-linux-kernel#347 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
sonic-net/sonic-linux-kernel#346 ·
All issues in sonic-net/sonic-linux-kernel
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
danielmiessler/LifeOS#2218 ·
-
docs(agents): strengthen the no-backslash-escaped-backticks rule with an issue-creation example Open
Difficulty 1/5 Under an hour Newbie friendliness 92/100
-
package-update
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
oSoWoSo/vOid_Community_repOsitory#148 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
chore
Difficulty 1/5 Under an hour Newbie friendliness 91/100
alunduil/alunduil-chezmoi#792 ·