Please note that User Registration has been temporarily disabled due to a recent increase in automated registrations. If anyone needs an account, please request one here: RequestAccount. Thanks for your patience!--Wmat (talk)
Please email User:Wmat if you experience any issues with the Request Account form.

N900

From eLinux.org
Revision as of 16:56, 10 September 2012 by Sre (Talk | contribs)

Jump to: navigation, search

Status

chip purpose docs impl merge board impl board merge
OMAP3430 System-on-chip code Yes Yes Yes Yes
* Cortex A8 CPU ARM infocenter Yes Yes N/A
* * ARMv7 Instruction set ARM infocenter Yes Yes N/A
* * NEON Media Extensions ARM infocenter Yes Yes N/A
* * Thumb Code compression ARM infocenter Yes by 2.6.12 ? N/A
* * Thumb2 Code compression ARM infocenter Yes Yes N/A
* * ThumbEE Instruction Set for JIT compilers ARM infocenter Yes Yes N/A (Userspace: Java VM?)
* * VFP Floating-point coprocessor ARM infocenter Yes by 2.6.12 ? N/A
* M-Shield AES acceleration code Yes 2.6.37-rc1 N/A
* OMAP 3 Camera OMAP3 Camera Chip Connection Bus code Yes 2.6.39-rc1 N/A
* OMAP DSS Video HW abstraction layer code Yes Yes N/A
* OMAP DRM KMS video driver N/A Yes 3.3-rc1 N/A
* TMS320 C64x DSP (also called IVA 2+) datasheet Yes Yes N/A (Userspace: gst-dsp)
* PowerVR SGX530 OpenGL ES and OpenVG acceleration No No No No No
* OMAP Boot Tags? Provides boot information from bootloader (NOLO)  ?  ?  ?  ?  ?
* OMAP Watchdog Watchdog code Yes Port to new Watchdog API Yes Yes
 ??? eMMC & SD/MMC card code Yes Yes Yes Yes
TI TWL4030 multifunction (I2C) TPS65950 TRM N/A
* Audio part of TI TWL4030 Yes Yes Yes Yes
* Vibrator part of TI TWL4030 Yes Yes Yes 2.6.39-rc1
* Real-Time Clock part of TI TWL4030 Yes Yes N/A
* Watchdog part of TI TWL4030 Yes Port to new Watchdog API Yes Yes
GPIO Camera button N/A Yes Yes Yes Yes
Taos TSL2563 Ambient light sensor datasheet Yes 2.6.33 Yes Yes
LP5523 LED driver documentation Yes 2.6.37-rc2 Yes 3.1-rc1
Sony ACX565AKM LCD panel code Yes 2.6.35 Yes 2.6.36
TI TSC2005 Touchscreen controller datasheet 2.6.39-rc1 2.6.39-rc1 Yes 3.3-rc1
WL1251 802.11b/g WiFi code Yes 2.6.31 Yes 2009-11-22
Si4713 FM transmitter datasheet Yes 2.6.32 Yes Yes
TPA6130a2 Headphone amplifier datasheet Yes 2.6.33 Yes Yes
TLV320AIC3X Digital audio data serial code Yes 2.6.25 Yes Yes
GPIO Proximity sensor N/A Yes Yes Yes Yes
GPIO Keyboard N/A (layout: code) Yes 2.6.33 Yes Yes
Phonet Modem protocol code Yes 2.6.28 N/A
HSI Modem Bus Framework code Yes 3.4-rc2 N/A
Omap SSI Synchronous Serial Interface code RFCv5 (2011-06-10) No No No
* TI NaviLink NL5350 GPS (via Phonet modem protocol) reveng Userspace gps2.c
* A-GPS No Client/server SUPL application: http://www.tajuma.com/supl/index.html
isp1704 USB charger detector code Yes 2.6.37-rc1 Yes 2011-04-20
bq27200 Battery monitor chip documentation Yes 2.6.28 patch 3.3-rc1
OneNAND Flash memory code Yes 2.6.15 Yes Yes
LIS302DL Accelerometers datasheet Yes 2.6.32 patch 3.5-rc1
ADP 1653 Flash Torch code Yes 3.1-rc1 Yes No
bq24150a Battery charger documentation WIP No WIP No
STM VS6555 Webcam datasheet Yes No Yes No
ET8EK8 Main Camera datasheet Yes No Yes No
AD5820 Autofocus code Yes No Yes No
BCM2048 Bluetooth old code Yes No Yes No
* FM/RDS receiver old code Yes No Yes No
IR Diode on GPIO Infrared/CIR transmitter N/A Yes WIP Yes WIP
AV/Jack/GPIO Nokia AV accessory detection, Tvout and Headset button support old code Yes No Yes No

Some patches are in meego obs repository: https://build.pub.meego.com/package/files?package=kernel-adaptation-n900&project=CE%3AAdaptation%3AN900

Camera

Camera (front & back) drivers are available from this git: [1]. The code is not in the mainline kernel, because it uses a camera firmware, which can be avoided by changing the driver.

U-Boot

Instead of booting the kernel directly from NOLO (which restricts you to using ONE kernel), U-Boot can be used as second bootloader. The Boot Process will end up like this: NOLO -> U-Boot -> Kernel. The Maemo kernel is appended to U-Boot, since U-Boot will be at the location where the Maemo kernel is located normally.

The U-Boot patches to support the N900 are not yet mainline, but have been proposed for inclusion recently: PATCH v2: Nokia RX-51 support.

Git repository with N900 patches based on U-Boot master is here: https://gitorious.org/u-boot-shr/u-boot (branch pali)

Thread on talk.maemo.org where is last new version: http://talk.maemo.org/showthread.php?t=81613

Charging

Charging is currently done with a shell script, which and "i2c-dev" kernel module. There are plans to move this into the kernel, so that charging happens automatically once you plug your N900 into a USB port. You can find discussions and some code here. Recently (3.3-rc1) the kernel got a new Charge Manager Framework (Announcement), which will help with this task. You can find its documentation under: Documentation/power/charger-manager.txt

Modem

The modem is connected via a bus called SSI, which is an old version of HSI. In linux multiple things are involved to get it working:

Patches missing mainline to get modem support: