Hacker News Front Page · signa11 ·
The forgetful CPU (Linux on M4)
El artículo relata la experiencia de traer Linux a máquinas M4 mediante ingeniería inversa del hardware de Apple Silicon. Los primeros obstáculos fueron registros bloqueados (GXF deshabilitado y RVBAR precargado), seguidos de problemas de acceso a MMIO después de habilitar la MMU. El mayor desafío surgió con la instrucción WFI (Wait For Interrupt), que en M4 borra el estado de registros en lugar de preservarlo conforme a la especificación ARM64; la solución consistió en agregar un parámetro de arranque para deshabilitar WFI en hardware bare-metal. El mecanismo ya está en mainline Linux y m1n1, permitiendo que M4 y generaciones posteriores arranquen con todos los núcleos funcionales.
This blog post goes into quite some detail about how I first booted Linux on my M4 Mac mini. I encourage you to look up terms and concepts you don’t know, since I cannot explain all the background in this post ;)