diff options
Diffstat (limited to '2007/openmoko-technical-blr2007')
-rw-r--r-- | 2007/openmoko-technical-blr2007/images/debugboard_v2_concept.jpg | bin | 0 -> 22065 bytes | |||
-rwxr-xr-x | 2007/openmoko-technical-blr2007/images/gta01b_v3_bottom.jpg | bin | 0 -> 849092 bytes | |||
-rw-r--r-- | 2007/openmoko-technical-blr2007/images/gta01bv4_bottom.jpg | bin | 0 -> 928930 bytes | |||
-rw-r--r-- | 2007/openmoko-technical-blr2007/images/gta01bv4_top.jpg | bin | 0 -> 824865 bytes | |||
-rw-r--r-- | 2007/openmoko-technical-blr2007/images/neo1973_debugboard_v2_top_annotated.jpg | bin | 0 -> 318075 bytes | |||
-rw-r--r-- | 2007/openmoko-technical-blr2007/notes.txt | 57 | ||||
-rw-r--r-- | 2007/openmoko-technical-blr2007/openmoko-tech.mgp | 262 |
7 files changed, 319 insertions, 0 deletions
diff --git a/2007/openmoko-technical-blr2007/images/debugboard_v2_concept.jpg b/2007/openmoko-technical-blr2007/images/debugboard_v2_concept.jpg Binary files differnew file mode 100644 index 0000000..3a8be44 --- /dev/null +++ b/2007/openmoko-technical-blr2007/images/debugboard_v2_concept.jpg diff --git a/2007/openmoko-technical-blr2007/images/gta01b_v3_bottom.jpg b/2007/openmoko-technical-blr2007/images/gta01b_v3_bottom.jpg Binary files differnew file mode 100755 index 0000000..6cfa013 --- /dev/null +++ b/2007/openmoko-technical-blr2007/images/gta01b_v3_bottom.jpg diff --git a/2007/openmoko-technical-blr2007/images/gta01bv4_bottom.jpg b/2007/openmoko-technical-blr2007/images/gta01bv4_bottom.jpg Binary files differnew file mode 100644 index 0000000..c4e1ba4 --- /dev/null +++ b/2007/openmoko-technical-blr2007/images/gta01bv4_bottom.jpg diff --git a/2007/openmoko-technical-blr2007/images/gta01bv4_top.jpg b/2007/openmoko-technical-blr2007/images/gta01bv4_top.jpg Binary files differnew file mode 100644 index 0000000..e422509 --- /dev/null +++ b/2007/openmoko-technical-blr2007/images/gta01bv4_top.jpg diff --git a/2007/openmoko-technical-blr2007/images/neo1973_debugboard_v2_top_annotated.jpg b/2007/openmoko-technical-blr2007/images/neo1973_debugboard_v2_top_annotated.jpg Binary files differnew file mode 100644 index 0000000..b531137 --- /dev/null +++ b/2007/openmoko-technical-blr2007/images/neo1973_debugboard_v2_top_annotated.jpg diff --git a/2007/openmoko-technical-blr2007/notes.txt b/2007/openmoko-technical-blr2007/notes.txt new file mode 100644 index 0000000..b205322 --- /dev/null +++ b/2007/openmoko-technical-blr2007/notes.txt @@ -0,0 +1,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 + + diff --git a/2007/openmoko-technical-blr2007/openmoko-tech.mgp b/2007/openmoko-technical-blr2007/openmoko-tech.mgp new file mode 100644 index 0000000..56e7460 --- /dev/null +++ b/2007/openmoko-technical-blr2007/openmoko-tech.mgp @@ -0,0 +1,262 @@ +%include "default.mgp" +%default 1 bgrad +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +%nodefault +%back "blue" + +%center +%size 7 + + +OpenMoko +What, Why and How + + +%center +%size 4 +by + +Harald Welte <laforge@openmoko.org> + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +OpenMoko +Contents + + Introduction + What is Free Software? + What is the FOSS Community? + People / Groups involved + Development Process + Motivations + FOSS likes + FOSS disliks + Weak Points + Practical Rules + Thanks + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +OpenMoko +Introduction + +Who is speaking to you? + + an independent Free Software developer, consultant and trainer + who is a member of the free software community for 10 years + who has worked a lot on the Linux kernel + who had originally started OpenEZX for Motorola phones + and who was Lead System Architect for OpenMoko until early November 2007 + +Why is he speaking to you? + + because every working day he suffers the lack of understanding between the community and the business world + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +OpenMoko +Neo1973 GTA01 hardware + +Neo1973 GTA01 hardware + SC2410 SoC @ 266MHz + 480x640 LCM, 262k colors + 128MB SDRAM + 64MB 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 + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +OpenMoko +Application Processor + +Closer look at Application Processor + SC2410 SoC @ 266MHz + three UART's + 133MHz SDRAM interface + 66MHz external bus + Two channels SPI + IIS + I2C + SDIO + TFT controller + NAND controller + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +OpenMoko +GSM Modem + +Closer look at the GSM Modem + Ti Calypso/Iota based chipset + As proprietary as any other phone + runs proprietary nucleus OS + runs proprietary GSM stack + Supports GSM voice/data/fax and GPRS + Quad-Band GSM + Very good TS 07.05 / 07.07 / 07.10 compliance + eveyone can download the protocol docs from ETSI.org + no user/hacker needs access to NDA'd documents + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +OpenMoko +Free Software stack + +Free Software stack + bootloader: u-boot current git + kernel: linux 2.6.20.4 + xserver: kdrive + glibc + glib + gtk+ + libmokoui + libmokocore + libgsmd / gsmd + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +OpenMoko +Development Model + +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) + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +OpenMoko +Hackable Device + +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 + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +OpenMoko +Standards compliance + +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 + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +OpenMoko +User control + +User control + The phone needs to be under control of the user, and the free software he uses + Even backdoors or rogue GSM firmware shall not be able to intrude the privacy fo the user + So we e.g. put the Audio codec (under explicit control from the Linux-running AP) between microphone/speaker and the GSM modem + So we enable the Linux-running AP to cut power of the GSM modem + Thus, free software (and thus the user) remains in ultimate control + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +OpenMoko +GSM Integration + +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 + we're working on gobject integration on top + kernel part scheduled for mainline submission + will support different phones / gsm chipsets + Various HTC devices with Linux + Motorola EZX phones using OpenEZX + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +OpenMoko +Difference + +Difference from other Linux phones + 'others' discourage third parties from writing apps + you need explicit permission? WTF! + 'others' try to make customers pay for a device that's still under manufacturer / GSM operator control + 'others' use proprietary kernel modules + locks you into some old kernel version + 'others' use proprietary bootloaders + 'others' dont give you JTAG/serial access + 'others' use proprietary UI toolkits + vendor lock-in + 'others' dont give out their build system + 'others' dont give out their firmware update tools + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +OpenMoko +Hardware ahead + +GTA02 + Same case / physical size + Same screen + Same GPS + Samsung S3C2442 at 400MHz + More NAND (256MB) + Will have WiFi (802.11b/g) + Might have EDGE + Better Power management + Dedicated graphics processor + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +OpenMoko +Hardware ahead + +GTA03 + not public yet :) +GTX01 + not public yet :) +GTX02 + not public yet :) + +All of them really exciting. Stay tuned :) + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%page +OpenMoko +Thanks + + Thanks to + Alan Cox, Alexey Kuznetsov, David Miller, Andi Kleen + for implementing (one of?) the world's best TCP/IP stacks + Paul 'Rusty' Russell + for starting the netfilter/iptables project + for trusting me to maintain it today + Astaro AG + for sponsoring parts of my netfilter work + Free Software Foundation + for the GNU Project + for the GNU General Public License + FIC + for funding OpenMoko + + |