blob: b205322ad254a90c24a06c479b1ab4e554f94372 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
Neo1973 GTA01 hardware
SC2410 SoC @ 266MHz
480x640 LCM, 262k colors
128MB SDRAM
128MB SLC NAND (512/16k)
USB 1.1 device and host (unpowered)
A-GPS (without processor)
GSM+GPRS chipset (ARM7 based)
2 stereo speakers (1.2W)
CSR4 based Bluetooth
Free Software stack
bootloader: u-boot current git
kernel: linux 2.6.20.4
xserver: kdrive
glibc
glib
gtk+
libmokoui
libmokocore
libgsmd / gsmd
Development Model
We actively contribute our code upstream
e.g. kernel goal: make vanilla 2.6.22 kernel have all drivers
Our build system is public
Everyone can rebuild everything
cross-toolchain
u-boot / kernel image
application/library packages
Based on OpenEmbedded (OE)
Hackable Device
The device shall be under full user control
Everyone should be able to hack it, at any level
hardware hacking (i2c, spi, gpio on test pads / connector)
system-level hacking (bootloader, OS)
UI level hacking
Make entry barrier for development as easy as possible
bootloader prompt via USB serial emulation
Serial console
JTAG for the people
Provide Debug Board with embedded USB JTAG + serial adapter
Standards compliance
We use open/documented/available standards wherever possible
Use official USB device firmware upgrade protocol
Have charger behave 100% to USB spec (100/500mA)
Use GSM chipset that follows GSM 07.07/07.10 closely
Application Processor GSM integration
kernel line discipline implementation for GSM 07.10
userspace GSM daemon with unix domain socket
libgsmd with API for applications
lightweight, doesn't have _any_ dependencies aside from glibc
|