TargetsEvaluation » History » Version 24
Paul Kocialkowski, 11/07/2012 04:45 PM
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 | 23 | Paul Kocialkowski | h1. Devices status |
34 | 3 | Denis 'GNUtoo' Carikli | |
35 | 24 | Paul Kocialkowski | |_. Device |_. Manufacturer |_. CyanogenMod |_. Bootloader |_. Standardness |_. Blobs |_. Firmwares |_. Modem |_. Notes | |
36 | | *Neo Freerunner* | *Openmoko* | No, "AoF":http://code.google.com/p/android-on-freerunner/ | u-boot, flash with dfu-utils | Audio: ALSA, GPS: NMEA, Modem: AT | No | No | Total isolation | Hardware is too old to be support by Replicant, armv4t | |
||
37 | | *N900* | *Nokia* | No, Nitdroid | chainloaded u-boot, flash with 0xff | 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 | |
||
38 | | *iPhone* | *Apple* | No, "iDroid":http://www.idroidproject.org | iDroid bootloader seems free | iPhone 3G: Audio: ALSA, Modem: AT, WiFi: libertas | Probably needs some | Probably needs some | Known to never sleep | | |
||
39 | | *One* | *GeeksPhone* | Yes | non-free, can't flash | Modem: non-standard, Camera: non-standard | Graphics, RIL, camera | MSM7x: modem has a lot of control | MSM SoC is easy to support on Android | |
||
40 | 3 | Denis 'GNUtoo' Carikli | |
41 | h1. Geeksphone Zero |
||
42 | |||
43 | Has root: YES |
||
44 | Sim Unlocked: YES |
||
45 | In production: YES |
||
46 | |||
47 | The Geeksphone Zero allows custom Android and Linux images to be run instead of the deault ones. |
||
48 | Cyanogenmod (the android derivate Replicant is based on) provides support for the Geeksphone Zero. |
||
49 | 4 | Denis 'GNUtoo' Carikli | |
50 | SoC is Qualcomm MSM7227 (easy to support on Android). |
||
51 | 3 | Denis 'GNUtoo' Carikli | |
52 | h1. GizmoForYou FLOW G1.55 |
||
53 | |||
54 | Has root: YES? |
||
55 | Sim Unlocked: YES? |
||
56 | In production: ? |
||
57 | |||
58 | Overo boards used in this phone are OMAP 3 with free xloader and u-boot (like in GTA04). |
||
59 | Modem uses AT and Android reference RIL (free) is used. Audio is ALSA. |
||
60 | |||
61 | Instructions to build Android 2.2 for it are provided: http://www.gizmoforyou.net/wiki/index.php/Building_G155_Android |
||
62 | The Android 2.2 source code is availble here: https://gitorious.org/flow-g1-5/ |
||
63 | |||
64 | Non-free firmwares are needed for WiFi, bluetooth, etc on the Overo boards that include these. |
||
65 | Also, a non-free gralloc lib is used (for graphical acceleration). The 0xdroid project should be able to provide a free gralloc for OMAP 3 boards as a working replacement. |
||
66 | |||
67 | Documentation (datasheets) are also available for most hardware components. |
||
68 | |||
69 | Unfortunately that phone isn’t cheap. |
||
70 | |||
71 | h1. DIY Phones |
||
72 | |||
73 | Has root: ? |
||
74 | Sim Unlocked: ? |
||
75 | In production: ? |
||
76 | |||
77 | There is a small number of Do-it-yourself phones where the user is |
||
78 | expected to assemble his phone. |
||
79 | Examples of this include the odroid |
||
80 | 5 | Denis 'GNUtoo' Carikli | ( http://www.hardkernel.com/ ) phones with comes with android support. |
81 | However the issue is that not all users wants or are able to assemble their own phones. |
||
82 | |||
83 | h1. Comparison of potential targets |
||
84 | |||
85 | 11 | Denis 'GNUtoo' Carikli | h2. Support easyness |
86 | |||
87 | 22 | Denis 'GNUtoo' Carikli | |Phone|Android target version|Gralloc|RIL|Audio|camera|sensors| GPS | |
88 | 21 | Denis 'GNUtoo' Carikli | |Geeksphone one | 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 | |
89 | 12 | Denis 'GNUtoo' Carikli | |Samsung Galaxy Nexus| 4.x, unsure if backporting to 2.3 is doable| recovery from replicant ics-preparation worked but not the gralloc(garbage on screen) | Easy thanks to samsung-ril+libsamsung-ipc | ALSA with free software module in cyanogenmod and AOSP | Seem to have a free camera library | ? | doable(SIRF)| |
90 | 18 | Denis 'GNUtoo' Carikli | |Samsung Galaxy SII| ? | ? | Easy thanks to samsung-ril+libsamsung-ipc | no free software module available, but is ALSA (seems doable) however the yamaha CODEC source code seem to be somehow offuscated according to some people| ? | ? | doable(SIRF) | |
91 | 14 | Denis 'GNUtoo' Carikli | |Samsung Galaxy SIII | 4.x, unsure if backporting to 2.3 is doable| ? | Easy thanks to samsung-ril+libsamsung-ipc | free software audio libraries available in cyanogenmod | ? | ? | unknown| |
92 | |Nokia N900 | ? (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 | ? | |
||
93 | 15 | Denis 'GNUtoo' Carikli | |
94 | 14 | Denis 'GNUtoo' Carikli | h2. Hardware freedom |
95 | |||
96 | 19 | Denis 'GNUtoo' Carikli | |Phone|Bootloader| Firmwares |Modem transport|Modem peripherals|Modem Storage| |
97 | 14 | Denis 'GNUtoo' Carikli | |Geeksphone One| proprietary | Wifi, ? | shared memory | Mic, GPS | Shared NAND | |
98 | 1 | Brian Kemp | |Samsung Galaxy Nexus | Proprietary, partially signed | Wifi,? | High speed serial if OMAP4 SOC (shared memory for other versions) | ? | ? | |
99 | 19 | Denis 'GNUtoo' Carikli | |Samsung Galaxy SII| proprietary | Wifi, ? | ? | ? | ? | |
100 | 1 | Brian Kemp | |Samsung Galaxy SIII | proprietary | Wifi, ? | ? | ? | ? | |
101 | |Nokia N900 | proprietary, partially signed | wifi,camera,bluetooth,? | High speed serial | GPS | ? | |