Announcement

Collapse
No announcement yet.

A1398 820-00426 fan spin but does not POST.

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    A1398 820-00426 fan spin but does not POST.

    Hi,

    I would appreciate some help with an A1398 2015 15" MacBook Pro Retina 820-00426-A logic board.

    The laptop was purchased on eBay and I don't know the history other than it was described as untested and missing the bottom cover. There was a noticeable dent at the DC In port. The power button keycap and scissor mechanism were missing but the rubber boot was present and the power button otherwise works. No signs of liquid damage. Battery is not swollen, but don't know it's condition.

    When the laptop arrived, it booted to the previous owner's login page and since I didn't have the password, I booted off an external SSD only to find it was also firmware locked. After removing the firmware password, the system no longer POSTs. The fans spin for a few seconds, stop for a few seconds and then spin continuously at normal speed. Reset SMC works but no change.

    All voltages, signals and traces around U6100 and U6101 seem okay with the following notes.
    SPI_MLB_IO1_MISO and SPI_MLB_CLK have a short burst and then stop.
    SPIROM_USE_MLB goes high and stays high
    SPI_MLB_CS_L goes high when power is applied but never pulses. Same all the way back to the first resistor in the path from the PCH (R6110).

    SPI_MLB_CS_L should pulse and I can't figure out why it isn't pulsing.

    Removed U6100 and confirmed the password was correctly removed. Restored the original EFI file and no improvement.

    U6100 program verifies correctly in the CH341A so I think the chip is ok.

    I had some difficulty with the chip reporting it was protected when trying to erase or write but it seems that was an issue with poor connection in the chip adapter. Not sure if the U6100 protection register values could possibly be the issue.

    Have not replaced U6101 as it appears the SPI_MLB_CS_L not being present is not dependent on the that chip. U6101 diode mode readings compare well with another board.

    I understand it won't fully boot without a good battery but it doesn't even POST The same is true when the board is disconnected and sitting on the bench.

    Not sure what else to try. Any suggestions would be appreciated.

    Thank you.

    #2
    Re: A1398 820-00426 fan spin but does not POST.

    Haven't worked on this specific version of board, but previous A1398 boards boot fine on the bench with battery.

    So you desoldered U6100 off the board then? Just review your soldering as these chips have a ground pad in the middle and can easily short out the pins if not centered properly. If you knock off a termination resistor, these boards will boot loop. In my past experience, high fan spin after board work is usually a rail is shorted or missing because of a bridged ball/pad etc.

    Comment


      #3
      Re: A1398 820-00426 fan spin but does not POST.

      Hi, Thanks for replying. Much appreciated.

      I have removed and reinstalled U6100 twice and ensured no pins were shorted to ground (that weren't supposed to be connected to ground). All the pads on the board and the bottom of the chip look fine as well. All the resistors are in place and appear fine. I don't get high fan spin, just normal spin. However, fans initially spin for a few seconds, then pause for a few seconds and then resume running continuously at normal speed. The original BIOS firmware has been reinstalled and it did not resolve the issue.

      I can't figure out why I am not getting any pulses on SPI_MLB_CS_L - it just goes high. The PCH is quite a distance from U6100 and U6101 so I don't think the hot air bothered it. I slowly applied the heat to warm the board then brought the nozzle in for the removal.

      U6100 seems to work fine when in the programmer once it has solid connections to the adapter. Not sure if the U6100 protection registers got fouled up when trying to unprotect the chip. Since it programmed and verified, I don't think it matters or is the cause of the problem, but I am not sure.

      I was considering replacing U6101 but don't see how it would cause the missing pulses on SPI_MLB_CS_L.

      It seemed to boot fine (at least to the password or firmware lock screen) prior to working on U6100 to remove the firmware lock. Now it won't even POST.

      It seems like the initial burst of data on the U6100 MISO signal line is somehow insufficient or incorrect to permit the rest of the BIOS to be loaded.

      Comment


        #4
        Re: A1398 820-00426 fan spin but does not POST.

        In my last post, meant to say these boards will POST fine standalone, without a battery.

        The BIOS on these is supposed to have the QE bit set. I think there are others, would need to pull one off a board to double check. Depends on what software you are using as to how that is handled when reading/writing. I use a SVOD3 (and T56 as well) and the status registers are easily configured with them.

        Will get back to you when I'm not as busy.

        Comment


          #5
          Re: A1398 820-00426 fan spin but does not POST.

          Originally posted by barry101 View Post
          I was considering replacing U6101 but don't see how it would cause the missing pulses on SPI_MLB_CS_L.

          It seems like the initial burst of data on the U6100 MISO signal line is somehow insufficient or incorrect to permit the rest of the BIOS to be loaded.
          This is a bit confusing, I'm not sure how the SPI ROM would send data if it's never being enabled with CS#.

          Originally posted by reformatt View Post
          In my last post, meant to say these boards will POST fine standalone, without a battery.
          POST yes, fully boot into macOS no, except if you disconnect touchpad as well (but then it'll be awfully slow anyway).
          OpenBoardView — https://github.com/OpenBoardView/OpenBoardView

          Comment


            #6
            Re: A1398 820-00426 fan spin but does not POST.

            Hi, Thanks for replying.

            Yes, I am confused by the initial burst as well. The clock to the U6100 initially pulsed and I am assuming the SPI_MLB_CS_L was initially low during that window of time before going continuously high. That might account for the initial MISO burst. I will have to check with two oscilloscope probes to see if that is the case. However, on a good board, SPI_MLB_CS_L is eventually supposed to pulse and it never does that.

            Agree about POSTING without battery but not fully booting into Mac OS without battery unless trackpad is disconnected.

            By the way, it did not POST when reinstalled in the top case with battery connected either but I'm not sure of the battery's condition other than it was able to power on and isn't swollen. It did boot up to the password screen prior to fiddling with the U6100 so the battery is probably in decent condition.

            Agree about the QE bit being set. I'm leaning towards some issue with the U6100 registers getting screwed up when being programmed due to fiddling with the unprotect feature. If someone knows the correct values, I will be happy to try to enter them and see what happens. I believe they are called SREGs in the CH341 application. I'm not sure but I think they are set to 0x4000H and 0xFFFFH

            Thanks again to both of you. Really appreciate your time and help.

            Comment


              #7
              Re: A1398 820-00426 fan spin but does not POST.

              CS# should go low when a transaction is ongoing, otherwise it's high. Make sure to set your oscilloscope properly, should trigger on falling edge, single shot.
              OpenBoardView — https://github.com/OpenBoardView/OpenBoardView

              Comment


                #8
                Re: A1398 820-00426 fan spin but does not POST.

                Hi,

                Sorry for the delay.

                With the board disconnected and on the bench by itself with just the Apple 85W MS2 adapter, I am no longer getting any pulses on the U6100 clock or MISO line. (I was sure they were there before, not sure what happened.)

                The CS line goes high very quickly after the charger green light comes on. There is a negative spike about 40 ms after it goes high but otherwise it goes high and stays high.

                The clock line goes high for 40 ms and then low for 240 ms and then goes high and stays high.

                Fans run for a few seconds, pause for a few seconds and then run continuously and normal speed. After a while they speed up since the trackpad is not connected.

                I am still suspicious of the U6100 internal register values. The chip was able to be ID'd, read, erased, blank checked, written and verified while in the CH341 so I think the chip is ok. I don't see how U6101 could be the cause. However U6100 is right next to the U6100 so I had small piece of aluminum over it while using the hot air to limit its exposure to heat.

                Would getting a blank SPI chip and programming it with the original firmware that was saved before editing be worth a try?

                Any other suggestions would be greatly appreciated.

                Thanks

                Comment


                  #9
                  Re: A1398 820-00426 fan spin but does not POST.

                  Correction - U6101 is right next to U6100.

                  Comment


                    #10
                    Re: A1398 820-00426 fan spin but does not POST.

                    Here the config registers for a PROM off a 820-4924 board using SVOD3. These are same for all the EEPROM's used by Apple for this vintage of boards. I don't know how to check these on a CH341 unfortunately.

                    If you try to power up the board without U6100 fitted, it will power cycle from S4. That will at least prove whether BIOS is attempted to be accessed.
                    Attached Files

                    Comment


                      #11
                      Re: A1398 820-00426 fan spin but does not POST.

                      Originally posted by barry101 View Post
                      The CS line goes high very quickly after the charger green light comes on. There is a negative spike about 40 ms after it goes high but otherwise it goes high and stays high.
                      That's where communication should start happening, PCH reads descriptor, loads ME region and soft straps, then when CPU starts it loads EFI. May need to zoom just after the first falling edge to see something.

                      https://logi.wiki/index.php/EFI
                      OpenBoardView — https://github.com/OpenBoardView/OpenBoardView

                      Comment


                        #12
                        Re: A1398 820-00426 fan spin but does not POST.

                        The registers appeared to have those settings. However, just to be sure, I will remove the chip and put back in the CH341, erase it and start over again.

                        Very helpful information on the sequence and timing. It looks like it that's where the issue is. I'm going to take some time and study those scope captures and other material.

                        Since SPIROM_USE_MLB is depicted as a bidirectional signal on page 14 of the schematic, could U6101 interfere with the descriptor being read properly by the PCH? Based on the U6101 internal logic diagram, it looks like it doesn't play a role in the data flow from the SPI back to the PCH but maybe I missed something.

                        I'll let you know how things turn out.

                        Thanks so much for your time and expertise. Greatly appreciated!

                        Comment


                          #13
                          Re: A1398 820-00426 fan spin but does not POST.

                          U6101 is useless in itself, it's only there to choose between the onboard SPI ROM or an external SPI device connected to J6100 for debugging. It's been added compared to previous boards (820-3437…) to support Quad SPI mode with this debugging feature.
                          However, it still needs to be working properly otherwise the SPI ROM won't communicate properly. It could also probably be bypassed (connecting SPI_MLB_CS_L to SPI_MLBROM_CS_L).
                          OpenBoardView — https://github.com/OpenBoardView/OpenBoardView

                          Comment


                            #14
                            Re: A1398 820-00426 fan spin but does not POST.

                            Ok, thanks for the explanation. It seems to be passing the CS line through ok. I will go ahead and try reprogramming U6100 again to try to make sure the register values are correct. First I'll check the MISI line more carefully to see if the command to output the descriptor is present.

                            Comment

                            Working...