Project

General

Profile

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 |