HardwareComparison

From freesmartphone.org
Jump to: navigation, search

Contents

Hardware and status comparison

Supported hardware

om-gta02

Om-gta02.JPG

n900

N900.jpg

Nexus S

NexusS.JPG

gta04

Gta04-case.jpg

summ up Status very old hardware, very well supported,hardware bugs
  • good hardware
  • very good(standard) kernel
  • no more big updates on the kernel(meego/mer is less active)
easy to finish the port(some integration issues to fix), GPS doesn't work yet(need to be reversed), camera doesn't work yet(need to look at replicant) Best hardware because it's made for FSO in mind,require less effort than other ports. summ up Status
Official images that uses FSO Official images that uses FSO
Booting
  • 2 bootloader, one used for un-brickability
  • U-boot,QI
  • Kernel can be loaded from microsd or from flash
  • rootfs can be loaded from microsd or from flash
  • proprietary bootloader, but we can talk to it via a free program(0xFFFF),flash a kernel etc...
  • u-boot can be chainloaded
fastboot compatible,not-replacable software bootloader free bootloaders: x-loader + u-boot Booting
CPU/SOC armv4t@400Mhz omap(armv7@600Mhz)

S5L8900

samsung S5PC110@1GHz DM3730: armv7@800Mhz CPU/SOC
RAM 128M 256M 512M 512M RAM
Storage
  • 256M flash
  • microsd(compatibility issue with some cards)
  • 32G oneNAND flash(repartitionable?)
  • NAND flash(where maemo is stored)
  • microsd
  • 16G iNAND flash
  • 512M flash
  • microsd
Storage
Display
  • 480x640
  • glamo chip/xorg driver
  • xrandr -o 1 should work when not broken
  • backlight working
  • 800x480
  • omapfb chip/xorg driver
  • xv support available in xf86-video-omapfb
  • no rotation in omapfb(but fbdev can rotate)
  • 480x800 (wvga)
  • works with xf86-video-fbdev
  • backlight driver
  • static rotation only (needs xorg restart)
  • 480x640
  • omapfb chip/xorg driver
  • xv support available in xf86-video-omapfb
  • no rotation in omapfb(but fbdev can rotate)
Display
Wifi yes: special version of ath6kl (no firmware needed) hardware present: wl1251_spi
  • working
  • PSM working
  • Require a non-free firmware
bcm4329:
  • scan now working with bcm4329
  • Require a non-free firmware
libertas 8686 (sdio?gpio?)
  • Working
  • Require a non-free firmware
Wifi
GPS yes hardware present
  • Documented here, not implemented yet
  • same protocol than the modem
available trough serial port,unknown protocol hardware problem in very early units, NMEA GPS
Bluetooth yes
  • working
yes
  • broken in recent 2.6.37 meego kernels,was working in older kenrels(2.6.28,2.6.35)
  • needs to be integrated
bcm4329 yes, inside the libertas chip Bluetooth
sound yes
  • hardware sound quality issues with headphones output

yes - ALSA

  • alsa scenarios need fixing,modem forwarder needs fixing
Alsa SOC standard ALSA, modem is a a separate sound card,bluetooth too sound
touchscreen working working working working touchscreen
Video Decoding Offload glamo(slow,problematic,etc...)
  • not integrated
yes,works
  • not integrated at all(gst-dsp is not even in oe)
Not tested not tested Video Decoding Offload
Audio decoding offload no not sure if possible(I didn't find firmware libraries for it in /lib/dsp on the device) Not looked at it, or even if it has that capability. not sure if possible Audio decoding offload
Telephony hardware present
  • working
  • A6 and before hardware revisions can suffer from a buzz issue during calls
hardware present
  • working trough fsogsmd and libsamsung-ipc
  • working
  • Audio forwarder(for A3 units and before) need to be more tested
Telephony
Power management suspend/resume
  • works in FSO
  • A7+ hardware revision has better suspend battery life
  • sometimes can't go out of suspend in 2.6.39(SHR kernel), may be different for debian
omap zeroclock
  • DVFS,CPUFREQ works in the 2.6.37 kernel
  • some revamping of suspend handling in FSO needed
  • basic suspend/resume seem to work
  • as there is no telephony yet,no telephony suspend/resume yet, we could look how maemo or meego does it</span>
Wakelocks, handled by fsousaged normal suspend/resume handled by FSO and the kernel(DVFS+cpufreq) Power management
usbnet yes yes (g_nokia or g_ether ) yes,special android version handled trough init script yes,standard usbnet
USB host mode possible yes,integrated in fso
  • 100 mA max?
integrated into the 2.6.28 power kernel, not available yet on higher kernels versions ? ? USB host mode possible
Camera hardware absent hardware present v4l2 Optional, not working yet Camera
Sensors Accelerometers
  • working
  • old 2.6.28 kernel proximity (open/closed), working and integrated in fso
  • ambientlight (in lux), not yet in fso
  • Accelerometers is a standard /dev/input node
  • Does accelerometer driver use polling???
LIS331DL ? Sensors
vibrator yes
  • working and integrated in fso
yes ? kernel drivers available,need to be integrated in fso. vibrator
Battery support yes, in kernel and fso
  • battery gauge integrated in the kernel
  • charging from usb cable or charger(but at the speed of the usb cable(trivial to fix)) integrated in fso
  • should it be integrated in the kernel instead
yes, in kernel and fso Battery support
keyboard hardware absent
  • 2 buttons only
hardware present
  • some issues with italian keyboard and GTK+ (up,down keys not working in GTK+ apps)
  • keyboard backlight not integrated in fso
hardware absent
  • 2 buttons only
keyboard
GUI,programs integration,DPI done
  • DPI added in openembedded
  • DPI added in openembedded
done because it's the same display/resolution/DPI than the freerunner GUI,programs integration,DPI
Detailled Status and links ? Detailled Status and links
om-gta02

Om-gta02.JPG

n900

N900.jpg

Nexus S

NexusS.JPG

gta04

Gta04-case.jpg

Looking for maintainers hardware

om-gta01

Om-gta02.JPG

htcdream / htcmagic

Htcdream.JPG

HTC HD2 / htcleo nexusone

Nexusone.jpg

iphone3g (abandoned) palm pre / palm pre plus / palm pre 2

Palmpre.jpg

summ up Status very old hardware,no wifi,less well supported than the freerunner,no wifi chip, proprietary GPS more recent hardware,end of life,core issues(bad alsa driver,no wifi PSM),half-well supported windows mobile device, very fast cpu,share some similarities with nexusone,but not well supported at all yet very fast CPU, configurations in openembedded and FSO while everything was motly standard, and there was even an openembedded port, the port was finally abandoned(due to the lack of decent (idroid)kernel) better hardware than the htcdream, better kernel and userland, has some core problems(wifi, NEON ), but the hardware is not as attracting as n900. Also the pre 2 CPU is quite better than the n900 now. summ up Status
Official images that uses FSO
  • htc magic needs to have the saphire board config in the kernel(the same kernel image could have dream and saphire board code at the same time)
  • htc dream userland needs to be adapted for htc magic

?

no official images yet(but configuration on openembedded) none yet,htcdream images used as it's the same architecture(armv6) with the idroid kernel,openembedded patch beeing made. Official images that uses FSO
Booting
  • U-boot(qi available but not advised)
  • rootfs can be loaded from microsd or from flash
  • usually comes with proprietary bootloader, but is often replaced while rooting the phone, or free in case of developer phones
  • Kernel can be loaded from flash or from usb fastboot protocol(if the bootloader permit it, else replace the bootloader if you need this feature)
  • rootfs can be loaded from microsd or from flash
 ?
  • easy bootloader unlock
  • Kernel can be loaded from flash or from usb fastboot protocol(if the bootloader permit it, else replace the bootloader if you need this feature)
  • rootfs can be loaded from microsd or from flash
  • look if there are some sources for the bootloader or free bootloaders
  • A bootloader called "OpeniBoot" from iDroid is installed
  • Currently a hacked implementation to load SHR by renaming the iX ramdisk initrd.img.gz to android.img.gz
  • iDroid is working on a menu configuration file to support multiple operating systems

OpeniBoot

  • A bootloader called "bootie" from Palm is installed
  • u-boot maybe can be chainloaded - needs investigation
Booting
CPU/SOC armv4t@266Mhz armv6-novfp@533Mhz(msm7k soc) QUALCOMM QSD8250 / ARM CORTEX-A8 1GHz armv7@1GHz armv6

S5L8900

  • Some NEON issues: in SHR mplayer compiled with NEON can make the phone freeze, seem a software issue

  • Armv7@500Mhz(palm pre and palm-pre plus),can be overclocked until 1GHz(very dangerous!) with webos-internals kernel ,omap SOC

  • ARMv7@1Ghz(palm pre 2)
CPU/SOC
RAM 128M 192M

(less amount usable)

576M 512M 128M

256M(palm pre)


512M(palm pre plus and pre 2)

RAM
Storage
  • 64M flash
  • partitioned flash
  • flash can only run yaffs2 for now
  • microsd
  • 1GB internal NAND flash
  • microsdhc
  • 512M internal NAND flash partitioned (android partitions like system,boot,recovery etc...)
  • microsdhc
  • Storage limited to size of the loopback image
  • 8G(palm pre) or 16G(palm pre plus and pre 2)
  • no microsd
Storage
Display
  • 320x480
  • standard framebuffer xorg driver
  • static rotation only (needs xorg restart)
  • backlight working
  • no FBIOBLANK_POWERDOWN, wakelocks used instead

  • wrong orientation for the htc magic(but very easy to change)
  • 480x800 (wvga)
  • works with gnutoo's driver
  • 480x800 (wvga)
  • works with xf86-video-fbdev
  • backlight driver
  • static rotation only (needs xorg restart)
  • xf86-video-msm hard to compile(gives some accelerations)
  • seems to work according to the SHR youtube video
  • 320x480
  • standard framebuffer xorg driver
  • static rotation only (needs xorg restart)
  • backlight working
  • 320x480
  • omapfb chip/xorg driver
  • xv support available in xf86-video-omapfb
  • no rotation in omapfb(but fbdev can rotate)
Display
Wifi hardware absent
  • PSM doesn't work well but cause found(it was not using MSM GPIO 29's IRQ but sdio irqs )
  • needs to be integrated
bcm4329
  • using wext but not cfg80211
  • PSM not tested
bcm4329
  • using wext but not cfg80211
  • PSM not tested
libertas 8686 (sdio?gpio?) libertas_sdio
  • Works with some modifications to an old compat wireless source
  • PSM untested
Wifi
GPS hardware present
  • proprietary
yes
  • reverse engineered
  • works but no full functionality
  • integrated, but not well(a bit hackish)
AGPS present but needs client program

free software qcom libraries works in android,but need to be integrated,/dev/smd27 output NMEA

hardware present hardware present
  • no one looked at it yet
  • same protocol than the modem
GPS
Bluetooth ? yes
  • working
  • needs to be integrated
yes - working in android

Hardware present, untested

bcm4329 hardware present Bluetooth
sound yes
  • hardware sound quality issues with headphones output???(unsure if it's the same than gta02 since I've no gta01)
yes
  • alsa
  • not finished(must find something like -ao sdl for all apps)
  • aplay and mplayer works
  • No multiplexing, code for that exist but I didn't find how to avoid the (worse) buffer underrun caused by it
  • linphonec doesn't work
working ALSA standard alsa with a lot of controls minimal alsa support
  • Audio routing is done via 'audio-scripts'
  • fsodeviced has already support for this
sound
touchscreen working working yes multitouch capacitive ELAN touchscreen working *working
  • mulititouch not working yet, although it should be possible
working:
  • has been decoded
  • has been implemented in a tslib plugin, clicks works
  • some precision issues
touchscreen
Video Decoding Offload no yes
  • no one has tried looking if there are some source available for android
no - proprietary interface will only work in android no one looked at it yes
  • not integrated
Video Decoding Offload
Audio decoding offload no yes
  • kernel support
  • test userland program (playwav2.c)
  • not integrated into fso/gstreamer/mplayer etc...
yes - WIP - proprietary android interface. ALSA drivers are present for the SoC but need to be ported. not integrated not sure if possible Audio decoding offload
Telephony hardware present
  • working
hardware present
  • working
  • the telephony's audio is handled by the modem,but routing can be done in userspace
yes but needs sound
  • in android the reference ril(which has source code) works(call etc works but microphone is muted)
  • userspace plugin need to be integrated in fsousaged
AT commands,ril source code available hardware present
  • working
Telephony
Power management suspend/resume
  • works in FSO
wakelocks
  • suspend/resume works in FSO
  • wakelocks not integrated in fso(could be usefull, for instance for better battery life while playing music)
wakelocks?
  • no FSO support yet(may be easy to add)
wakelocks? suspend/resume
  • works in FSO
Power management
usbnet yes yes yes yes working now yes usbnet
USB host mode possible ? ? yes unpowered high speed usb host via micro usb jack untested ? USB host mode possible
Camera hardware absent hardware present
  • not working
  • kernel driver uses non-standard pmem and need an userspace activator
harware present
  • proprietary interface not working yet.
  • A userspace client that talks to the kenrel driver needs to be written
hardware present
  • not working
Camera
Sensors

Compas and accelerometers in one chip

  • Kernel drivers only
  • how to use it is unknow(too many ioctls)
  • gsensor
  • compass
  • ambient light
  • proximity
  • none tested
LIS331DL
  • kxsd9_accelerometer (tri-axis accelerometer)
  • temt6200_light (ambient light sensor)
  • hsdl9100_proximity (IR Proximity Sensor)
Sensors
vibrator ?
  • working and integrated in fso
yes
  • working and integrated in fso
yes
  • not tested
? vibrator
Battery support yes, in kernel and fso yes, in kernel and fso yes
  • yes,in kernel
? Battery support
keyboard hardware absent
  • 2 buttons only
hardware present
  • us,it,de mapped,upstream,and in oe
  • some keys like left.right,up,down are absent (but can be mapped somewhere)
  • keyboard backlight integrated in fso
  • some issues with Tab like keys and GTK+ (Tab is not working in gtk+ apps)

  • hardware absent on htcmagic(but present on htcdream)
no(hardware absent) no(hardware absent) no(hardware absent) hardware present,working(x-keyboard-config configuration available) keyboard
GUI,programs integration,DPI done
  • DPI added in openembedded
  • todo
?
  • DPI added in openembedded
  • todo
? GUI,programs integration,DPI
Detailled Status and links

References:

Detailled Status and links
om-gta01

Om-gta02.JPG

htcdream / htcmagic

Htcdream.JPG

HTC HD2 / htcleo nexusone

Nexusone.jpg

iphone3g (abandoned) palm pre / palm pre plus / palm pre 2

Palmpre.jpg

Developer Status

om-gta01 om-gta02 htcdream / htcmagic palm pre / palm pre plus / palm pre 2 n900 HTC HD2 / htcleo nexusone iphone3g Nexus S gta04
Supported ? No, no current devs has one Yes,by FSO,SHR,Debian No,Looking for FSO and SHR maintainers No Yes, but slow development on modem and alsa forwarder No,Looking for FSO and SHR maintainers (no activity since a while) No,Looking for FSO and SHR maintainers No,Abandoned by its maintainer Yes Yes
Kernel mainlining status board not in mainline good but glamo and wifi not in mainline, details here not good, requires serial and the maintainer is against merging the rpc part because it would make the kernel too dirty not good, mainlining seem too hard good, see the 3.0 branch and the 3.0 branch with camera ? very partial(only serial last time I checked) Port abandoned board file not mainline, see its mainline status for more details on which drivers are mainline
Debug board yes: serial and jtag: serial possible,jtag is hard no one tried yet to get serial or jtag, pins suspected but unknown ? ? Serial should be possible Serial is possible Serial cable should be included
People having a debug board:
  • GNUtoo
  • <insert your name here>
None None None None None
  • GNUtoo
  • <insert your name here>
Kernel problems ? glamo can be sometimes problematic on more recent kernels alsa,wifi on old kernel, porting to new kernels is possible but require a lot of work(for instance gpiolib was not maintained well on newer kernels) wifi,neon. bluetooth on 2.6.37 ? wifi
modem standardness very good, AT commands, supported by fsogsmd good(AT commands but with some non-standard commands documented in the xda ril source code) bad(special protocol) bad(special protocol) good(AT commands but with some non-standard commands documented in the xda ril source code) good(AT commands but with some non-standard commands documented in the xda ril source code) bad(special protocol)
Modem status fully working very good, not all undocumented commands are handled working:
  • calls
  • SMS
  • data
  • calls partial(bad sound quality)
  • data
?
  • calls works without microphone sound(need to integrate the microphone activator inside the alsa driver) + needs to integrate all that in fsodeviced
  • data(but no deactivation)
  • telephony
GPS standardness proprietary GPS good, can output NMEA (and Ublox) good, can output NMEA,needs an activator bad, special protocol(the GPS is attached to the modem) bad, special protocol(the GPS is attached to the modem) good, can output NMEA,needs an activator good, can output NMEA,needs an activator bad, special serial protocol
GPS status
  • needs a proprietary userspace driver
  • reverse engineered started and abandoned.
Ublox fully working with frameworkd,else NMEA(limited: no AGPS, less control over the GPS) working with frameworkd not working not working not working can work(with gps-test chrooted in android using only free software userspace drivers it works), not working not working
om-gta01 om-gta02 htcdream / htcmagic palm pre / palm pre plus / palm pre 2 n900 HTC HD2 / htcleo nexusone iphone3g Nexus S gta04
Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox