
Herramienta de investigación para arrancar Linux en iPad mini 1 mediante checkm8, iBSS/iBEC parcheados y payloads bare-metal personalizados, incluyendo el port del device tree, la compilación del kernel y los scripts de arranque.
Investigación y herramientas para arrancar Linux en iPad mini 1 (P105AP / iPad2,5, Apple A5) mediante checkm8, iBSS/iBEC parcheados y payloads personalizados de bare-metal — sin escribir en la instalación de iOS.
Este repositorio combina:
bootx de Legacy-iOS-KitDirecciones críticas: consulta docs/ADDRESSES.md.
Objetivo: iPad2,5, placa P105AP, SoC S5L8942X (doble Cortex-A9, 512 MiB).
make all # ADT → JSON → DTS → DTB, validar
make kernel # compilar cruzado zImage armhf
bash scripts/build-ibec.sh # iBSS/iBEC parcheados (requiere IPSW)
bash scripts/deploy-flashdrive.sh
Copia flashdrive/ a tu máquina de arranque, entra en DFU pwned, y luego:
# Ruta ACE (staging-bundle + iBEC autogo)
./scripts/run-linux-ace.sh
# Ruta LIK (ramdisk + bootx; requiere IPSW guardado de Legacy-iOS-Kit)
./scripts/run-linux-lik.sh
Los scripts resuelven las rutas desde el directorio del repositorio / flashdrive — sin rutas de home hardcodeadas.
Despliegue remoto opcional: copia scripts/laptop.env.example → scripts/laptop.env y establece LAPTOP=user@host.
bash scripts/build-ram-boot.shtools/gaster.exepowershell -ExecutionPolicy Bypass -File scripts\host-boot-checkm8.ps1Consulta docs/boot.md para el procedimiento completo.
Herramientas de investigación — úsalas bajo tu propio riesgo en hardware que poseas.
| Variable | Valor por defecto | Propósito |
|---|
KERNELCACHE | kernelcache/kernelcache.p105.raw | XNU descifrado para RE |
IPSW / IPSW_DIR | ~/ipsw/ | IPSW de restauración para la compilación de iBEC |
LIK_SAVED | ~/Legacy-iOS-Kit/saved/iPad2,5 | Artefactos de arranque LIK |
FLASHDRIVE | ./flashdrive | Directorio del bundle de arranque |
FLASHDRIVE_DEST | ~/flashdrive | Ruta del host USB remoto |
| Doc | Tema |
|---|
docs/ADDRESSES.md | DRAM, MMIO, PMGR, diseño de Linux |
docs/boot-strategy.md | ACE vs LIK vs bare-metal |
docs/p105-touch-clock-re.md | Relojes multitouch, RE de Cmwp |
docs/p105-gpio.md | Mapa de GPIO |
docs/memory-probe.md | Diseño de memoria en recovery |
| Fase | Estado |
|---|
| ADT → DTB | hecho |
| Compilación del kernel | compila; arranque de hardware en curso |
| Cadena autogo iBEC | funciona en hardware |
| Arranque Linux ACE | ruta de staging implementada |
| Touch bare-metal | relojes PMGR/iBEC OK; MMIO SPI bloqueado sin XNU Cmwp |
| pongoOS | no aplicable (solo AArch64; A5 es ARMv7) |
| Ruta | Descripción |
|---|
dts/apple-p105ap-raw.json | ADT normalizado |
dtb/p105ap.dtb | DTB de arranque (temporizadores A9 deshabilitados primero) |
build/out/zImage | Kernel de Linux parcheado |
ibec/iBEC.patched.autogo.direct.dfu | iBEC de arranque en recovery |
flashdrive/staging-bundle.bin | Bundle de Linux + cargador |
pongo/touch_cursor.c | Payload de sonda táctil |