LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Embedded & Single-board computer (https://www.linuxquestions.org/questions/linux-embedded-and-single-board-computer-78/)
-   -   Embedded System Switch from 2.6.19.7 to 2.6.30+ No output at all (https://www.linuxquestions.org/questions/linux-embedded-and-single-board-computer-78/embedded-system-switch-from-2-6-19-7-to-2-6-30-no-output-at-all-870547/)

Chaosmaster 03-23-2011 01:58 PM

Embedded System Switch from 2.6.19.7 to 2.6.30+ No output at all
 
Hello Guys,

I hope I'm posting in the correct forum.
I am working with a (specialized) embedded system (NEC VR4133A MIPS CPU)
It is currently running U-Boot 1.3.2 + Linux-Kernel 2.6.19.7.
I am trying to get a kernel >=2.6.30 running on the box.

I do have the source-code and config for the system running on there and i was able to build a running kernel from the sources.
I was also able to port the drivers for the board to 2.6.20.1 and successfully boot it.

Now I'm trying to port the drivers to a kernel >=2.6.30.
With some patching i managed to compile the kernel (actually I'm using 2.6.32.27 for testing) but when i try to boot it through U-Boot, I do not get any (serial-)console output at all after u-boot passes execution to the kernel.
I even put a printk in the very beginning of the setup.c for the board, still nothing.

Right now I'm becoming really frustrated as I'm running out of ideas and I've got no clue how to debug the kernel without even getting any output at all.

I am not even sure how to test if there's something wrong with the console-drivers or if the kernel doesn't boot at all.

I am also wondering if this could be caused by a too old u-boot (even though i don't really get how this could cause a kernel not booting at all when it can successfully boot an older kernel).

I hope someone can point me into the right direction.

Thanks in advance,

Chaos

bhaslinux 03-23-2011 05:41 PM

Does the kernel start at-all ?
If not are you using a proper "console=" option in the kernel command line ?

Chaosmaster 03-24-2011 04:46 AM

Hi,

I'm using the same config that worked with the 2.6.19 and 2.6.20 Kernels (console=/dev/ttyS1,115200n8).
I also tried ttyS0 - ttyS4 no luck.
Is there a chance the naming has changed in the newer kernel?
If so, how could i find out the new name?
Is there a way to tell the kernel to use all available consoles for output?

As far as i can see i really have no way to tell if the kernel is running because the serial-console (so far) is my only means of communication with the box. (The network-drivers also need to be ported).

Any other suggestions?

Thx,

Chaos

EDIT:

I now put in some lines in my setup.c which (should) switch on all available LEDs, this works for 2.6.19 however in 2.6.32.27 the LEDs don't turn on.
I kind of have the feeling my setup code isn't called at all...
How can i make sure it is being called? Which files need to be changed so the code can be hooked into the kernel?

bhaslinux 03-27-2011 05:39 PM

I think it is "console=ttyS0" (do not need a /dev/ttyS0 since /dev is not mounted and not known by kernel). Can you try this please ?

l2y3n2 03-31-2011 04:12 AM

in drivers/serial/vr41xx_siu.c

816static struct console siu_console = {
817 .name = "ttyVR",
818 .write = siu_console_write,
819 .device = uart_console_device,
820 .setup = siu_console_setup,
821 .flags = CON_PRINTBUFFER,
822 .index = -1,
823 .data = &siu_uart_driver,
824};

so I think you should try: "console=ttyVR1"


All times are GMT -5. The time now is 05:41 PM.