Difference between revisions of "Status"
User890104 (talk | contribs) |
|||
| (68 intermediate revisions by 9 users not shown) | |||
| Line 1: | Line 1: | ||
| − | This status is based on the progress the | + | <!-- |
| + | {{outdated|reason=This page is not updated anymore, please refer to [https://www.rockbox.org/ Rockbox's website] for a list of supported iPod models.}} | ||
| + | --> | ||
| + | This status is based on the progress the freemyipod team has made so far. This is mostly a summary of reverse engineering and 'janitorial' work required to run end-user software like Rockbox or Linux. | ||
| − | + | {| class="wikitable" | |
| − | + | ! !! [[Nano 2G]] !! [[Nano 3G]] !! [[Nano 4G]] !! [[Nano 5G]] !! [[Nano 6G]] !! [[Nano 7G]] !! [[Classic 1G]] !! [[Classic 2G]] !! [[Classic 3G]] | |
| − | |||
| − | {| | ||
| − | ! !! | ||
|- | |- | ||
| − | | | + | | Code execution |
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:green">'''Yes'''</span> | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Tethered'''</span> | ||
| + | | <span style="color:green">'''Yes'''<ref name="nano6g7g"/></span> | ||
| + | | <span style="color:green">'''Yes'''<ref name="nano6g7g"/></span> | ||
| <span style="color:green">'''Yes'''</span> | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:green">'''Yes'''</span> | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:green">'''Yes'''</span> | | <span style="color:green">'''Yes'''</span> | ||
| + | |- | ||
| + | | Firmware decryption | ||
| <span style="color:green">'''Yes'''</span> | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:green">'''Yes'''</span> | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:green">'''Yes'''</span> | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:green">'''Yes'''</span> | | <span style="color:green">'''Yes'''</span> | ||
| − | | <span style="color: | + | | <span style="color:red">'''No'''</span> |
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:green">'''Yes'''</span> | | <span style="color:green">'''Yes'''</span> | ||
|- | |- | ||
| − | | | + | | [[U-Boot]] |
| − | |||
| − | |||
| − | |||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| Line 33: | Line 40: | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
|- | |- | ||
| − | | | + | | [[emCORE]] |
| <span style="color:green">'''Yes'''</span> | | <span style="color:green">'''Yes'''</span> | ||
| − | |||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | |- | ||
| + | | Boot [[OSOS]] | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| + | | <span style="color:grey">'''No'''<ref name="tethered"/></span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | |- | ||
| + | | SDRAM | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:red">'''No'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:grey">'''No'''<ref name="tethered"/></span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
|- | |- | ||
| − | | | + | | UART |
| − | | <span style="color: | + | | <span style="color:green">'''Yes'''</span> |
| − | | <span style="color: | + | | <span style="color:green">'''Yes'''</span> |
| − | | <span style="color: | + | | <span style="color:grey">'''No'''<ref name="uartnotneeded"/></span> |
| + | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | |- | ||
| + | | USB | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | |- | ||
| + | | SPI | ||
| + | | <span style="color:grey">'''Unused'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
|- | |- | ||
| − | | | + | | I2C |
| + | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:green">'''Yes'''</span> | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:green">'''Yes'''</span> | | <span style="color:green">'''Yes'''</span> | ||
| Line 65: | Line 113: | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | |- | ||
| + | | Backlight | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| − | | <span style="color: | + | | <span style="color:green">'''Yes'''</span> |
| − | | <span style="color: | + | | <span style="color:green">'''Yes'''</span> |
| + | | <span style="color:green">'''Yes'''</span> | ||
|- | |- | ||
| − | | | + | | LCD |
| − | | <span style="color: | + | | <span style="color:green">'''Yes'''</span> |
| − | |||
| − | |||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | |- | ||
| + | | Clickwheel | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
|- | |- | ||
| − | | | + | | Audio |
| − | | <span style="color: | + | | <span style="color:green">'''Yes'''</span> |
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| Line 92: | Line 157: | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | |- | ||
| + | | NAND/Hard Drive | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| Line 97: | Line 168: | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| − | | | + | | <span style="color:green">'''Yes'''</span> |
| − | + | | <span style="color:green">'''Yes'''</span> | |
| − | + | | <span style="color:green">'''Yes'''</span> | |
| − | |||
|- | |- | ||
| − | | | + | | Power management |
| <span style="color:green">'''Yes'''</span> | | <span style="color:green">'''Yes'''</span> | ||
| − | |||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| − | |||
| − | |||
| − | |||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| + | | <span style="color:grey">'''Partially'''</span> | ||
| + | | <span style="color:grey">'''Partially'''</span> | ||
| + | | <span style="color:grey">'''Partially'''</span> | ||
|- | |- | ||
| − | | | + | | RTC |
| + | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
|- | |- | ||
| − | | | + | | Piezo |
| + | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| − | |||
| − | |||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| Line 138: | Line 205: | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
|- | |- | ||
| − | | | + | | Accelerometer |
| − | | <span style="color: | + | | <span style="color:grey">'''N/A'''</span> |
| + | | <span style="color:grey">'''N/A'''</span> | ||
| + | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| + | | <span style="color:grey">'''N/A'''</span> | ||
| + | | <span style="color:grey">'''N/A'''</span> | ||
| + | | <span style="color:grey">'''N/A'''</span> | ||
|} | |} | ||
| + | |||
| + | ===Annotations=== | ||
| + | <references> | ||
| + | <ref name="uartnotneeded">UART is not really needed here as we can already access the device via USB.</ref> | ||
| + | <ref name="nano6g7g">Nano 6G and Nano 7G code execution is implemented using CVE-2010-1797</ref> | ||
| + | <ref name="tethered">Nano 5G support is implemented in a tethered fashion via wInd3x, where we re-use parts of the original Apple boot chain which negates the need of some features.</ref> | ||
| + | </references> | ||
Latest revision as of 16:34, 30 December 2023
This status is based on the progress the freemyipod team has made so far. This is mostly a summary of reverse engineering and 'janitorial' work required to run end-user software like Rockbox or Linux.
| iPod nano (2nd generation) | iPod nano (3rd generation) | iPod nano (4th generation) | iPod nano (5th generation) | iPod nano (6th generation) | iPod nano (7th generation) | iPod classic (6th generation) | iPod classic (6th generation) | iPod classic (6th generation) | |
|---|---|---|---|---|---|---|---|---|---|
| Code execution | Yes | Yes | Yes | Tethered | Yes[1] | Yes[1] | Yes | Yes | Yes |
| Firmware decryption | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes |
| U-Boot | No | No | No | Yes | No | No | No | No | No |
| emCORE | Yes | No | Yes | No | No | No | Yes | Yes | Yes |
| Boot retailOS | Yes | Yes | No | No[2] | No | No | Yes | Yes | Yes |
| SDRAM | Yes | No | Yes | No[2] | No | No | Yes | Yes | Yes |
| UART | Yes | Yes | No[3] | Yes | No | No | Yes | Yes | Yes |
| USB | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes |
| SPI | Unused | Yes | No | No | No | No | Yes | Yes | Yes |
| I2C | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes |
| Backlight | Yes | No | Yes | No | No | No | Yes | Yes | Yes |
| LCD | Yes | No | Yes | No | No | No | Yes | Yes | Yes |
| Clickwheel | Yes | Yes | No | No | No | No | Yes | Yes | Yes |
| Audio | Yes | No | No | No | No | No | Yes | Yes | Yes |
| NAND/Hard Drive | Yes | No | No | No | No | No | Yes | Yes | Yes |
| Power management | Yes | No | No | No | No | No | Partially | Partially | Partially |
| RTC | Yes | No | No | No | No | No | Yes | Yes | Yes |
| Piezo | Yes | No | No | No | No | No | No | No | No |
| Accelerometer | N/A | N/A | Yes | No | No | No | N/A | N/A | N/A |
Annotations
- ↑ 1.0 1.1 Nano 6G and Nano 7G code execution is implemented using CVE-2010-1797
- ↑ 2.0 2.1 Nano 5G support is implemented in a tethered fashion via wInd3x, where we re-use parts of the original Apple boot chain which negates the need of some features.
- ↑ UART is not really needed here as we can already access the device via USB.