r4759 - in developers/charlie: . Wiki

charlie at docs.openmoko.org charlie at docs.openmoko.org
Thu Nov 6 04:20:12 CET 2008


Author: charlie
Date: 2008-11-06 04:20:11 +0100 (Thu, 06 Nov 2008)
New Revision: 4759

Added:
   developers/charlie/README
   developers/charlie/Wiki/
   developers/charlie/Wiki/.htaccess
   developers/charlie/Wiki/ATCommands
   developers/charlie/Wiki/Alsa
   developers/charlie/Wiki/Android
   developers/charlie/Wiki/DebugBoard
   developers/charlie/Wiki/GSM
   developers/charlie/Wiki/GSM0710muxd
   developers/charlie/Wiki/GSM_07_10
   developers/charlie/Wiki/Hardware
   developers/charlie/Wiki/KernelDriver
   developers/charlie/Wiki/MC75i
   developers/charlie/Wiki/OpenEmbedded
   developers/charlie/Wiki/OpenMokoTricks
   developers/charlie/Wiki/Processes
   developers/charlie/Wiki/PyGame
   developers/charlie/Wiki/QemuLinux
   developers/charlie/Wiki/SMD
   developers/charlie/Wiki/TestingGSM
   developers/charlie/Wiki/Todo
   developers/charlie/Wiki/Toolchain
   developers/charlie/Wiki/WelcomePage
   developers/charlie/Wiki/Work
   developers/charlie/Wiki/Xglamo
   developers/charlie/Wiki/autoconf
   developers/charlie/Wiki/bitbake
   developers/charlie/Wiki/diff
   developers/charlie/Wiki/emacs
   developers/charlie/Wiki/framework
   developers/charlie/Wiki/gdb
   developers/charlie/Wiki/git
   developers/charlie/Wiki/kernel
   developers/charlie/Wiki/screen
   developers/charlie/Wiki/u-boot
   developers/charlie/Wiki/vi
   developers/charlie/Wiki/xglamo
Log:
initial import of my personal wiki


Added: developers/charlie/README
===================================================================
--- developers/charlie/README	                        (rev 0)
+++ developers/charlie/README	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,13 @@
+Charlie's public directory
+-----------------------------
+
+I use this directory for random things related to openmoko. Everything
+here is public, but not everything is of interest ;)
+
+The Wiki directory contains my small personal wiki I use to keep
+memory of stuffs I do. All the pages are in the emacs-wiki-mode
+format.
+
+
+
+

Added: developers/charlie/Wiki/.htaccess
===================================================================
--- developers/charlie/Wiki/.htaccess	                        (rev 0)
+++ developers/charlie/Wiki/.htaccess	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,8 @@
+AuthUserFile .passwords
+AuthGroupFile /dev/null
+AuthName "Secure Access"
+AuthType Basic
+<LIMIT GET POST>
+
+Require valid-user
+</LIMIT>

Added: developers/charlie/Wiki/ATCommands
===================================================================
--- developers/charlie/Wiki/ATCommands	                        (rev 0)
+++ developers/charlie/Wiki/ATCommands	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,14 @@
+* ATCOmmands
+
+- ATZ	: start the modem
+- AT+IPR?	: Get the bit rate of the UART
+- ATE1	: turn echo on
+- ATE0  : turn echo off
+- AT+CPIN	: Set SIM code
+- AT+CFUN=1	: turn antenna on
+- AT+CGMI	: get manufacturer id
+
+
+- AT+CMUX : activate multiplexer mode
+- AT+CGMR	: Get firmeware version
+- AT+CLAC	: Get list of AT commands

Added: developers/charlie/Wiki/Alsa
===================================================================
--- developers/charlie/Wiki/Alsa	                        (rev 0)
+++ developers/charlie/Wiki/Alsa	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,8 @@
+
+
+* Alsa
+
+To turn off the speaker (for only headset output):
+ amixer -d sset "Amp Spk" mute
+
+(Should be possible to do it from python as well)

Added: developers/charlie/Wiki/Android
===================================================================
--- developers/charlie/Wiki/Android	                        (rev 0)
+++ developers/charlie/Wiki/Android	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,5 @@
+* Android on the neo
+
+Doesn't seem to work at all on my freerunner :(
+
+Ok I need to use a SD card with 2 partitions on it (see mailing list)

Added: developers/charlie/Wiki/DebugBoard
===================================================================
--- developers/charlie/Wiki/DebugBoard	                        (rev 0)
+++ developers/charlie/Wiki/DebugBoard	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,17 @@
+
+* Debug Board
+
+We need libftdi installed on the desktop to use it, the module should be configured with :
+**modprobe ftdi_sio vendor=0x1457 product=0x5118**
+(This can be put into modules.conf)
+
+Also need to use the udev rule :
+http://people.openmoko.org/laforge/misc/debug_board_v2/udev_rules/099_neo1973_debugboard.rules
+
+Then the board will appear as /dev/ttyUSB0
+
+** How to use it :
+
+connect it, then use minicom to comunicate with the device :
+**minicom**
+

Added: developers/charlie/Wiki/GSM
===================================================================
--- developers/charlie/Wiki/GSM	                        (rev 0)
+++ developers/charlie/Wiki/GSM	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,16 @@
+
+* GSM
+
+- TE : Terminal Equipment
+- GPRS :
+- USSD :
+- SMS :
+- CBS :
+
+See also:
+
+[[GSM_07_10]] : Multiplexer protocol, actiavted by the AT+CMUX command
+[[ATCommands]]
+[[TestingGSM]]
+
+The calypso modem falls 'asleep' if we don't send it command for a few seconds, we have to send it a '\r\n' to wake it up (see ogsmd)

Added: developers/charlie/Wiki/GSM0710muxd
===================================================================
--- developers/charlie/Wiki/GSM0710muxd	                        (rev 0)
+++ developers/charlie/Wiki/GSM0710muxd	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,29 @@
+
+* About GSM0710muxd.c *
+
+This is the C program written by M. Dietrich.
+It puts the modem into multiplex mod (using AT+CMUX), and then dispatch the serial lines
+
+/dev/ptmx : when opened return a Pseudo Terminal Master, also create a Pseudo Termial Slave (in /dev/pts/)
+you can use `ptsname` to get the name of the slave.
+
+the original serial port is /dev/ttySAC0
+
+the program will open several pseudo devices, and wait for the user to write into the slave, or for the modem to write into /dev/ttySAC0.
+The data written bu user into the slave will be read from the pseudo device and the progam transfer them into dev/ttySAC0.
+The data written by the modem into dev/ttySAC0 will be written by the software into the pseudo term and read by the user on the slave.
+
+The questions are : 
+- Can we do all this in kernel space ? And why would we want to do that ?
+- What exactly is sent to the modem to disable the MUX mode. How to do that !
+
+** Compile it
+
+Get the source using [[git]] from git://git.freesmartphone.org/gsm0710muxd.git
+Use [[toolchain]] :
+
+ ./autogen.sh --host=arm-angstrom-linux-gnueabi --target=arm-angstrom-linux-gnueabi
+ ./configure --host=arm-angstrom-linux-gnueabi --target=arm-angstrom-linux-gnueabi
+ make
+
+

Added: developers/charlie/Wiki/GSM_07_10
===================================================================
--- developers/charlie/Wiki/GSM_07_10	                        (rev 0)
+++ developers/charlie/Wiki/GSM_07_10	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,45 @@
+
+** Frame (bytes)
+- start byte (0x7E in advanced mode)
+- 0 : Address
+- 1 : Control
+
+** Adddress Field (bits)
+- 0	: EA
+- 1	: C/R
+- 2-7	: DLCI (channel)
+
+To get the CLCI : data & 252) >> 2
+
+** Control Field (bits)
+
+
+** Length field (bits)
+- 0	: E/A	(used for extensions, it is 1 for single byte length)
+- 1-7	: length
+
+
+
+
+
+See also :
+[[GSM0710muxd]]
+
+-----
+* About GSM0710muxd.c *
+This is the C program written by M. Dietrich.
+It puts the modem into multiplex mod (using AT+CMUX), and then dispatch the serial lines
+
+/dev/ptmx : when opened return a Pseudo Terminal Master, also create a Pseudo Termial Slave (in /dev/pts/)
+you can use `ptsname` to get the name of the slave.
+
+the original serial port is /dev/ttySAC0
+
+the program will open several pseudo devices, and wait for the user to write into the slave, or for the modem to write into /dev/ttySAC0.
+The data written bu user into the slave will be read from the pseudo device and the progam transfer them into dev/ttySAC0.
+The data written by the modem into dev/ttySAC0 will be written by the software into the pseudo term and read by the user on the slave.
+
+The questions are : 
+- Can we do all this in kernel space ? And why would we want to do that ?
+- Can we just not use this for production tests : yes, we just need not to enable it and that's it.
+

Added: developers/charlie/Wiki/Hardware
===================================================================
--- developers/charlie/Wiki/Hardware	                        (rev 0)
+++ developers/charlie/Wiki/Hardware	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,3 @@
+
+
+- [[SMD]]

Added: developers/charlie/Wiki/KernelDriver
===================================================================
--- developers/charlie/Wiki/KernelDriver	                        (rev 0)
+++ developers/charlie/Wiki/KernelDriver	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,4 @@
+
+* Kernel Driver
+
+Also see [[QemuLinux]]

Added: developers/charlie/Wiki/MC75i
===================================================================
--- developers/charlie/Wiki/MC75i	                        (rev 0)
+++ developers/charlie/Wiki/MC75i	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,12 @@
+
+* MC75i
+
+This is the [[GSM]] modem for GTA03, produced by CINTERION
+contact for hardware info : James Chang <james.chang at cinterion.com>
+The MC75i is connected to the UART port of the CPU, we can access it through /dev/ttySAC0
+
+Notes : 
+- Cinterion provides window multiplexer driver (WinMUX, see AT command doc)
+
+
+

Added: developers/charlie/Wiki/OpenEmbedded
===================================================================
--- developers/charlie/Wiki/OpenEmbedded	                        (rev 0)
+++ developers/charlie/Wiki/OpenEmbedded	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,23 @@
+
+* OpenEmbedded
+
+it is using [[bitbake]]
+
+it is a crazy thing !
+
+** Where to see the code when there are inherit ?
+-> in classes/xxx.bbclass
+
+** useful files :
+- conf/machine/om-gta02.conf :
+    contains info about the harware, and how to build the kernel
+    e.g : MACHINE_FEATURES = "kernel26 apm alsa bluetooth gps usbgadget usbhost phone wifi vfat ext2"
+
+- packages/linux/linux-openmoko-devel_git.bb
+    contains the rules to build the kernel
+
+
+** How to use OE to build my own local packages ?
+
+To recreate the Package file :
+ bitbake package-index

Added: developers/charlie/Wiki/OpenMokoTricks
===================================================================
--- developers/charlie/Wiki/OpenMokoTricks	                        (rev 0)
+++ developers/charlie/Wiki/OpenMokoTricks	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,7 @@
+
+
+logread -f
+  see the logs in real time
+
+echo 63 > /sys/class/backlight/pcf50633-bl/brightness
+  set full backlight

Added: developers/charlie/Wiki/Processes
===================================================================
--- developers/charlie/Wiki/Processes	                        (rev 0)
+++ developers/charlie/Wiki/Processes	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,51 @@
+
+* Process
+
+Typical ps aux output :
+
+root         1  0.2  0.4   1524   556 ?        Ss   Nov02   0:14 init [5]               
+root         2  0.0  0.0      0     0 ?        S<   Nov02   0:00 [kthreadd]
+root         3  0.0  0.0      0     0 ?        S<   Nov02   0:00 [ksoftirqd/0]
+root         4  0.0  0.0      0     0 ?        S<   Nov02   0:00 [watchdog/0]
+root         5  0.0  0.0      0     0 ?        S<   Nov02   0:04 [events/0]
+root         6  0.0  0.0      0     0 ?        S<   Nov02   0:00 [khelper]
+root        75  0.0  0.0      0     0 ?        S<   Nov02   0:00 [kblockd/0]
+root        81  0.0  0.0      0     0 ?        S<   Nov02   0:00 [ksuspend_usbd]
+root        87  0.0  0.0      0     0 ?        S<   Nov02   0:00 [khubd]
+root        90  0.0  0.0      0     0 ?        S<   Nov02   0:00 [kseriod]
+root        96  0.0  0.0      0     0 ?        S<   Nov02   0:00 [kmmcd]
+root       131  0.0  0.0      0     0 ?        S    Nov02   0:00 [pdflush]
+root       132  0.0  0.0      0     0 ?        S    Nov02   0:00 [pdflush]
+root       133  0.0  0.0      0     0 ?        S<   Nov02   0:00 [kswapd0]
+root       134  0.0  0.0      0     0 ?        S<   Nov02   0:00 [aio/0]
+root       150  0.0  0.0      0     0 ?        S<   Nov02   0:00 [kapmd]
+root       182  0.0  0.0      0     0 ?        S<   Nov02   0:00 [glamo-spi-gpio.]
+root       192  0.0  0.0      0     0 ?        S<   Nov02   0:00 [mtdblockd]
+root       264  0.0  0.0      0     0 ?        S<   Nov02   0:00 [SDIO Helper]
+root       268  0.0  0.0      0     0 ?        S<   Nov02   0:00 [SDIO Helper]
+root       274  0.0  0.0      0     0 ?        S<   Nov02   0:00 [mmcqd]
+root       283  0.0  0.0      0     0 ?        S<   Nov02   0:00 [krfcommd]
+root       285  0.0  0.0      0     0 ?        S<   Nov02   0:00 [rpciod/0]
+root       359  0.0  0.4   1860   612 ?        S<s  Nov02   0:00 udevd --daemon
+root      1017  0.2  0.0      0     0 ?        SN   Nov02   0:17 [jffs2_gcd_mtd6]
+daemon    1288  0.0  0.3   1508   380 ?        Ss   Nov02   0:00 /sbin/portmap
+root      1731  0.0  0.3   2100   488 ?        Ss   Nov02   0:00 /usr/sbin/dropbear -r /etc/dropbear/dropbear_rsa_host_key -p 22
+root      1736  0.0  0.3   1556   468 ?        Ss   Nov02   0:00 /usr/sbin/apmd -P /etc/apm/apmd_proxy --proxy-timeout 30
+14        1748  0.4  0.6   2124   844 ?        Ss   Nov02   0:28 /usr/bin/dbus-daemon --system
+root      1764  0.0  0.5   2836   668 ?        Ss   Nov02   0:00 /sbin/syslogd -n -C64 -m 20
+root      1766  0.0  0.4   2772   580 ?        Ss   Nov02   0:00 /sbin/klogd -n
+avahi     1774  0.0  1.0   2704  1336 ?        Ss   Nov02   0:00 avahi-daemon: running [om-gta02.local]
+root      1790  0.0  1.1   3276  1468 ?        Ss   Nov02   0:00 /sbin/hcid -s -f /etc/bluetooth/hcid.conf
+root      1805  0.0  1.0   3772  1272 ?        Ss   Nov02   0:00 /usr/sbin/fso-gpsd
+root      1813  0.0  0.4   2776   608 ttySAC2  Ss+  Nov02   0:00 /sbin/getty 115200 ttySAC2
+root      1814  0.0  0.4   2776   608 tty1     Ss+  Nov02   0:00 /sbin/getty 38400 tty1
+root      1818  0.0  0.5   2612   692 ?        S    Nov02   0:00 xinit /etc/X11/Xsession -- /usr/bin/Xglamo :0 -pn -dpi 285 -screen 480x640 -hide-cursor -roo
+root      1822  0.8  2.7   6460  3432 ?        S<   Nov02   0:59 /usr/bin/Xglamo :0 -pn -dpi 285 -screen 480x640 -hide-cursor -root-ppm /usr/share/pixmaps/xs
+root      1825  0.0  0.5   2772   668 ?        S    Nov02   0:00 /bin/sh /etc/X11/Xsession
+root      1829  0.0  0.4   2976   600 ?        S    Nov02   0:00 dbus-launch --auto-syntax --exit-with-session
+root      1830  0.1  0.5   2124   748 ?        Ss   Nov02   0:08 /usr/bin/dbus-daemon --fork --print-pid 5 --print-address 7 --session
+root      1833  0.0  0.4   2776   544 ?        S    Nov02   0:00 run-parts /etc/X11/Xsession.d
+root      1837  0.0  1.1   3536  1496 ?        S    Nov02   0:00 /usr/libexec/gconfd-2
+root      1841  1.9  9.4  20836 11856 ?        S    Nov02   2:16 enlightenment -profile fso
+root      1855  0.0  1.8  10260  2384 ?        Ss   Nov02   0:00 /usr/bin/enlightenment_fm
+root      1856  0.0  0.3   1508   448 ?        S    Nov02   0:00 /usr/lib/en

Added: developers/charlie/Wiki/PyGame
===================================================================
--- developers/charlie/Wiki/PyGame	                        (rev 0)
+++ developers/charlie/Wiki/PyGame	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,3 @@
+
+
+pygame.image.get_extended() should return 1 !!!

Added: developers/charlie/Wiki/QemuLinux
===================================================================
--- developers/charlie/Wiki/QemuLinux	                        (rev 0)
+++ developers/charlie/Wiki/QemuLinux	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,14 @@
+
+
+* QemuLinux
+
+This is based on the cool tutorial from free electron
+
+First we need to compile the kernel
+
+Then we create a root fs
+
+Then we can run everything with qemu :
+ qemu -m 32 -hda rootfs.img -kernel linux-2.6.15/arch/i386/boot/bzImage -append "root=/dev/hda clock=pit"
+
+(this boot in a few seconds)

Added: developers/charlie/Wiki/SMD
===================================================================
--- developers/charlie/Wiki/SMD	                        (rev 0)
+++ developers/charlie/Wiki/SMD	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,14 @@
+
+* Surface Mount Device
+
+We create SMD using SMT (Surface Mount Technology)
+
+Created in the 60's and getting popularized in the 80's by IBM.
+
+
+** Procedure
+- First we put the solder paste on the PCB (Printed Circuit Board)
+- Then if the SMD is two sidded, we also put some glue on the other side
+- Then the componemts are placed using NC (Numericaly Controlled) machines
+- Then the SMD are put into the Reflow soldering oven
+- Then they are washed

Added: developers/charlie/Wiki/TestingGSM
===================================================================
--- developers/charlie/Wiki/TestingGSM	                        (rev 0)
+++ developers/charlie/Wiki/TestingGSM	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,25 @@
+
+* TestingGSM
+
+
+First we can connect using cu -l /dev/ttySAC0, and type the AT commands (starting with ATE1 so that we have echo)
+There is a problem there, and we may need to use **stty -F /dev/ttySAC0 crtscts** in an other terminal *after* we started cu.
+(We may also need to use : **chown uucp.uucp /dev/ttySAC0** before accessing the modem)
+
+* Using python :
+modem = serial.Serial('/dev/ttySAC0', 115200, rtscts=1, timeout=2)
+
+We can try AT+CGMI to get manufactuer info.
+
+If it doesn't work, try to turn the modem off and on again :
+root at om-gta02:/sys/devices/platform/neo1973-pm-gsm.0# echo 0 > power_on 
+root at om-gta02:/sys/devices/platform/neo1973-pm-gsm.0# echo 1 > power_on
+
+* Note:
+- remember that calypso needs to be awaked after a few second by sending an empty command
+
+* Questions
+- if the modem is set in MUX mode, will it still be in this mode after a reset ???
+    It seems that we have to turn power off, than on, then reset.
+    BUT, we have to wait a little between operation (reset / opening serial ?)
+- Can we still use normal AT commands in MUX mode ?

Added: developers/charlie/Wiki/Todo
===================================================================
--- developers/charlie/Wiki/Todo	                        (rev 0)
+++ developers/charlie/Wiki/Todo	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,9 @@
+* TODO
+
+- Write automatic GSM testing script (IN PROGRESS)
+    - Check connection
+    - Check AT command list, compatible with framework
+- Do the same things with the testing board
+- Update Tichy to use Framework (GRR python-pygame is broken again !)
+- See how to handle SIM + PUK with AT commands (GRRR, I forgot my PIN number !!!)
+- Put all this in my personal dir (remove private info !!!)

Added: developers/charlie/Wiki/Toolchain
===================================================================
--- developers/charlie/Wiki/Toolchain	                        (rev 0)
+++ developers/charlie/Wiki/Toolchain	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,7 @@
+
+* ToolChain
+
+To install a new lib into the toolchain :
+ sudo su
+ . /usr/local/openmoko/arm/setup-env
+ opkg-target install xxx

Added: developers/charlie/Wiki/WelcomePage
===================================================================
--- developers/charlie/Wiki/WelcomePage	                        (rev 0)
+++ developers/charlie/Wiki/WelcomePage	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,7 @@
+
+* Welcome Page
+
+- [[Work]]
+- [[People]]
+- [[Todo]]
+- [[Places]]

Added: developers/charlie/Wiki/Work
===================================================================
--- developers/charlie/Wiki/Work	                        (rev 0)
+++ developers/charlie/Wiki/Work	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,32 @@
+
+* Work
+
+** Openmoko
+- [[xglamo]]
+- [[framework]]
+- [[Android]]
+- [[kernel]]
+- [[OpenEmbedded]]
+- [[Toolchain]]
+- [[Alsa]]
+- [[Android]]
+
+- [[MC75i]]
+- [[OpenMokoTricks]]
+- [[Processes]]
+- [[DebugBoard]]
+
+- [[PyGame]]
+
+- [[Hardware]]
+
+
+
+** Tools
+- [[vi]]
+- [[emacs]]
+- [[git]]
+- [[gdb]]
+- [[diff]]
+- [[screen]]
+

Added: developers/charlie/Wiki/Xglamo
===================================================================
--- developers/charlie/Wiki/Xglamo	                        (rev 0)
+++ developers/charlie/Wiki/Xglamo	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,3 @@
+
+
+xinit /etc/X11/Xsession -- /usr/bin/Xglamo :0 -pn -dpi 285 -screen 480x640 -hide-cursor -root-ppm /usr/share/pixmaps/xsplash-vga.ppm vt1

Added: developers/charlie/Wiki/autoconf
===================================================================
--- developers/charlie/Wiki/autoconf	                        (rev 0)
+++ developers/charlie/Wiki/autoconf	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,7 @@
+
+
+* Autoconf
+    (is a piece of crap)
+
+** Usefull tricks
+  --enable-debug : compile with -g

Added: developers/charlie/Wiki/bitbake
===================================================================
--- developers/charlie/Wiki/bitbake	                        (rev 0)
+++ developers/charlie/Wiki/bitbake	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,7 @@
+
+* Bitbake
+
+** Useful usage
+
+bitbake -e <recipe>
+   Return the list of all defined varibale for a recipe

Added: developers/charlie/Wiki/diff
===================================================================
--- developers/charlie/Wiki/diff	                        (rev 0)
+++ developers/charlie/Wiki/diff	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,2 @@
+
+

Added: developers/charlie/Wiki/emacs
===================================================================
--- developers/charlie/Wiki/emacs	                        (rev 0)
+++ developers/charlie/Wiki/emacs	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,21 @@
+
+* Emacs
+
+M-x c-set-style
+   set the c style for indentation
+
+M-x column-number-mode / line-number-mode
+
+M-x buffer-mode
+  then in buffer mode, we can use o or C-o to select buffer in an other window
+
+C-u 6 C-x { 
+  resize window 6 time
+
+* using etags :
+M-. : go to def
+M-* : return from def 
+
+
+* Text mode
+M-q : auto justify paragraph
\ No newline at end of file

Added: developers/charlie/Wiki/framework
===================================================================
--- developers/charlie/Wiki/framework	                        (rev 0)
+++ developers/charlie/Wiki/framework	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,11 @@
+
+
+* Framework
+
+** How to run it
+I use nfs, then just start it, don't forget to set PYTHONPATH.
+We may need to edit /etc/framework.conf, we can set the debug output and the log level of all subsystems.
+
+** TODO
+- More unittests
+

Added: developers/charlie/Wiki/gdb
===================================================================
--- developers/charlie/Wiki/gdb	                        (rev 0)
+++ developers/charlie/Wiki/gdb	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,8 @@
+
+
+* GDB
+
+** Useful commands
+
+info func <name>
+   print location of a function

Added: developers/charlie/Wiki/git
===================================================================
--- developers/charlie/Wiki/git	                        (rev 0)
+++ developers/charlie/Wiki/git	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,24 @@
+
+* Git
+
+Some configs are in ~/.gitconfig
+
+** Useful commands
+git pull
+git status
+git add
+git commit
+git branch [-a]
+git rebase (branch)
+
+git stach
+git stach apply
+
+git reset --hard
+
+*** search commands
+gitk : user interface to see the commits
+git log
+git grep
+git blame <file> : see who did what on a file (very useful)
+git show <commit>

Added: developers/charlie/Wiki/kernel
===================================================================
--- developers/charlie/Wiki/kernel	                        (rev 0)
+++ developers/charlie/Wiki/kernel	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,47 @@
+
+* Kernel
+
+** Get the sources
+
+git clone git at git.openmoko.org:/var/cache/git/kernel.git
+git checkout origin/andy
+
+** Compile
+make ARCH=arm oldconfig  defconfig-gta02
+make ARCH=arm CROSS_COMPILE=arm-angstrom-linux-gnueabi-
+
+(note : there is a bug in the toolchain, so I have to use : 
+export LDFLAGS="-L${OMTOOL_DIR}/arm/arm-angstrom-linux-gnueabi/lib -rpath-link ${OMTOOL_DIR}/arm/arm-angstrom-linux-gnueabi/lib -O1"
+before compilation)
+
+It should put the results into arch/arm/boot/
+
+** Important files
+./arch/arm/plat-s3c24xx/neo1973_pm_gsm.c
+./arch/arm/mach-s3c2440/mach-gta02.c
+   Contains all the resources for gta02 (e.g : led gpio)
+./include/asm-arm/arch-s3c2410/gta02.h
+   Contains the s3c2410 pin addresses
+./include/asm-arm/arch-s3c2410/regs-gpio.h
+   pin address for s3c2410
+
+** How does we connect a sys/ object to an actual hardware operation. e.g GSM
+The reset pin of the GSM module is connected to GPB6 pin of S3C2 CPU. This connection is defined in the file :
+  **./include/asm-arm/arch-s3c2410/gta02.h**:  #define GTA02_GPIO_MODEM_RST     S3C2410_GPB5
+Then in the file **./arch/arm/plat-s3c24xx/neo1973_pm_gsm.c**, we have :
+  neo1973_gpb_setpin(GTA02_GPIO_MODEM_RST, on);
+
+** Ubootize
+see [[u-boot]]
+That will create a uImage
+
+** Flash
+We use dfu-util for that :
+ sudo ./dfu-util -a kernel -R -D uImage
+
+** Creating new driver
+See [[KernelDriver]]
+
+** Problem
+no ssh support : check the CDC and usb gadget supports
+

Added: developers/charlie/Wiki/screen
===================================================================
--- developers/charlie/Wiki/screen	                        (rev 0)
+++ developers/charlie/Wiki/screen	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,7 @@
+* Screen
+
+** Basic commands
+C-a c	: create new window
+C-a n/p	: switch windows
+C-a "	: get list of windows
+C-a A	: name a window

Added: developers/charlie/Wiki/u-boot
===================================================================
--- developers/charlie/Wiki/u-boot	                        (rev 0)
+++ developers/charlie/Wiki/u-boot	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,23 @@
+
+
+* U-boot
+
+(see http://wiki.openmoko.org/wiki/U-boot)
+
+** Get the sources
+git clone git://git.openmoko.org/git/u-boot.git
+git checkout origin/andy
+
+make u-boot.udfu
+
+** Creating bootable images
+# remove useless stuffs from the image
+arm-angstrom-linux-gnueabi-objcopy -O binary -R .note -R .comment -S vmlinux linux.bin
+gzip -9 linux.bin
+# make a uboot image
+~/src/u-boot/tools/mkimage -A arm -O linux -T kernel -C gzip -a 30008000 -e 30008000 -n "Charlie's kernel" -d linux.bin.gz uImage
+
+# that will create the uImage
+
+# you can flash it with :
+sudo ./dfu-util -a kernel -R -D uImage

Added: developers/charlie/Wiki/vi
===================================================================
--- developers/charlie/Wiki/vi	                        (rev 0)
+++ developers/charlie/Wiki/vi	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,34 @@
+* Vi
+
+** basics
+a/i/o : go into insert mode
+u : undo last change
+x : delete character
+dd : delete current line
+d{ : delete block
+y : copy 
+p : past
+>> : indent
+
+** Useful commands
+:set number
+  set line numbering on
+:syntax on
+  turn on syntax coloration
+:w
+  save
+:q
+  quit
+:sp / :vsp
+  split the screen in 2
+ctr-w j
+  move to screen up
+ctr-w k
+  move to screen down
+ctr-w q
+  close screen
+
+** Useful shortcuts for C
+ctr-] : jump to function implementation (need to use ctags first)
+ctr-T : return to calling func
+ctr-P/ctrl-N : word completion

Added: developers/charlie/Wiki/xglamo
===================================================================
--- developers/charlie/Wiki/xglamo	                        (rev 0)
+++ developers/charlie/Wiki/xglamo	2008-11-06 03:20:11 UTC (rev 4759)
@@ -0,0 +1,23 @@
+
+
+* XGlamo
+
+** How to compile it :
+
+Use the toolchain, then using [[autoconf]]:
+
+./autogen --host=arm-angstrom-linux-gnueabi --target=arm-angstrom-linux-gnueabi
+
+./configure --build=i686-linux --host=arm-angstrom-linux-gnueabi --target=arm-angstrom-linux-gnueabi --prefix=/usr --exec_prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --libexecdir=/usr/libexec --datadir=/usr/share --sysconfdir=/etc --sharedstatedir=/usr/com --localstatedir=/var --libdir=/usr/lib --includedir=/usr/include   --oldincludedir=/usr/include  --infodir=/usr/share/info --mandir=/usr/share/man --enable-composite --enable-kdrive --disable-dga --disable-dri --disable-xinerama --disable-xf86misc --disable-xf86vidmode --disable-xorg --disable-xorgcfg --disable-xkb --disable-xnest --disable-xvfb --disable-xevie --disable-xprint --disable-xtrap --disable-dmx --with-default-font-path=built-ins --enable-tslib --enable-xcalibrate ac_cv_file__usr_share_sgml_X11_defs_ent=no
+
+(We can add --enable-debug to have debug informations)
+
+make
+
+
+** How to run it
+xinit /etc/X11/Xsession -- /usr/bin/Xglamo :0 -pn -dpi 285 -screen 480x640 -hide-cursor -root-ppm /usr/share/pixmaps/xsplash-vga.ppm vt1
+
+then we can use xrandr to play with the resolutions and stuffs
+
+




More information about the commitlog mailing list