Skip to main content

Released November 4, 2017. Model A1865, A1901. Available as GSM or CDMA / 64 or 256 GB / Silver or Space Gray. (Pronounced the same as "iPhone 10.")

1195 Questions View all

iPhone X randomly bootloop

My iPhone X got water damaged and was sent to the service center. After a long period of time, they returned it to me "repaired." They told me that something in the charging segment had been replaced, but it still didn't work properly. It would work fine for a whole day and then randomly go into a bootloop the next day. I noticed that it was getting extremely hot near the cameras, so I reported it. A week passed, and it was returned to me. It was in a bootloop again, but they fixed the issue with the overheating near the cameras. It's worth mentioning that these bootloops occur once or twice a day, so it's somewhat better. I managed to retrieve the logs, and it seems that there's a problem with the l2c line. Can anyone identify the problem, maybe in a specific component, if that's possible? I would greatly appreciate it. I will paste the panic logs below.

"panicString" : "panic(cpu 3 caller 0xfffffff01c59c140): \"i2c0::_checkBusStatus SCL is stuck low; last read status 00010108 int shadow 00010100 xfer 00000000 fifo 00000000 for device ad5860\"

"panicString" : "panic(cpu 1 caller 0xfffffff0193e8140): \"i2c0::_checkBusStatus SCL is stuck low; last read status 00010108 int shadow 00010100 xfer 00000000 fifo 00000000 for device ad5860\"

"panicString" : "panic(cpu 3 caller 0xfffffff00e8dc140): \"i2c0::_checkInterrupts error interrupt; last read status 10810100 int shadow 00810100 xfer 80000000 fifo 00000003 for device ad5860\"

"panicString" : "panic(cpu 2 caller 0xfffffff00d7e4140): \"i2c0::_checkBusStatus SCL is stuck low; last read status 00010108 int shadow 00010100 xfer 00000000 fifo 00000000 for device ad5860\"

"panicString" : "panic(cpu 3 caller 0xfffffff0118f4140): \"i2c0::_checkBusStatus SCL is stuck low; last read status 00010108 int shadow 00010100 xfer 00000000 fifo 00000000 for device ad5860\"

"panicString" : "panic(cpu 1 caller 0xfffffff01cf14140): \"i2c0::_checkBusStatus SCL is stuck low; last read status 00010108 int shadow 00010100 xfer 00000000 fifo 00000000 for device ad5860\"

"panicString" : "panic(cpu 0 caller 0xfffffff014d0c140): \"i2c0::_checkInterrupts error interrupt; last read status 10810100 int shadow 00810100 xfer 80000000 fifo 00000003 for device ad5860\"

Answered! View the answer I have this problem too

Is this a good question?

Score 1
Add a comment

2 Answers

Chosen Solution

AD5860 (mentioned in all of these panics) is the model identifier for the "Sakonnet" chip. This is the controller for the Taptic Engine. On the iPhone X, this chip is on the Taptic Engine itself. If there was liquid damage in this area, that could be the issue. Or it could be the charge port assembly, which carries the signals from the taptic engine to the board.

It could also be the board, but based on what you've already said, this seems a reasonable place to start.

iPhone X Lightning Connector Assembly Image

Product

iPhone X Lightning Connector Assembly

$29.99

iPhone X Vibrator Image

Product

iPhone X Vibrator

$19.99

Was this answer helpful?

Score 3

3 Comments:

I'm sorry, but if the Taptic Engine is most likely damaged (I'm almost certain the service replaced the Lightning Connector Assembly, not the controller), shouldn't random boot loops occur much more frequently?

by

@wrukin Not necessarily. That sort of damage could be super mild, or only shows up when a certain operation is triggered. It could also be the charge port assembly they put in is bad, even if only mildly.

Reading panic logs is difficult because it’s not a necessarily a “this log means this cause always” kind of situation. It’s a clue of where to look. If not the Taptic Engine, or the lightning port assembly, it’s mostly likely a more issue. I don’t know that anything else is even in that i2c group, so not much else I would think it could be. other than something with the board.

by

So there is any way to trigger this chip?

by

Add a comment

@flannelist Given the information Alisha has provided and knowing how I2C busses work, it's almost a certainty that the controller chip on the Taptic engine has crapped out. If this was a general problem with the I2C0 bus, you'd see other devices mentioned; instead every error is associated with the AD5860.

According to the folks over at panicfull.com, they're showing this data for the I2C0 bus.

J6400 Charging Flex Port
U2700 Power Manager (PMU)
U6110 Buck

My best suggestion right now is to go ahead and replace the Taptic Engine. All signs are pointing to it as the source of the issue, it's a relatively easy repair and the part itself is cheap.

Once that's done if that error is still present, then we can do things like attempting to trace the components that use I2C bus 0 and determine if there's another part that could conceivably be generating that error. But I'd definitely replace that part as the next step.

Was this answer helpful?

Score 2
Add a comment

Add your answer

Wrukin will be eternally grateful.
View Statistics:

Past 24 Hours: 0

Past 7 Days: 8

Past 30 Days: 28

All Time: 331