clusterfsck
New member
Got an 820-00045-A logic board here that appears to have a failed CPU. I can't find any missing power rails, board pulls 20V from charger, but I can't get it to boot. The customer is only interested recovering his data from the failed MacBook.
We've had some success using the lifeboat connector on 2016-2017 touch bar boards and I'm wondering if it is possible to do something similar with this board. Unless I'm missing something, both models simply have a PCIe NVMe SSD integrated into the board. There isn't anything incredibly special about the lifeboat connector. Removing the cover disconnects the SSD from the rest of the board and the migration tool taps into the power/PCIe lines leading to the SSD. Can you similarly tap into the power/data lines on this logic board and access the SSD with another computer?
I decided to try wiring up a working 820-00045-A board to a PCIe-M.2 (NGFF) adapter. I removed the M.2 connector from the adapter made the following connections to the logic board:
To stop the logic board from trying to access the SSD, I tied PM_SYSRST_L to GND. I verified that grounding this signal does reset the machine and I'm hoping holding the CPU in a reset state keeps it off the PCIe bus. I secured the logic board to the adapter board and stuck it in a Linux box. Unsurprisingly, this did not work. The host machine did not see an NVMe SSD or anything in the PCIe slot.
One of my earliest concerns was how to go about powering the SSD. The lifeboat migration tool supplies its own 3.3V, but different SSD components (DRAM buffer, NAND, etc.) require different voltages and I worried that these wouldn't be supplied without the enable signals from the system.
Has anyone tried something like this before and had success?
We've had some success using the lifeboat connector on 2016-2017 touch bar boards and I'm wondering if it is possible to do something similar with this board. Unless I'm missing something, both models simply have a PCIe NVMe SSD integrated into the board. There isn't anything incredibly special about the lifeboat connector. Removing the cover disconnects the SSD from the rest of the board and the migration tool taps into the power/PCIe lines leading to the SSD. Can you similarly tap into the power/data lines on this logic board and access the SSD with another computer?
I decided to try wiring up a working 820-00045-A board to a PCIe-M.2 (NGFF) adapter. I removed the M.2 connector from the adapter made the following connections to the logic board:
M.2 Pin | Logic Board | |
1 GND | GND | |
41 PETn0 | PCIE_SSD_D2R_N<0> | |
43 PETp0 | PCIE_SSD_D2R_P<0> | |
47 PERn0 | PCIE_SSD_R2D_C_N<0> | |
49 PERp0 | PCIE_SSD_R2D_C_P<0> | |
50 PERST# | SAK_SSD_PCIE_RESET_L | |
52 CLKREQ# | SSD_CLKREQ_L | |
53 REFCLKn | PCIE_CLK100M_SSD_N | |
55 REFCLKp | PCIE_CLK100M_SSD_P |
To stop the logic board from trying to access the SSD, I tied PM_SYSRST_L to GND. I verified that grounding this signal does reset the machine and I'm hoping holding the CPU in a reset state keeps it off the PCIe bus. I secured the logic board to the adapter board and stuck it in a Linux box. Unsurprisingly, this did not work. The host machine did not see an NVMe SSD or anything in the PCIe slot.
One of my earliest concerns was how to go about powering the SSD. The lifeboat migration tool supplies its own 3.3V, but different SSD components (DRAM buffer, NAND, etc.) require different voltages and I worried that these wouldn't be supplied without the enable signals from the system.
Has anyone tried something like this before and had success?