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 | ? | |