Archive for 'Hardware and GNU/Linux'

Note: It is recommended to compile the following in "make menuconfig" step:
1) Kernel module for any additional USB NIC.
2) iftop
3) luci-app-qos

Steps:
1) git clone https://git.lede-project.org/source.git
2) cd source
3) git checkout lede-17.01
4) ./scripts/feeds update -a
5) ./scripts/feeds install -a
6) make menuconfig #Make sure "Target System" is set to "Allwinner A1x/A20/A3x" and "Target Profile" is set to "Olimex A10-OLinuXino-LIME". I suggest you modify "Root filesystem partition size (in MB)" under "Target Images" to your liking. I prefer "3600" for a 4 GB SD card.
7) make
8) # Your images will be found in "bin/targets/sunxi/generic/". I suggest you write the squashfs image to a SD Card:
cd bin/targets/sunxi/generic ; gunzip -c lede-sunxi-sun4i-a10-olinuxino-lime-squashfs-sdcard.img.gz | dd of=/dev/sdX # Substitute "/dev/sdX" with the appropriate device file of your SD card.
9) # Take note that the built in NIC of the A10 Lime will be used as the "LAN" port.

If you need to "factory reset" your build system:
make distclean

NOTE: All commands mentioned below are done as root.

The text below is not original. I have copied them from http://olimex.wordpress.com, and I have just modified them for installing Slackware 14.1 on the OLinuXino A10 Lime. Among the pages I've got content from are the following:

http://olimex.wordpress.com/2013/06/19/building-linux-for-a10s-from-scratch/
http://olimex.wordpress.com/2013/10/28/building-debian-sd-card-for-linux-with-kernel-3-4-from-scratch-for-a10s-olinuxino-micro/
http://olimex.wordpress.com/2014/06/23/a10-olinuxino-lime-debian-build-with-kernel-3-4-90/
https://drive.google.com/file/d/0B-bAEPML8fwla21JNU12RnYxZmM/edit?usp=sharing

Setup of development environment
1] Create a VirtualBox or KVM VM for Debian "Wheezy" 7.6.0 i386. I allocated 1024MB of RAM to it. As for the virtual hard drive space, I allocated 8GB. I also recommend that you disable audio support for a VirtualBox VM.
2] Download the Net Install ISO image for Debian "Wheezy" 7.6.0 i386. Boot the mentioned ISO in the VM you've created. I used the "Install" option in the installer boot menu.
3] This set of instructions will work with everything deselected under "Software selection." You may select software to your taste during installation.
4] After the installation, the guest OS will automatically get an IP Address via DHCP.
5] As root in your guest OS:
# apt-get update
# apt-get upgrade
6] Install OpenSSH client and server software as root in your guest OS if this will make file transfers and access to your development environment convenient for you:
# apt-get install openssh-client openssh-server
› Continue reading...

My Thinkpad Edge E440 is one of the most basic models (20C5A012SG) without NVidia graphics(I only have the GPU on the Intel i5 4th generation processor). The WIFI interface installed on my machine is an Intel Wireless-N 7260. The following devices work from a fresh Slackware64 14.1 installation:
USB 2.0 and 3.0 ports
Touchpad
Web cam
Display in X.org
Gigabit Ethernet port

The only notable piece of hardware not working is the WIFI interface. To make it work, I compiled a more recent 3.10.28 kernel:

1] I've disabled UEFI in the BIOS. I don't use it.
2] Install Slackware64 14.1. The only disk sets I do not install are E, F, KDEI, T, and Y.
3] Update Slackware64 14.1 first. Use the Gigabit Ethernet port for internet access.
su - # Or login as root.
cd /etc/slackpkg
cp -p mirrors mirrors.orig
vi mirrors # Enable a mirror.
slackpkg update
slackpkg upgrade-all
shutdown -r now

4] Do the following to compile the Linux 3.10.28 kernel:
su - # Or login as root.
wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.10.28.tar.xz
cd /usr/src
tar xJpf ~/linux-3.10.28.tar.xz
rm linux
ln -s /usr/src/linux-3.10.28 linux
cd linux
make mrproper
cp -p /boot/config-huge-3.10.17 .config
make oldconfig
make menuconfig # You may skip this. Do this only if you need to make configuration changes.
make bzImage
make modules
make modules_install
cp arch/x86/boot/bzImage /boot/vmlinuz-huge-3.10.28
cp System.map /boot/System.map-huge-3.10.28
cp .config /boot/config-huge-3.10.28
cd /boot
rm System.map
ln -s System.map-huge-3.10.28 System.map
rm config
ln -s config-huge-3.10.28 config
rm vmlinuz
ln -s vmlinuz-huge-3.10.28 vmlinuz
/sbin/lilo

5] By default, sound won't work correctly. To correct this, create an /etc/asound.conf with the following content:
pcm.!default {
type hw
card 1
}

ctl.!default {
type hw
card 1
}

6] Restart your computer:
shutdown -r now
7] Login as root. And then adjust your ALSA mixer settings:
alsamixer
8] Save your ALSA mixer settings:
alsactl store
9] Congratulations. Your Thinkpad Edge E440 with Slackware64 14.1 should work fine now.

Setup of development environment

NOTE: I was not able to get a USB hard disk to reliably work with the OLinuXino A10S. However, I was able to reliably use a SD card with the mentioned ARM computer for storage. Thus, I recommend that you substitute a SD card for the USB hard disk. Just insert that card in the SD card slot, and do the necessary adjustments in the steps below.

1] Create a VirtualBox VM for Debian 7.2.0 i386. I allocated 1024MB of RAM to it. As for the virtual hard drive space, I allocated 8GB. I also recommend that you disable audio support for the VM.
2] Download the Net Install ISO image for Debian 7.2.0 i386. Boot the mentioned ISO in the VirtualBox VM you've created. I used the "Install" option in the installer boot menu.
3] This set of instructions will work with everything deselected under "Software selection." You may select software to your taste during installation.
4] After the installation, the guest OS will automatically get an IP Address via DHCP.
5] As root in your guest OS:
# apt-get update
# apt-get upgrade
6] Install OpenSSH client and server software as root in your guest OS if this will make file transfers and access to your development environment convenient for you:
# apt-get install openssh-client openssh-server
› Continue reading...

Setup of development environment
1] Create a VirtualBox VM for Debian 7.2.0 i386. I allocated 1024MB of RAM to it. As for the virtual hard drive space, I allocated 8GB. I also recommend that you disable audio support for the VM.
2] Download the Net Install ISO image for Debian 7.2.0 i386. Boot the mentioned ISO in the VirtualBox VM you've created. I used the "Install" option in the installer boot menu.
3] This set of instructions will work with everything deselected under "Software selection." You may select software to your taste during installation.
4] After the installation, the guest OS will automatically get an IP Address via DHCP.
5] As root in your guest OS:
# apt-get update
# apt-get upgrade
6] Install OpenSSH client and server software as root in your guest OS if this will make file transfers and access to your development environment convenient for you:
# apt-get install openssh-client openssh-server
› Continue reading...

1] I used a minimal Debian 7.1.0 i386 in a VirtualBox VM for compiling script.bin. Also, I wrote the Emdebian image found in the following link to a SD card for the OLinuXino A10S: https://docs.google.com/file/d/0B-bAEPML8fwlZ2g0V0JSRGxHc0U/edit?usp=sharing. The script.bin file produced here was tested against Linux kernel 3.4.61. I believe it should also work for the kernel with the mentioned image.
2] Login as a regular user in the Debian VirtualBox VM.
3] Install OpenSSH client software if this will make file transfers convenient for you:
# su -c "apt-get install openssh-client"
4] In the Debian VirtualBox VM as a regular user:
# mkdir ~/olinuxino_a10s ; cd ~/olinuxino_a10s
5] Download fex2bin_bin_fex_tools.tar.gz in the ~/olinuxino_a10s directory you've created:
# wget http://www.malaya-digital.org/fex2bin_bin_fex_tools.tar.gz
6] Untar fex2bin_bin_fex_tools.tar.gz:
# tar xzpf fex2bin_bin_fex_tools.tar.gz
7] Copy the script_a10s_linux_HDMI/script_a10s_linux_HDMI.fex file from the first partition of the SD card having your Emdebian image to the directory ~/olinuxino_a10s you've created in a previous step. Or, you could wget it:
# wget http://www.malaya-digital.org/script_a10s_linux_HDMI.fex
8] Open script_a10s_linux_HDMI.fex in a text editor. Then look for the following:

[rtc_para]
rtc_used = 0
rtc_name = "pcf8563"
rtc_twi_id = 1
rtc_twi_addr = 81

Assign "1" to rtc_used, and "2" to rtc_twi_id:

[rtc_para]
rtc_used = 1
rtc_name = "pcf8563"
rtc_twi_id = 2
rtc_twi_addr = 81

9] Compile ~/olinuxino_a10s/script_a10s_linux_HDMI.fex to script.bin:
# ./fex2bin_bin_fex_tools/fexc script_a10s_linux_HDMI.fex script.bin
10] Overwrite the script.bin on the first partition of the SD card with the one you've just compiled in the previous step.
11] Insert the SD card into the OLinuXino.
12] Your OLinuXino A10S should now automatically save and retrieve the system time from MOD-RTC.

NOTE: THIS POST HAS BEEN SUPERSEDED BY http://olimex.wordpress.com/2013/10/28/building-debian-sd-card-for-linux-with-kernel-3-4-from-scratch-for-a10s-olinuxino-micro/.

1] Create a VirtualBox VM for Debian 7.1.0 i386. I allocated 1024MB of RAM to it. As for the virtual hard drive space, I allocated 8GB. I also recommend that you disable audio support for the VM.
2] Download the Net Install ISO image for Debian 7.1.0 i386. Boot the mentioned ISO in the VirtualBox VM you've created. I used the "Install" option in the installer boot menu.
3] This set of instructions will work with everything deselected under "Software selection." You may select software to your taste during installation.
4] After the installation, the guest OS will automatically get an IP Address via DHCP.
› Continue reading...

« Previous posts Back to top