TargetsEvaluation » History » Version 52
Denis 'GNUtoo' Carikli, 11/25/2012 02:34 AM
1 | 1 | Brian Kemp | h1. Good Potential Targets |
---|---|---|---|
2 | |||
3 | 23 | Paul Kocialkowski | h2. Requirements |
4 | 1 | Brian Kemp | |
5 | 23 | Paul Kocialkowski | h3. Basic |
6 | 1 | Brian Kemp | |
7 | 23 | Paul Kocialkowski | List of the bare minimum requirements for a device to be ported to Replicant: |
8 | * The device must be supported by CyanogenMod officially (better) or via 3rd party repos |
||
9 | * There must be a way to flash images (via bootloader or recovery) using a free program |
||
10 | * The kernel must not be signed: the bootloader must not check the kernel signature |
||
11 | * The kernel sources must have been released |
||
12 | * The network type must be GSM, no CDMA phone can be supported for now |
||
13 | 1 | Brian Kemp | |
14 | 23 | Paul Kocialkowski | h3. Good target |
15 | 1 | Brian Kemp | |
16 | 23 | Paul Kocialkowski | What makes a good target for Replicant: |
17 | * Bootloader must be ready to flash images, or be very easy to unlock |
||
18 | * Free user-space implementation for most of the hardware already available |
||
19 | * Standard or well-known protocols used in the hardware (V4L2/ALSA/NMEA, etc) |
||
20 | * Firmwares needed only for WiFi/Bluetooth, and not sound, screen, touchscreen, camera, etc |
||
21 | * Freedom-compliant hardware design: Modem isolation (no shared mem, GPS, audio) |
||
22 | |||
23 | h3. Ideal target |
||
24 | |||
25 | An ideal target for Replicant would be: |
||
26 | * Free bootloaders that allow easy flashing for the user |
||
27 | * All the hardware using standard protocols, kernel-drivers and no user-space binary blobs |
||
28 | 1 | Brian Kemp | * Components that do not require loadable firmware |
29 | 23 | Paul Kocialkowski | * Ways to update the internal firmwares of the chips (for instance to allow a free software modem implementation) |
30 | * Total modem isolation (doesn't control audio, nor GPS, mem, NAND, etc) |
||
31 | 24 | Paul Kocialkowski | * SIM unlock |
32 | 3 | Denis 'GNUtoo' Carikli | |
33 | 26 | Paul Kocialkowski | h2. Devices status |
34 | 3 | Denis 'GNUtoo' Carikli | |
35 | 26 | Paul Kocialkowski | h3. Android devices |
36 | 1 | Brian Kemp | |
37 | 31 | Denis 'GNUtoo' Carikli | |_. Device |_. Manufacturer |_. CyanogenMod port |_. Flash method |_. SoC |_. Graphics |_. Sound |_. Modem |_. WiFi/Bluetooth |_. Camera |_. GPS |_. Sensors | |
38 | 50 | Paul Kocialkowski | | *One* | *GeeksPhone* | CM 7.2 (Android 2.3) | Recovery | MSM7K | Should be fast | Should work | Non-standard, bad design for freedom | WiFi is the same as GTA04 | MSM undocumented mechanism | Probably NMEA from modem, bad design for freedom | ? | |
39 | | *Zero* | *GeeksPhone* | CM 7.2 (Android 2.3) | Fastboot | MSM7227 | Should be fast | May need firmwares | ? | Need firmwares | MSM undocumented mechanism | Probably NMEA from modem, bad design for freedom | ? | |
||
40 | | *Galaxy S3* | *Samsung* | CM 9.1 (Android 4.0) | Heimdall/Recovery | "Exynos 4412":https://en.wikipedia.org/wiki/Exynos | Should work, maybe as well as Galaxy S2 | Free module | Samsung IPC | Need firmwares | Non-free | BCM47511: secret protocol | ? | |
||
41 | | *Nexus 7* | *Asus* | CM 10 (Android 4.1) | Fastboot | Tegra 4 | ? | Free module | 3G version modem uses AT | Need firmwares | Non-free tegra module, perhaps not even v4l2 | BCM4751: secret protocol | ? | |
||
42 | 49 | Paul Kocialkowski | | *Nexus 10* | *Samsung* | ? | Fastboot | "Exynos 5250":https://en.wikipedia.org/wiki/Exynos | Free gralloc, hwcomposer | Free module | N/A | Need firmwares | Free module | BCM4751: secret protocol | Free module | |
43 | 3 | Denis 'GNUtoo' Carikli | |
44 | 26 | Paul Kocialkowski | h3. Other devices |
45 | 3 | Denis 'GNUtoo' Carikli | |
46 | 26 | Paul Kocialkowski | |_. Device |_. Manufacturer |_. Android port |_. Bootloader |_. SoC |_. Standardness |_. Blobs |_. Firmwares |_. Modem |_. Notes | |
47 | | *Neo Freerunner* | *Openmoko* | "AoF":http://code.google.com/p/android-on-freerunner/ | u-boot, flash with dfu-utils | Samsung S3C2442, CPU @400Mhz | Audio: ALSA, GPS: NMEA, Modem: AT | No | No | Total isolation | Hardware is too old to be support by Replicant, armv4t | |
||
48 | | *N900* | *Nokia* | Nitdroid | chainloaded u-boot, flash with 0xff | OMAP3430, CPU @600Mhz | Voice calls depend on cmt_speech pulseaudio plugin, modem protocol is non-standard but implemented in ofono | Nitdroid uses blobs | Nitdroid uses firmwares | Issues | Nitdroid is hard to build and undocumented | |
||
49 | | *iPhone* | *Apple* | "iDroid":http://www.idroidproject.org | iDroid bootloader seems free | iPhone 3G: Similar to Samsung S5PC110 | iPhone 3G: Audio: ALSA, Modem: AT, WiFi: libertas | Probably needs some | Probably needs some | Known to never sleep | | |
||
50 | | *FLOW G1.55* | *GizmoForYou* | "Stock":https://gitorious.org/flow-g1-5/ | xloader + u-boot | OMAP3 | Audio: ALSA, Modem: AT | ? | WiFi/Bluetooth | Needs to be check, could be OK | Instructions to build Android 2.2 for it are provided: http://www.gizmoforyou.net/wiki/index.php/Building_G155_Android Unfortunately that phone isn’t cheap. | |
||
51 | 3 | Denis 'GNUtoo' Carikli | |
52 | 27 | Paul Kocialkowski | There is a small number of Do-it-yourself phones where the user is expected to assemble his phone. Examples of this include the "odroid":http://www.hardkernel.com/ phones with comes with android support. |
53 | 5 | Denis 'GNUtoo' Carikli | However the issue is that not all users wants or are able to assemble their own phones. |
54 | |||
55 | h1. Comparison of potential targets |
||
56 | |||
57 | 11 | Denis 'GNUtoo' Carikli | h2. Support easyness |
58 | |||
59 | 37 | Denis 'GNUtoo' Carikli | |Phone|Soc|Android target version|Gralloc|RIL|Audio|camera|sensors| GPS | proprietary files to replace | Who has one? | |
60 | 38 | Denis 'GNUtoo' Carikli | |Geeksphone one | Qualcomm MSM7K | maybe 2.3? |Easy, probably supported by hardware/msm7k audioHardware libraries|AT possible(TODO:contact VquickSilver for details),but proprietary ril uses RPC binary protocol(TODO:contact morphis for details) | Easy, probably supported by hardware/msm7k audioHardware libraries|difficult since no one finished support for msm camera yet.|unknown| unknown yet | ? | paulk | |
61 | 1 | Brian Kemp | |Nokia N900 | TI OMAP3 | ? (look at Forking Nitdroid) | ? | Documented in free software GNU/Linux compatible code | Documented in free software GNU/Linux compatible code | Standard interface | Should be easy | ? | ? |GNUtoo | |
62 | 51 | Denis 'GNUtoo' Carikli | |"Samsung Galaxy SIII":https://en.wikipedia.org/wiki/Galaxy_SIII | "Samsung Exynos4 Quad":https://en.wikipedia.org/wiki/Exynos | 4.x | ? | Easy thanks to samsung-ril+libsamsung-ipc | free software audio libraries available in cyanogenmod | ? | ? | unknown| "here":https://raw.github.com/CyanogenMod/android_device_samsung_i9300/jellybean/proprietary-files.sh and "here":https://raw.github.com/CyanogenMod/android_device_samsung_smdk4412-common/jellybean/proprietary-files.sh |Nobody | |
63 | 43 | Denis 'GNUtoo' Carikli | | "Galaxy Tab 2 7":https://en.wikipedia.org/wiki/Galaxy_Tab_2_%287.0%29 | OMAP4430 | 4.x | 600x1024 : smaller resolution than galaxy nexus => doable | Easy thanks to samsung-ril+libsamsung-ipc | has a free software library | tiler, hard but same than galaxy Nexus | ? | ? | "here":https://raw.github.com/CyanogenMod/android_device_samsung_p3100/jellybean/proprietary-common-files.txt and "here":https://raw.github.com/CyanogenMod/android_device_samsung_p3100/jellybean/proprietary-p3100-files.txt | GNUtoo can get one cheap | |
64 | 48 | Denis 'GNUtoo' Carikli | | "Nexus 10":https://en.wikipedia.org/wiki/Nexus_10 | "Samsung Exynos 5250":https://en.wikipedia.org/wiki/Exynos | 4.x? | free software, depends on 3d ? or not? difficult? (because of a ultra-high resolution: 2560x1600 ) | None (No GSM) | Free software | Free software | Free software | "non-free":https://android.googlesource.com/device/samsung/manta/+/270fe991a1a8d054f89cbcb32960374d732cc969/gps/ | "probably Only 3d, and remove firmwares":https://android.googlesource.com/device/samsung/manta/+/270fe991a1a8d054f89cbcb32960374d732cc969/proprietary-blobs.txt | Nobody | |
65 | 15 | Denis 'GNUtoo' Carikli | |
66 | 14 | Denis 'GNUtoo' Carikli | h2. Hardware freedom |
67 | |||
68 | 19 | Denis 'GNUtoo' Carikli | |Phone|Bootloader| Firmwares |Modem transport|Modem peripherals|Modem Storage| |
69 | 14 | Denis 'GNUtoo' Carikli | |Geeksphone One| proprietary | Wifi, ? | shared memory | Mic, GPS | Shared NAND | |
70 | 19 | Denis 'GNUtoo' Carikli | |Nokia N900 | proprietary, partially signed | wifi,camera,bluetooth,? | High speed serial | GPS | ? | |
71 | 46 | Denis 'GNUtoo' Carikli | |Samsung Galaxy SIII | proprietary | Wifi, ? | ? | ? | ? | |
72 | 47 | Denis 'GNUtoo' Carikli | |Samsung Galaxy Tab 2 7" | ? | Wifi,? | High speed serial if OMAP4 SOC (shared memory for other versions) | ? | ? | |
73 | |Nexus 10 | ? | Wifi, others | No Modem | No Modem | No Modem | |