Jump to content

Apple iPad 1G (apple-ipad1g)

From postmarketOS Wiki
Revision as of 15:09, 20 November 2020 by Dsdsdas (talk | contribs) (Apparently boots "Can boot into a mainline linux kernel")
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
Features
Flashing
Partial
USB Networking
Broken
Internal storage
No data
SD card
No data
Battery
No data
Screen
Partial
Touchscreen
Broken
Multimedia
3D Acceleration
Broken
Audio
No data
Camera Flash
No data
Connectivity
WiFi
Broken
Bluetooth
No data
NFC
No data
Modem
Mobile data
No data
Miscellaneous
FDE
No data
USB OTG
No data
HDMI/DP
No data
Sensors
Accelerometer
No data
Magnetometer
No data
Ambient Light
No data
Proximity
No data
Hall Effect
No data
Haptics
No data
Barometer
No data

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
  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