Jump to content

Apple iPad 1G (apple-ipad1g)

From postmarketOS Wiki
Revision as of 09:56, 19 January 2023 by Maxnet (talk | contribs) (added command to instructions)
This device is marked as not booting.
Apple iPad (1G)
TTY on iPad
TTY on iPad
Manufacturer Apple
Name iPad (1G)
Codename apple-ipad1g
Released 2010
Hardware
Chipset Apple A4
CPU 1x 1 GHz Cortex-A8
GPU PowerVR SGX535
Display 1024x768
Storage 16/32/64 GB
Memory 256 MB
Architecture armv7
Software
Original software iPhone OS 3.2
postmarketOS
Category testing
Pre-built images no
Mainline yes
postmarketOS kernel 5.3.0-rc6

Contributors

  • scintill

Device Owners

  • BlackEyedSquid (Notes: 16GB, boot-loop issue - dead battery)
  • ByteXD23! (Notes: 16GB, boot-loop issue, dead battery)
  • Clygro (Notes: 32GB WiFi iOS 4.3)
  • Furret (Notes: 4.3.5, 16gb cellular, blobs need dumping, jailbroken with redsn0w)
  • Konfigurare (Notes: 16 GB, very scratched)
  • KQuote03
  • Little-miss-synth (Notes: own 4 examples, 1 16gb, 1 32gb with cracked digitiser, 1 32gb without damage and one 64gb cellular unit)
  • Maxnet
  • Meowking (Notes: Cracked screen, fully usable)
  • Schrmh
  • UltrasonicMadness (Notes: Does not power on, has a significant dent on it)
  • ULumia (Notes: 3G 64 GB)


Progress

Can boot into a mainline linux kernel, but the bootloader isn't persistent so it can only boot tethered.

Booting

  1. Install syringe package in chroot: pmbootstrap chroot --add syringe
  2. Enter DFU mode (hold Power and Home with USB connected to computer)
  3. load openiboot
$ loadibec openiboot-ipad1g.bin

expect script for automating booting with oibc:

#!/usr/bin/expect
spawn oibc

send "!/path/to/vmlinuz\r"
sleep 0.1
send "\r"
expect "Received file"
send "kernel \"console=tty0 PMOS_NO_OUTPUT_REDIRECT\"\r"
expect "Done: kernel"

send "!/path/to/initramfs\r"
sleep 0.1
send "\r"
expect "Received file"
send "initrd\r"
expect "Done: initrd"
send "wait_boot 15000\r"
expect "Done: boot"
  • Set console=ttySAC0 for UART console instead of framebuffer
  • earlycon=s3c2410,0x82500000 and keep_bootcon may be useful too.

Links