Kernel compile


Enwyr

Still Fresh
Joined
Apr 6, 2011
Messages
15
Heiho,


well, i finaly recieved my pandora :D


First of all, all my systems running Linux, so i am very happy to have it also on the Pandora.


The very first thing i try: Connecting an external hard-drive to the Pandora over USB. Jop, nice, dmesg gives me the information that the drive was mentioned, but ( there is always an "but" ) ext4 is not supported.


Well, okay, its linux, just grab the kernel-source, get the pandora-configuration and add the ext4 filesystem.


Compiling ... okay


Put it to the pandora ... okay


Boot (from SD-Card) ... okay but shutting down after login, because the battery-state is not mentioned.


Well as information: I boot, since i get the pandora, from sd-card. For boot of the new kernel, i made an hard-link from /boot/uImage-custom to /boot/uImage.


And here comes the question: Did somebody already build a kernel, put it on the pandora and boot it without any problems?


I use:


- arm-2010q1 from codesourcery on amd64


- kernel from open-pandora-git repository


- follow the instruction on Kernel build instructions


- ( Modules and Firmware from the kernels was copyed to the sd-card )


I try the following kernels:


- 2.6.27-omap1


- 2.6.38


That was working:


- booting and login


Not working:


- State of the battery


- WiFi


Within the next days i try to compile the Kernel on the pandora itselfe, maybe it helps
 
Within the next days i try to compile the Kernel on the pandora itselfe, maybe it helps

Already then, i don't, because i managed to build the kernel and ( cross-compile on an 64bit linux ) the battery power is now mentioned.


It was not so easy.


- First of all i add a password for the root-user to use the single-mode


- boot the pandora in single mode


- with insmod load the kernel-module for the battery


- going to runlvl 5


- login everything is fine


so it seems that the kernel dont mentioned the modules, or not loading it at startup.


Did somebody knowing about loading kernel-modules automaticaly? ( Of course i will try it myselfe ;) )
 
In order to get the battery modules, you need to add them to the config. Fastest way is to grab it directly off the Pandora: /proc/config.gz


Unzip it as ".config" into your kernel source directory and build.
 
In order to get the battery modules, you need to add them to the config. Fastest way is to grab it directly off the Pandora: /proc/config.gz


Unzip it as ".config" into your kernel source directory and build.
Joa, i did it today. It works great.


The problem before was, i used the omap3_pandora_defconfig not the configuration from the /proc/config.gz


But neverless, also with the defconfig it worked. It only not loading the modules at boot-time.


I found out that an easy command:



Code:
depmod -v

on the pandora, do the work i need. And it will load the modules on boot-time.


But with the configuration from the /proc/config.gz everything (also the wifi) works after an depmod great.


Okay now the only task is to compile the ext4-kernel-module. As i remember the ext4 is on the 2.6.27 only on development stage, so i try to compile a later kernel-version.


I'll keep you update
 
So well, i compiled nearly every major kernel version and get no working result ( except the original kernel )


The Bootloader hangs on loading the kernel Image. It seems that i dont use the correct compression for uBoot.


So here my question to the OP-Team: Which compression do you enabled on uBoot?
 
The compression should not really matter, as the kernel uncompresses itself (uImage itself is not compressed and contains zImage, which does uncompress itself after being simply copied by u-boot). I've read somewhere at the time of 2.6.37 lzma was broken though.
 
The compression should not really matter, as the kernel uncompresses itself (uImage itself is not compressed and contains zImage, which does uncompress itself after being simply copied by u-boot). I've read somewhere at the time of 2.6.37 lzma was broken though.

Thanks for background-info.


Joa, well its a little bit triky to get debugging informations. I compiled the kernel also with low-level-debugging. But it also not helps.


Actually i was try to compile 2.6.38.5. To compile it correctly, i was activated the mutex-option for OMAP.


On The pandora:


- Loading kernel image .. OK


- Starting Kernel ...


- screen keeps black and the pandora seems to hang


So i think something with my kernel-configuration is wrong. ( i used the original from /proc/config.gz )


Is it possible to get more debug information whats going wrong? ( Like on the pandaboard when its connected to serial,maybe its possible to make the debugging output of the uboot to the usb-serial? )
 
Last edited by a moderator:
Is it possible to get more debug information whats going wrong? ( Like on the pandaboard when its connected to serial,maybe its possible to make the debugging output of the uboot to the usb-serial? )
Yes there is a boot menu if you hold R after turning on the machine.


The defconfig from /proc/config.gz might not be good for 2.6.37 as many option names have changed, have you tried omap3_pandora_defconfig on 2.6.37?
 
Last edited by a moderator:
Yes there is a boot menu if you hold R after turning on the machine.


The defconfig from /proc/config.gz might not be good for 2.6.37 as many option names have changed, have you tried omap3_pandora_defconfig on 2.6.37?
No i dont try it, because the omap3_pandora_defconfig also not works for me from the original kernel source of the pandora.


The most kernels i try shows nearly the same problem. On booting, the kernel load, than the screen fade to dark and thats all.


In the next few days i will try to grab an 2.6.28-omap kernel and go step by step over the configuration and compare it with the configuration from the original pandora kernel.


( I found out that the arch linux is aviable for the pandora, maybe i look a little bit to the source there ;) )
 
Last edited by a moderator:
"I found something"


Wow, i was very confusing i think.


I found this inside the wiki.

When compiling mainline kernel, use


make omap2plus_defconfig
and

Support for various kernels is available in pandora-XX branches or tags

I overread all the time the pandora-37 branch


I will try these and also take a look on the arch-source, maybe thats the answer ;)
 
Last edited by a moderator:
Answer to what? Don't quite understand.
Well originally i try to get ext4 USB-Hard-drives to work. In the 2.6.27 kernel, there is only dev support for ext4.


Now i found out the pandora-35-branch seems to have the ext4 support. I will try today to compile and run it.
 
I suggest using .37 one as it's a bit more complete.
Phu, have no luck.


The -37 kernel booting with many errors for my second mmc-card



Code:
mmcblk1: error -110 sending status command

mmcblk1: error -110 sending read/write command, response 0x0, card status 0x0

mmcblk1: error -110 transferring data, sector xxxxx, nr 1, cars status 0x0

end_request: I/O error, dev mmcblk1, sector xxxxxx

also the xserver seems not to start
 
I suggest using .37 one as it's a bit more complete.
Phu, have no luck.


The -37 kernel booting with many errors for my second mmc-card



Code:
mmcblk1: error -110 sending status command

mmcblk1: error -110 sending read/write command, response 0x0, card status 0x0

mmcblk1: error -110 transferring data, sector xxxxx, nr 1, cars status 0x0

end_request: I/O error, dev mmcblk1, sector xxxxxx
Known problem, the SD driver has regressed, try another card if you can..

also the xserver seems not to start
Stick 'fbset -depth 16' to /etc/init.d/slim-init before it starts slim process.
 
Known problem, the SD driver has regressed, try another card if you can..


Stick 'fbset -depth 16' to /etc/init.d/slim-init before it starts slim process.

Realy thanks, thats it :) strange that the framebuffer is not correctly mentioned


I wonder also that thing with the SD-Card, the card seems okay (with an USB-Card Reader there is everything okay) (SanDisk SDHC Class 4 8GB).


The card from where iam booting (Sony SDHC Class 4 4GB) dont give any error. Maybe there is an relation between the class and the vendor ( maybe quality.. )
 
Back
Top