Jump to content

Apple TV HD (apple-j42d)

From postmarketOS Wiki
Note This device is supported as part of a generic port. Refer to Apple_Generic_iDevice_(apple-idevice) for installation instructions and more information.
Apple TV HD
200px|alt=CHANGE_ME
Manufacturer Apple
Name TV HD
Codename apple-j42d
Released 2015
Type set-top box
Hardware
Chipset Apple A8
CPU 1.4 GHz dual core 64-bit ARMv8
GPU PowerVR GX6450
Storage 32, 64 GB
Memory 2 GB
Architecture aarch64
Software
Original software
The software and version the device was shipped with.
tvOS 9
Extended version
The most recent supported version from the manufacturer.
tvOS 26
postmarketOS
Category testing
Mainline
Instead of a Linux kernel fork, it is possible to run (Close to) Mainline.
yes
pmOS kernel
The kernel version that runs on the device's port.
6.13.0_rc6
Generic port Apple_Generic_iDevice_(apple-idevice)
Device package device-apple-idevice
Kernel package linux-postmarketos-apple-4k
Features
Flashing
Whether it is possible to flash the device with pmbootstrap flasher.
Broken
USB Networking
After connecting the device with USB to your PC, you can connect to it via telnet (initramfs) or SSH (booted system).
Works
Multimedia
3D Acceleration
Broken
Audio
Audio playback, microphone, headset and buttons.
Broken
IR TX
Broken
IR RX
Broken
Connectivity
WiFi
Broken
Bluetooth
Broken
Ethernet
Works
Miscellaneous
FDE
Full disk encryption and unlocking with unl0kr.
Broken
USB OTG
USB On-The-Go or USB-C Role switching.
Broken
HDMI/DP
Video and audio output with HDMI or DisplayPort.
Works

The Apple TV HD is a set-top box released in 2015 by Apple. It has 2GB of onboard memory, and an Apple A8 processor. It uses an SMSC LAN9730 for the Ethernet controller, and it has the same WiFi module as the original iPad Pro and the 4th gen iPad Mini.


Contributors

Maintainer(s)

How to Enter Flash Mode

1. Plug the device into your computer and the power cord.

2. Enter DFU mode.

  • Hold Menu and Play/Pause until the light rapidly flashes.

3. Verify DFU mode.

Type lsusb into your console. A new device including the text (DFU Mode) should appear.

Flashing

You can't currently flash via pmbootstrap, but the kernel can be booted via PongoOS.

Follow this guide to get the starting pieces up and running.

Prerequisites

Warning WARNING: Compilation of these tools on Alpine is broken currently. You can get some pre-compiled binaries here.
TODO TODO: Document extracting dtbs from kernel package.


$ pmbootstrap init
Select 'apple' for vendor and 'idevice' for codename
$ pmbootstrap install
Optionally enable netboot
$ pmbootstrap initfs hook_add netboot
Get the linux and initramfs
$ pmbootstrap export
Prep the m1n1 bootloader
$ cat path/to/m1n1.bin \
    path/to/boot/dtbs/apple/*.dtb \
    /tmp/postmarketOS-export/vmlinuz  \
    /tmp/postmarketOS-export/initramfs \
    > m1n1-linux.bin
Use palera1n to boot PongoOS
$ PALERA1N_BYPASS_PASSCODE_CHECK=1 doas palera1n -f -k path/to/Pongo.bin
Boot postmarketOS!
$ printf '/send path/to/m1n1-linux.bin\nbootm\n' | doas path/to/pongoterm

At this point your device should have gone through PongoOS, m1n1, and now be showing the postmarketOS bootsplash!

Netboot

Warning WARNING: Netbooting is broken currently for all devices. For more information look here.

If you enabled netbooting during the flashing setup you can use it to boot a rootfs. To serve the rootfs, run:

$ pmbootstrap netboot serve

If you see a tty and a login screen, that means pmOS is working! Now you can go through the usual procedures. (Using ssh, getting internet, etc.)

Users Owning This Device