Ubuntu on Lime: Unterschied zwischen den Versionen

Aus Wiki CCC Göttingen
Wechseln zu: Navigation, Suche
(Anfang)
 
(Preparation of image on another system)
 
(3 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
1. Made sunxi-boot and sunxi-kernel (with modules) in accord with Lime's tutorial for Debian:
+
== Preparation of image on another system ==
 +
[0.] Install gcc cross-compiler: ''apt-get install gcc-arm-noeabi''.
 +
I had it from:
 +
 
 +
    deb http://ppa.launchpad.net/terry.guo/gcc-arm-embedded/ubuntu raring main
 +
    deb-src http://ppa.launchpad.net/terry.guo/gcc-arm-embedded/ubuntu raring main
 +
 
 +
1. Made sunxi-boot and sunxi-kernel (with modules) in accord with '''Lime's tutorial for Debian''':
 +
 
  
 
''https://olimex.wordpress.com/2013/12/13/building-debian-linux-image-for-a10-olinuxino-lime-with-kernel-3-4-67/''
 
''https://olimex.wordpress.com/2013/12/13/building-debian-linux-image-for-a10-olinuxino-lime-with-kernel-3-4-67/''
 +
 +
The following steps 2 and 3 are performed on a *rootfs* image after mounting on a host system.
  
 
2. Downloaded armhf versions of packages missing for network, and put them to ''/root'' on boot image.
 
2. Downloaded armhf versions of packages missing for network, and put them to ''/root'' on boot image.
Zeile 48: Zeile 58:
 
     exec /sbin/getty 115200 ttyS0
 
     exec /sbin/getty 115200 ttyS0
 
     EOF
 
     EOF
 +
 +
== After booting lime ==
  
 
4. After booting and logging through serial (''screen /dev/ttyUSB0 115200''):
 
4. After booting and logging through serial (''screen /dev/ttyUSB0 115200''):

Aktuelle Version vom 23. Februar 2014, 09:40 Uhr

Preparation of image on another system

[0.] Install gcc cross-compiler: apt-get install gcc-arm-noeabi. I had it from:

   deb http://ppa.launchpad.net/terry.guo/gcc-arm-embedded/ubuntu raring main
   deb-src http://ppa.launchpad.net/terry.guo/gcc-arm-embedded/ubuntu raring main

1. Made sunxi-boot and sunxi-kernel (with modules) in accord with Lime's tutorial for Debian:


https://olimex.wordpress.com/2013/12/13/building-debian-linux-image-for-a10-olinuxino-lime-with-kernel-3-4-67/

The following steps 2 and 3 are performed on a *rootfs* image after mounting on a host system.

2. Downloaded armhf versions of packages missing for network, and put them to /root on boot image.

   http://ports.ubuntu.com/ubuntu-ports/pool/main/b/busybox/busybox-static_1.21.0-1ubuntu1_armhf.deb
   http://ports.ubuntu.com/ubuntu-ports/pool/main/n/net-tools/net-tools_1.60-25ubuntu1_armhf.deb
   http://ports.ubuntu.com/ubuntu-ports/pool/main/b/busybox/udhcpc_1.21.0-1ubuntu1_armhf.deb


3. Configure serial almost in accord to:

https://help.ubuntu.com/community/SerialConsoleHowto

The only change is --autologin root parameter for getty.

   cat - > etc/init/ttyS0.conf <<EOF
   # ttyS0 - getty
   #
   # This service maintains a getty on ttyS0 from the point the system is
   # started until it is shut down again.
   
   start on stopped rc or RUNLEVEL=[12345]
   stop on runlevel [!12345]
   
   respawn
   exec /sbin/getty --autologin root -L 115200 ttyS0 vt102
   EOF


   cat - > etc/event.d/ttyS0 <<EOF
   # ttyS0 - getty
   #
   # This service maintains a getty on ttyS0 from the point the system is
   # started until it is shut down again.
   start on runlevel 1
   start on runlevel 2
   start on runlevel 3
   start on runlevel 4
   start on runlevel 5
   
   stop on runlevel 0
   stop on runlevel 6
   
   respawn
   exec /sbin/getty 115200 ttyS0
   EOF

After booting lime

4. After booting and logging through serial (screen /dev/ttyUSB0 115200):

   dpkg -i *.deb
   
   cat - > /etc/network/interfaces.d/eth0 <<EOF
   auto eth0
   iface eth0 inet dhcp
   EOF

5. Uncomment universe and multiverse repositories and then apt-get update and install whatever packages I need.

6. To have access to sunxi config tools, compile:

   git clone https://github.com/linux-sunxi/sunxi-tools

7. [Optional:] to get Mali drivers:

   git clone https://github.com/linux-sunxi/sunxi-mali.git && \
     git submodule init && \
     git submodule update

8. For GPIO:

   echo 'gpio_sunxi' >> /etc/modules
   modprobe gpio_sunxi