[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[microblaze-uclinux] Problem with booting on a new board



Hi all,

 

   We are attempting to bring up a new board design using uClinux and Microblaze. We have made some fair progress but are now stuck with a BUG in the kernel at slab.c. We’d provide the exact line but the printk function seems to have lost the ability to print integers as well (we never touched it!) This BUG seems to rear its ugly head in the kmem_cache_create() function where it checks if “in_interrupt()” is true, which it happens to be. Further tracing has determined that in_interrupt() is true because the local_bh_count is non-zero.

 

   Does anybody have a pointer for us? We have included the limited output from the kernel as well as the MSS file.

 

   Thanks in advance,

 

      Steve

 

 

*** PES DAM ***

 

Testing sram...

Testing flash...()

Writing MAC address...

Copying to sram...

Jumping to 0x00...

Linux version 2.4.31-uc0 (root@vanteon-10-10-55-142) (gcc version 3.4.1 (Xilinx

EDK 7.1.2 Build EDK_H.12.4)) #37 Thu Oct 27 14:51:06 EDT 2005

On node 0 totalpages: 1024

zone(0): 1024 pages.

zone(1): 0 pages.

zone(2): 0 pages.

CPU: MICROBLAZE

Kernel command line:

Console: xmbserial on UARTLite

We have 1 cpu's, and are at local_irq_count=0, local_bh_count=0

After kmem_cache_init, local_irq_count=0, local_bh_count=0

After sti, local_irq_count=0, local_bh_count=1

Calibrating delay loop... Past first loop... Past second loop... 33.07 BogoMIPS

Memory: 4MB = 4MB total

Memory: c392KB available (935K code, c7c3K data, 48K init)

After mem_init, local_irq_count=0, local_bh_count=c

kernel BUG at slab.c:c2cc!

 

 

 

 

 

BEGIN OS

 PARAMETER OS_NAME = uclinux

 PARAMETER OS_VER = 1.00.c

 PARAMETER PROC_INSTANCE = microblaze_0

 PARAMETER TARGET_DIR = /root/uClinux-2.4.x/arch/microblaze/platform/DAM

 PARAMETER stdout = console_uart

 PARAMETER stdin = console_uart

 PARAMETER main_memory = system_memcon

 PARAMETER main_memory_bank = 0

 PARAMETER main_memory_size = 4194304

 PARAMETER flash_memory = system_memcon

 PARAMETER flash_memory_bank = 2

 PARAMETER flash_memory_size = 8388608

 PARAMETER lmb_memory = ilmb_cntlr

END

 

 

BEGIN PROCESSOR

 PARAMETER DRIVER_NAME = cpu

 PARAMETER DRIVER_VER = 1.00.a

 PARAMETER HW_INSTANCE = microblaze_0

 PARAMETER COMPILER = mb-gcc

 PARAMETER ARCHIVER = mb-ar

 PARAMETER CORE_CLOCK_FREQ_HZ = 66666667

END

 

 

BEGIN DRIVER

 PARAMETER DRIVER_NAME = generic

 PARAMETER DRIVER_VER = 1.00.a

 PARAMETER HW_INSTANCE = dcm_system

END

 

BEGIN DRIVER

 PARAMETER DRIVER_NAME = uartlite

 PARAMETER DRIVER_VER = 1.00.b

 PARAMETER HW_INSTANCE = mdm

END

 

BEGIN DRIVER

 PARAMETER DRIVER_NAME = bram

 PARAMETER DRIVER_VER = 1.00.a

 PARAMETER HW_INSTANCE = ilmb_cntlr

END

 

BEGIN DRIVER

 PARAMETER DRIVER_NAME = bram

 PARAMETER DRIVER_VER = 1.00.a

 PARAMETER HW_INSTANCE = dlmb_cntlr

END

 

BEGIN DRIVER

 PARAMETER DRIVER_NAME = generic

 PARAMETER DRIVER_VER = 1.00.a

 PARAMETER HW_INSTANCE = mb_opb

END

 

BEGIN DRIVER

 PARAMETER DRIVER_NAME = intc

 PARAMETER DRIVER_VER = 1.00.c

 PARAMETER HW_INSTANCE = system_intc

END

 

BEGIN DRIVER

 PARAMETER DRIVER_NAME = tmrctr

 PARAMETER DRIVER_VER = 1.00.b

 PARAMETER HW_INSTANCE = system_timer

END

 

BEGIN DRIVER

 PARAMETER DRIVER_NAME = emc

 PARAMETER DRIVER_VER = 2.00.a

 PARAMETER HW_INSTANCE = system_memcon

END

 

BEGIN DRIVER

 PARAMETER DRIVER_NAME = gpio

 PARAMETER DRIVER_VER = 2.00.a

 PARAMETER HW_INSTANCE = system_gpio

END

 

BEGIN DRIVER

 PARAMETER DRIVER_NAME = gpio

 PARAMETER DRIVER_VER = 2.00.a

 PARAMETER HW_INSTANCE = io_ctl_en_bank0

END

 

# BEGIN DRIVER

# PARAMETER DRIVER_NAME = generic

# PARAMETER DRIVER_VER = 1.00.a

# PARAMETER HW_INSTANCE = iosys

# END

BEGIN DRIVER

 PARAMETER DRIVER_NAME = uartlite

 PARAMETER DRIVER_VER = 1.00.b

 PARAMETER HW_INSTANCE = console_uart

END

 

BEGIN DRIVER

 PARAMETER DRIVER_NAME = dam_io

 PARAMETER DRIVER_VER = 1.00.a

 PARAMETER HW_INSTANCE = iosys

END

 

BEGIN DRIVER

 PARAMETER DRIVER_NAME = emac

 PARAMETER DRIVER_VER = 1.00.f

 PARAMETER HW_INSTANCE = opb_ethernet_0

END