Technical Support

C251: USB ENUMERATION EXAMPLE LINKS WITH ERRORS


Information in this article applies to:

  • C251 Version 1

QUESTION

I recently obtained an Intel USB evaluation board and a DEMO copy of your USB support. When I try to build the enumeration example with the supplied project file I receive the following linker errors.

*** WARNING L15: MULTIPLE CALL TO FUNCTION
NAME:    READ_RX_DATA/MAIN
CALLER1: ENDPOINT_ISR/MAIN
CALLER2: ?C_C51STARTUP

*** WARNING L15: MULTIPLE CALL TO FUNCTION
NAME:    FATAL_ERROR/MAIN
CALLER1: ENDPOINT_ISR/MAIN
CALLER2: ?C_C51STARTUP

*** ERROR L121: IMPROPER FIXUP
MODULE:  E:\C251EVAL\TESTC\MAIN.OBJ (MAIN)
SEGMENT: ?C_INITSEG
OFFSET:  000001H

*** ERROR L121: IMPROPER FIXUP
MODULE:  E:\C251EVAL\TESTC\MAIN.OBJ (MAIN)
SEGMENT: ?C_INITSEG
OFFSET:  000015H

*** ERROR L121: IMPROPER FIXUP
MODULE:  E:\C251EVAL\TESTC\MAIN.OBJ (MAIN)
SEGMENT: ?C_INITSEG
OFFSET:  000029H

*** ERROR L121: IMPROPER FIXUP
MODULE:  E:\C251EVAL\TESTC\MAIN.OBJ (MAIN)
SEGMENT: ?C_INITSEG
OFFSET:  00002CH

What's wrong?

ANSWER

The enumeration example code for the 8x930Ax must be compiled using C251 Version 2.0. The 2K evaluation version of version 2 is available on the web site.

After you have the evaluation tools installed, run µVision and make sure to select the Version 2 toolset using the Tool Set command in the File menu. When you select Tool Set, µVision displays a dialog box where you may select the appropriate tool set.

Once version 2 is selected, you should have no other problems.

Be sure to check the Keil USB web page at http://www.keil.com/usb/.

Last Reviewed: Monday, June 28, 2004


Did this article provide the answer you needed?
 
Yes
No
Not Sure