Pages

Sunday, 11 November 2012

OLinuxino IMX233 Maxi

Looking around for help building the IMX233 kernel with em28xx/easycap/w1 et al....

Found some stuff...

https://www.olimex.com/forum/index.php?topic=101.0
https://www.olimex.com/forum/index.php?topic=160.0

Kernel:
git clone --depth=1 git://git.freescale.com/imx/linux-2.6-imx.git linux-2.6-imx

Olinuxino patches:
git clone --depth=1 git://github.com/archlinuxarm/PKGBUILDs.git alarm

Also you will need to build the boot code (imx-bootlets), the build script at top will does it for you.

Here is the offical alarm kernel build "script":
https://github.com/archlinuxarm/PKGBUILDs/blob/master/core/kernel26-olinuxino/PKGBUILD

https://www.olimex.com/forum/index.php?topic=101.0 



what about 3.6 kernel?

https://github.com/koliqi/imx23-olinuxino/blob/master/Building%20a%20kernel%20%20for%20the%20OLinuXino.md


Read some friendly manuals

https://wiki.archlinux.org/index.php/Kernels/Compilation/Arch_Build_System
http://archlinuxarm.org/developers/building-packages
https://wiki.archlinux.org/index.php/Post_Installation_Tips


Finally I ended up here;

https://github.com/OLIMEX/archlinuxarm-olinuxino/tree/master/olinuxino/kernel26-olinuxino


I think at some point a prebuilt 3.x image will turn up for idiots like me, meanwhile...

(take note that the readme begins with 'don't use these instructions...')

git clone git://github.com/OLIMEX/archlinuxarm-olinuxino.git
cd archlinuxarm-olinuxino/olinuxino/kernel26-olinuxino/
nano PKGBUILD <- uncomment 'make menuconfig'

get any missing dependencies...
pacman -S docbook-xsl xmlto
makepkg --asroot


later, next day...
some error about building ds2751 stuff.

  CC [M]  drivers/w1/slaves/w1_ds2751.o
drivers/w1/slaves/w1_ds2751.c: In function ‘w1_f51_read_bin’:
drivers/w1/slaves/w1_ds2751.c:112:2: error: expected ‘;’ before ‘if’
drivers/w1/slaves/w1_ds2751.c: At top level:
drivers/w1/slaves/w1_ds2751.c:258:2: warning: initialization from incompatible pointer type [enabled by default]
drivers/w1/slaves/w1_ds2751.c:258:2: warning: (near initialization for ‘w1_f51_bin_attr.read’) [enabled by default]
drivers/w1/slaves/w1_ds2751.c:259:2: warning: initialization from incompatible pointer type [enabled by default]
drivers/w1/slaves/w1_ds2751.c:259:2: warning: (near initialization for ‘w1_f51_bin_attr.write’) [enabled by default]
make[3]: *** [drivers/w1/slaves/w1_ds2751.o] Error 1
make[2]: *** [drivers/w1/slaves] Error 2
make[1]: *** [drivers/w1] Error 2
make: *** [drivers] Error 2
==> ERROR: A failure occurred in build().
    Aborting...
 

Trying again without ds2751 stuff... I don't think my humidity sensor is using that one anyway.
(2438 and temp and the em28xx)

Try and do the em28xx patch...

wget https://dl.dropbox.com/u/15065328/em28xx-Fix-height-setting-on-non-progressive-captures.patch 

put patch and md5sum in the PKGBUILD
do not pass GO, do not collect £200.


 makepkg --asroot


Failed again - got as far as depmod...
DEPMOD  2.6.35-4-OLinuXino-ARCH+
ERROR: could not open directory /home/archlinuxarm-olinuxino/olinuxino/kernel26-olinuxino/pkg/kernel26-olinuxino/usr/lib/modules/2.6.35-4-OLinuXino-ARCH+: No such file or directory
FATAL: could not search modules: No such file or directory
make: *** [_modinst_post] Error 1



as per the warning; 'Warning: you may need to install module-init-tools'

pacman -S module-init-tools

just for fun...

 makepkg --asroot

==> Finished making: kernel26 2.6.35.3-4 (Tue Nov 13 06:24:02 CST 2012)
 

hooray!

need to install bootlets and elf

cd ../imx-bootlets-olinuxino
makepkg --asroot
pacman -U imx-bootlets-olinuxino-10.12.01-1-arm.pkg.tar.xz

cd ../elftosb
makepkg --asroot
pacman -U elftosb-10.12.01-1-arm.pkg.tar.xz

now back to the kernel

cd ../kernel26-olinuxino
pacman -U kernel26-olinuxino-2.6.35.3-4-arm.pkg.tar.xz

answer the scary questions

reboot

low and behold - pictures!
my kworld USB2800 (em28xx) is showing pictures with intermittent green/pink flashing.

I'll have a look at 3.6 kernels and try the stk1160 next.

No comments:

Post a Comment

Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial 3.0 Unported License