Remix.run Logo
numpad0 3 hours ago

  Situation:
  - The author is running macOS ARM64  
  - off of a USB disk  
      - plugged into DFU capable USB-C port    
      - that shouldn't be the DFU one according to docs
  - attempting to run macOS updater  
  - (supposedly)there's nothing else connected to it  

  Outcomes:  
  - updates were failing and rolling back with cryptic errors  
  - errors persist despite all efforts  
  - -> later magically solved after changing the port  
  - -> the problematic port later revealed to be the DFU port  
      - contradictory to Apple documentation
Or at least that's how it reads to me. As for reasons, I don't know why anything that can boot from USB can't from DFU-enabled USB port, but maybe it's configured as a special non-USB debug connector while bootloader is executing.
AceJohnny2 2 hours ago | parent [-]

          - plugged into DFU capable USB-C port
This is what I'm contending. No, I don't think this is true. All he found was the upgrading macOS on the external disk, which as documented must not be on a DFU capable USB-C port, did not work when plugged into a port that was documented to not be DFU.

The source the author is referring to, Michael Tsai, indeed found that he had plugged his external disk into the DFU port. The author then (reasonably, but IMHO erroneously) deduced that his problem, also solved by changing ports, must thus have had the same cause. I say it may be confounding factors, and the only way to validate the wrong DFU port hypothesis is putting their mac in DFU mode and then running Recovery Assistant (from another machine) against it, on various ports.

Tangentially, it is infuriating that Apple would swap what the DFU port is across generations, as if it wasn't confusing enough.

Also...

> As for reasons, I don't know why anything that can boot from USB can't from DFU-enabled USB port, but maybe it's configured as a special non-USB debug connector while bootloader is executing.

My guess is it's because DFU requires the port to be in Device mode, whereas booting from a external disk requires the port to be in Host mode. Apple care about boot time, so perhaps they don't want to waste time in the boot process to check the port in Device mode for a few secs, then switch to Host mode to try external disk booting.