AR# 33467

|

11 EDK - My Linux kernel will not compile. Why?

Description

Keywords: DMA, Local, Link, LLDMA, TEMAC

When I try to compile my Linux kernel, I receive error messages similar to the following:

drivers/built-in.o(.text+0x60a80): In function `reset': undefined reference to `XLlDma_BdRingGetCoalesce'
drivers/built-in.o(.text+0x60a90):xlltemac_main.c: undefined reference to `XLlDma_BdRingGetCoalesce'
drivers/built-in.o(.text+0x60a98):xlltemac_main.c: undefined reference to `XLlDma_Reset'
drivers/built-in.o(.text+0x60aac):xlltemac_main.c: undefined reference to `XLlDma_BdRingSetCoalesce'
drivers/built-in.o(.text+0x60ac0):xlltemac_main.c: undefined reference to `XLlDma_BdRingSetCoalesce'
drivers/built-in.o(.text+0x60ad4):xlltemac_main.c: undefined reference to `XIo_DcrIn'
drivers/built-in.o(.text+0x60af0):xlltemac_main.c: undefined reference to `XIo_DcrOut'
drivers/built-in.o(.text+0x60e14): In function `xenet_dma_rx_interrupt':
drivers/built-in.o(.text+0x61a98):xlltemac_main.c: undefined reference to `XStrm_TxSetLen'
drivers/built-in.o(.text+0x61c08):xlltemac_main.c: undefined reference to `XStrm_Write'

Solution

The Linux kernel will not compile if standalone driver version lldma_v1_00_b and later are used for the MontaVista Linux 4.0.1 and WindRiver Linux 1.3/2.0 kernels. This is only valid for systems that have LL_TEMAC.

The solution for this problem is to copy the makefile in:

$XILINX_EDK\sw\ThirdParty\bsp\linux_2_6_v1_02_a\drivers\lldma_v1_00_a\build\linux2_6\Makefile

to:

<linux_kernel>\drivers\xilinx_common

This makefile should be copied after generating the Linux Libraries.

This problem has been fixed in EDK 11.4, available at:
http://www.xilinx.com/support/download/index.htm



AR# 33467
Date 11/08/2009
Status Active
Type General Article
People Also Viewed