Search

Technical Discussion Group Forum

This forum is provided for user discussion. While Beacon EmbeddedWorks support staff and engineers participate, Beacon EmbeddedWorks does not guarantee the accuracy of all information within in the Technical Discussion Group (TDG).

The "Articles" forums provide brief Articles written by Beacon EmbeddedWorks engineers that address the most frequently asked technical questions.

To receive email notifications when updates are posted for a Beacon EmbeddedWorks product download, please subscribe to the TDG Forum of interest.

TDG Forum

PrevPrev Go to previous topic
NextNext Go to next topic
Last Post 21 Mar 2008 09:21 PM by  ecastelo
Compile Bootloader issue
 10 Replies
Sort:
You are not authorized to post a reply.
Author Messages
ecastelo
New Member
New Member
Posts:


--
20 Mar 2008 09:21 AM
    I am trying to compile the bootloader given in post http://tdg.logicpd.com/viewtopic.php?f=29&t=1074 and i get an error.
    The error msg is:
    /opt/freescale/usr/local/gcc-4.1.2.-glibc-2.5-nptl-3/arm-none-linux-gnueabi/arm-none-linux-gnueabi/bin/ld: cannot find -lc

    I'm sure if i have missed some step that is causing this error. I changed the path to CC and LD in the Makefile and i changed the COMMAND_LINE in bootloaderstg2.c.

    Do i even need this bootloader if i am using LogicLoader 2.4?

    Is there someone that can give an updated list of commands needed to compile and get a zImage using LTIB and get the bootloader compiled? I am using LTIB imx31_ads_20071008-rel5b-ltib.iso. I am confused now with all the different ways i can make the image. Can i use this LTIB for Linux kernel 2.6.19.2? This kernel seems to have more instructions on this forum but i can never get the LTIB to compile completely and my errors do not seem to match errors people are facing on this forum. I am not sure when and where to apply the patches and config. If i don't use LTIB and just apply the patches from post http://tdg.logicpd.com/viewtopic.php?f=29&t=1135 to a clean 2.6.19.2 kernel, create the .config in the kernel and then do "make zImage", that seems to work. But i still can't compile the bootloader to test this zImage.

    Any help is appreciated.
    tombrus
    New Member
    New Member
    Posts:


    --
    20 Mar 2008 10:02 AM
    You have to change the LIBGCC line to:
    LIBGCC=/opt/freescale/usr/local/gcc-4.1.2-glibc-2.5-nptl-3/arm-none-linux-gnueabi/arm-none-linux-gnueabi/sysroot/usr/lib
    otherwise it can not find the libraries.

    -Tom
    ecastelo
    New Member
    New Member
    Posts:


    --
    20 Mar 2008 10:11 AM
    Sorry, forgot to mention that, ya i changed the LIBGCC line to what you stated also.

    I can't figure out what the -lc is trying to do.

    Thanks
    tombrus
    New Member
    New Member
    Posts:


    --
    20 Mar 2008 10:25 AM
    No problem. BTW: This is also in the script I just posted. Maybe take a look to save some time. I am curious if you will get the same irq-90 problem...
    ecastelo
    New Member
    New Member
    Posts:


    --
    20 Mar 2008 10:26 AM
    Sorry, i was using the wrong lib. You were right. I was using what the instructions had said "also fix LIBGCC path, which is same as above except ends in
    "lib" instead of "bin" "
    I was not using the sysroot lib

    Thanks

    What about getting a 2.6.22.6 kernel working? I believe i got the 2.6.19.2 working, i am going to test that now, but i cannot get the 2.6.22.6 kernel compiled. Instructions are limited.

    Thanks again
    tombrus
    New Member
    New Member
    Posts:


    --
    20 Mar 2008 10:30 AM
    oh, and the -lc is for adding the library (if I remember well libc.a) but it should be in the lib search path, -l<xxx> is short for lib<xxx>.a, see man ld.

    I get 2.6.22.6 compiled all right (with the script ) but I am stuck on the irq-90 for now. Hope someone will help...
    ecastelo
    New Member
    New Member
    Posts:


    --
    20 Mar 2008 11:23 AM
    After i load the loader and zImage to the board.
    I give the command
    exec 0x800d03a8 -
    The board resets.
    Since i loaded the files to RAM, i lose everything.

    What am i doing wrong here?
    macneibfallon
    New Member
    New Member
    Posts:


    --
    20 Mar 2008 11:51 AM
    ecastelo:

    First, could you post a dump of your terminal window, kinda hard to guess where the problem is.
    Though if i had to guess:

    When you are downloading the zImage to the board make sure you check the it's
    size. Otherwise it hangs.

    ls -al /tftpboot/zImage
    -rwxr-xr-x 1 root wheel 1629660 Mar 27 11:40 /tftpboot/zImage

    load raw 0x81000000 1629660 /tftp/129.148.25.210:/tftpboot/zImage

    zImage file size is different for me most of time after i compile.
    Hope this helps
    Reagrds,
    Blair
    ecastelo
    New Member
    New Member
    Posts:


    --
    20 Mar 2008 12:19 PM
    There is actually nothing to dump.
    I set the size and and location per the instructions. There were no errors loading the files. I typed the exec command and the board resets.

    losh> load raw 0x800d03a8 35386 /tftp/172.16.142.68:/tftpboot/loader
    loading from /tftp/172.16.142.68:/tftpboot/loader:
    loading raw binary to 0x800d03a8 (ram) len 00008a3a:
    ........done
    file loaded
    losh> ls
    R : load 35386
    D : tftp 0
    D : etc 0
    D : dev 0
    losh> load raw 0x81000000 1788596 /tftp/172.16.142.68:/tftpboot/zImage
    loading from /tftp/172.16.142.68:/tftpboot/zImage:
    loading raw binary to 0x81000000 (ram) len 001b4ab4:
    ...............................................................................e
    file loaded
    losh> ls
    R : load 1788596
    D : tftp 0
    D : etc 0
    D : dev 0
    losh> exec 0x800d03a8 -

    *****************************************************************

    LogicLoader

    (c) Copyright 2002-2006, Logic Product Development, Inc.
    All Rights Reserved.
    Version 2.4.0-IMX31_10 0001
    *****************************************************************

    losh> ls
    D : tftp 0
    D : etc 0
    D : dev 0
    losh>


    I am following the instructions from the post: http://tdg.logicpd.com/viewtopic.php?f=29&t=1074

    Thanks
    richard.laborde@logicpd.com
    Basic Member
    Basic Member
    Posts:247


    --
    20 Mar 2008 12:38 PM
    ecastelo-

    The exec - t option is enabled in LoLo 2.4.0.
    Type help exec for examples.

    Thanks
    ecastelo
    New Member
    New Member
    Posts:


    --
    21 Mar 2008 09:21 PM
    The kernel would not boot. It would hang on the USB_CLK line whine uncompressing Linux. Using Linux 2.6.19.2
    So i decided to give another try compiling the 2.6.22.6. Here is where my kernel stops compiling. I apply the patches and run ltib again. I select all the settings ( imx31lite, smsc ...)
    Then it starts to compiles and i get the same error:

    It's long sorry

    + '[' '!' -f config/platform/imx31ads/.config -a -f config/platform/imx31ads/defconfig ']'
    + '[' -n '' ']'
    + '[' -n '' ']'
    + cd config/platform/imx31ads
    + mconf main.lkc
    #
    # using defaults found in .config
    #


    *** End of configuration.
    *** Check the top-level Makefile for additional configuration options.

    + cp .config defconfig.dev

    Processing platform: Freescale IMX31 ADS reference board
    ==========================================================
    using config/platform/imx31ads/.config

    Processing: fake-provides
    ===========================

    Processing: kernel-2.6.22-mx
    ==============================

    Cowardly refusing to clobber existing directory:
    /usr/local/ltib/ltib-imx31ads-20071008/rpm/BUILD/linux-2.6.22
    Remove this by hand if you really want to rebuild this package from scratch

    scbuild/scdeploy already unpacked package

    Processing: kernel-2.6.22-mx
    ==============================
    rpmbuild --dbpath /usr/local/ltib/ltib-imx31ads-20071008/rpmdb --define '_unpackaged_files_terminate_build 0' --define '_target_cpu arm' --define '__strip strip' --define '_topdir /usr/local/ltib/ltib-imx31ads-20071008/rpm' --define '_prefix /usr' --define '_tmppath /usr/local/ltib/ltib-imx31ads-20071008/tmp' --define '_mandir /usr/share/man' --define '_sysconfdir /etc' --define '_localstatedir /var' -bc --short-circuit /usr/local/ltib/ltib-imx31ads-20071008/tmp/kernel-2.6.22-mx.spec
    Executing(%build): /bin/sh -e /usr/local/ltib/ltib-imx31ads-20071008/tmp/rpm-tmp.10740
    + umask 022
    + cd /usr/local/ltib/ltib-imx31ads-20071008/rpm/BUILD
    + cd linux-2.6.22
    + '[' -n linux-2.6.22 ']'
    + rm -f /usr/local/ltib/ltib-imx31ads-20071008/rpm/BUILD/linux
    + ln -s linux-2.6.22 /usr/local/ltib/ltib-imx31ads-20071008/rpm/BUILD/linux
    + KSRC_DIR=/usr/local/ltib/ltib-imx31ads-20071008/rpm/BUILD/linux-2.6.22
    + : arm
    + : /usr/bin/gcc -B/usr/bin//
    + : linux-2.6.22-mx31ads.config
    + : /usr/local/ltib/ltib-imx31ads-20071008/config/platform/imx31ads
    + : /usr/local/ltib/ltib-imx31ads-20071008/rpm/BUILD/linux-2.6.22
    + cd /usr/local/ltib/ltib-imx31ads-20071008/rpm/BUILD/linux-2.6.22
    ++ eval echo
    +++ echo
    + KBOUT=
    + KBOUT=.
    + '[' . '!=' . ']'
    + test -d .
    + case $LINTARCH in
    + KTARG=zImage
    + SYSCFG_KTARG=zImage
    + for CFG in '"$PLATFORM_PATH/${PKG_KERNEL_PRECONFIG}.dev"' '"$PLATFORM_PATH/$PKG_KERNEL_PRECONFIG"' '"$KSRC_DIR/arch/$GNUTARCH/configs/$PKG_KERNEL_PRECONFIG"' '"$KSRC_DIR/arch/$LINTARCH/configs/$PKG_KERNEL_PRECONFIG"' notfound
    + '[' -f /usr/local/ltib/ltib-imx31ads-20071008/config/platform/imx31ads/linux-2.6.22-mx31ads.config.dev ']'
    + cp -f /usr/local/ltib/ltib-imx31ads-20071008/config/platform/imx31ads/linux-2.6.22-mx31ads.config.dev ./.config
    + break
    + '[' '!' -f ./.config ']'
    + grep -q CONFIG_PPC_MERGE=y ./.config
    + '[' -n '' ']'
    + '[' -n y -o -n '' ']'
    + make ARCH=arm CROSS_COMPILE= 'HOSTCC=/usr/bin/gcc -B/usr/bin//' menuconfig
    scripts/kconfig/mconf arch/arm/Kconfig


    *** End of Linux kernel configuration.
    *** Execute 'make' to build the kernel or try 'make help'.

    + cp -f ./.config /usr/local/ltib/ltib-imx31ads-20071008/config/platform/imx31ads/linux-2.6.22-mx31ads.config.dev
    + '[' . '!=' . ']'
    + '[' '%{kernel_series}' = 2.4 ']'
    + make ARCH=arm CROSS_COMPILE= 'HOSTCC=/usr/bin/gcc -B/usr/bin//' zImage
    scripts/kconfig/conf -s arch/arm/Kconfig
    *
    * Restart config...
    *
    *
    * MX3 Options
    *
    Support MX31LITE (logicpd lite kit) platforms (MACH_MX31LITE) [Y/n/?] (NEW) Y
    Support MX31ADS platforms (MACH_MX31ADS) [Y/n/?] y
    Enter Doze mode during idle (MX3_DOZE_DURING_IDLE) [N/y/?] n
    Use SDMA API (MXC_SDMA_API) [Y/n/?] y
    MXC NFC Hardware Version 1 (ARCH_MXC_HAS_NFC_V1) [Y/n/?] y
    MXC NFC Hardware Version 2 (ARCH_MXC_HAS_NFC_V2) [Y/n/?] y
    *
    * Ethernet (10 or 100Mbit)
    *
    Ethernet (10 or 100Mbit) (NET_ETHERNET) [Y/n/?] y
    Generic Media Independent Interface device support (MII) [Y/m/?] y
    3COM cards (NET_VENDOR_3COM) [N/y/?] n
    Western Digital/SMC cards (NET_VENDOR_SMC) [N/y/?] n
    SMC 91C9x/91C1xxx support (SMC91X) [N/m/y/?] n
    SMSC LAN911x/LAN921x families embedded ethernet support (SMSC911X) [N/m/y/?] (NEW) y
    DM9000 support (DM9000) [N/m/y/?] n
    Racal-Interlan (Micom) NI cards (NET_VENDOR_RACAL) [N/y/?] n
    AT1700/1720 support (EXPERIMENTAL) (AT1700) [N/m/y/?] n
    DEPCA, DE10x, DE200, DE201, DE202, DE422 support (DEPCA) [N/m/y/?] n
    HP 10/100VG PCLAN (ISA, EISA, PCI) support (HP100) [N/m/y/?] n
    Other ISA cards (NET_ISA) [N/y/?] n
    EISA, VLB, PCI and on board controllers (NET_PCI) [Y/n/?] y
    Ansel Communications EISA 3200 support (EXPERIMENTAL) (AC3200) [N/m/y/?] n
    Apricot Xen-II on board Ethernet (APRICOT) [N/m/y/?] n
    CS89x0 support (CS89x0) [Y/n/m/?] y
    #
    # configuration written to .config
    #
    CHK include/linux/version.h
    SYMLINK include/asm-arm/arch -> include/asm-arm/arch-mxc
    make[1]: `include/asm-arm/mach-types.h' is up to date.
    CHK include/linux/utsrelease.h
    CALL scripts/checksyscalls.sh
    <stdin>:91:1: warning: "__IGNORE_sync_file_range" redefined
    In file included from <stdin>:2:
    include/asm/unistd.h:444:1: warning: this is the location of the previous definition
    <stdin>:1097:2: warning: #warning syscall fadvise64 not implemented
    <stdin>:1265:2: warning: #warning syscall migrate_pages not implemented
    <stdin>:1321:2: warning: #warning syscall pselect6 not implemented
    <stdin>:1325:2: warning: #warning syscall ppoll not implemented
    <stdin>:1365:2: warning: #warning syscall epoll_pwait not implemented
    CHK include/linux/compile.h
    LD arch/arm/mach-mx3/built-in.o
    arch/arm/mach-mx3/mx31lite.o: In function `board_get_ckih_rate':
    mx31lite.c:(.text+0x10): multiple definition of `board_get_ckih_rate'
    arch/arm/mach-mx3/mx31ads.o:mx31ads.c:(.text+0x10): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `board_get_ckih_rate' changed from 48 in arch/arm/mach-mx3/mx31ads.o to 24 in arch/arm/mach-mx3/mx31lite.o
    arch/arm/mach-mx3/mx31lite.o: In function `get_cpu_wp':
    mx31lite.c:(.text+0x28): multiple definition of `get_cpu_wp'
    arch/arm/mach-mx3/mx31ads.o:mx31ads.c:(.text+0x90): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `get_cpu_wp' changed from 56 in arch/arm/mach-mx3/mx31ads.o to 32 in arch/arm/mach-mx3/mx31lite.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `extuart_intr_setup':
    mx31lite_gpio.c:(.text+0x98): multiple definition of `extuart_intr_setup'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x9c): first defined here
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_lcd_inactive':
    mx31lite_gpio.c:(.text+0x48): multiple definition of `gpio_lcd_inactive'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x10): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `gpio_lcd_inactive' changed from 28 in arch/arm/mach-mx3/mx31ads_gpio.o to 16 in arch/arm/mach-mx3/mx31lite_gpio.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_sensor_reset':
    mx31lite_gpio.c:(.text+0x88): multiple definition of `gpio_sensor_reset'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x70): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `gpio_sensor_reset' changed from 44 in arch/arm/mach-mx3/mx31ads_gpio.o to 16 in arch/arm/mach-mx3/mx31lite_gpio.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_sdhc_active':
    mx31lite_gpio.c:(.text+0x1b44): multiple definition of `gpio_sdhc_active'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x1688): first defined here
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_usbh2_inactive':
    mx31lite_gpio.c:(.text+0x1ca4): multiple definition of `gpio_usbh2_inactive'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x1820): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `gpio_usbh2_inactive' changed from 360 in arch/arm/mach-mx3/mx31ads_gpio.o to 580 in arch/arm/mach-mx3/mx31lite_gpio.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `sdhc_get_card_det_status':
    mx31lite_gpio.c:(.text+0x24a4): multiple definition of `sdhc_get_card_det_status'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x24c0): first defined here
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_ata_inactive':
    mx31lite_gpio.c:(.text+0x16dc): multiple definition of `gpio_ata_inactive'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x1314): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `gpio_ata_inactive' changed from 528 in arch/arm/mach-mx3/mx31ads_gpio.o to 772 in arch/arm/mach-mx3/mx31lite_gpio.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_owire_inactive':
    mx31lite_gpio.c:(.text+0x11d0): multiple definition of `gpio_owire_inactive'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0xf14): first defined here
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_usbh1_active':
    mx31lite_gpio.c:(.text+0x15a4): multiple definition of `gpio_usbh1_active'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x1db8): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `gpio_usbh1_active' changed from 360 in arch/arm/mach-mx3/mx31ads_gpio.o to 312 in arch/arm/mach-mx3/mx31lite_gpio.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_uart_active':
    mx31lite_gpio.c:(.text+0xd88): multiple definition of `gpio_uart_active'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0xbd8): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `gpio_uart_active' changed from 688 in arch/arm/mach-mx3/mx31ads_gpio.o to 568 in arch/arm/mach-mx3/mx31lite_gpio.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_usbh2_active':
    mx31lite_gpio.c:(.text+0x1f20): multiple definition of `gpio_usbh2_active'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x1ad8): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `gpio_usbh2_active' changed from 736 in arch/arm/mach-mx3/mx31ads_gpio.o to 524 in arch/arm/mach-mx3/mx31lite_gpio.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_lcd_active':
    mx31lite_gpio.c:(.text+0x6dc): multiple definition of `gpio_lcd_active'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x4e0): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `gpio_lcd_active' changed from 548 in arch/arm/mach-mx3/mx31ads_gpio.o to 536 in arch/arm/mach-mx3/mx31lite_gpio.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `extuart_intr_cleanup':
    mx31lite_gpio.c:(.text+0xbc): multiple definition of `extuart_intr_cleanup'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0xc0): first defined here
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_owire_active':
    mx31lite_gpio.c:(.text+0x1ee8): multiple definition of `gpio_owire_active'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x17e8): first defined here
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_i2c_active':
    mx31lite_gpio.c:(.text+0xa44): multiple definition of `gpio_i2c_active'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x7f4): first defined here
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_spi_inactive':
    mx31lite_gpio.c:(.text+0x38): multiple definition of `gpio_spi_inactive'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x0): first defined here
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_keypad_active':
    mx31lite_gpio.c:(.text+0xc38): multiple definition of `gpio_keypad_active'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0xa88): first defined here
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_sdhc_inactive':
    mx31lite_gpio.c:(.text+0x19e0): multiple definition of `gpio_sdhc_inactive'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x1524): first defined here
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_usbh1_inactive':
    mx31lite_gpio.c:(.text+0xd0): multiple definition of `gpio_usbh1_inactive'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0xd4): first defined here
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_sensor_active':
    mx31lite_gpio.c:(.text+0x68): multiple definition of `gpio_sensor_active'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x37c): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `gpio_sensor_active' changed from 356 in arch/arm/mach-mx3/mx31ads_gpio.o to 16 in arch/arm/mach-mx3/mx31lite_gpio.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_spi_active':
    mx31lite_gpio.c:(.text+0x254c): multiple definition of `gpio_spi_active'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x898): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `gpio_spi_active' changed from 320 in arch/arm/mach-mx3/mx31ads_gpio.o to 340 in arch/arm/mach-mx3/mx31lite_gpio.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `config_uartdma_event':
    mx31lite_gpio.c:(.text+0x2460): multiple definition of `config_uartdma_event'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x228c): first defined here
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `sdhc_init_card_det':
    mx31lite_gpio.c:(.text+0x1188): multiple definition of `sdhc_init_card_det'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0xecc): first defined here
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `extuart_intr_clear':
    mx31lite_gpio.c:(.text+0xac): multiple definition of `extuart_intr_clear'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0xb0): first defined here
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_usbotg_fs_inactive':
    mx31lite_gpio.c:(.text+0x280): multiple definition of `gpio_usbotg_fs_inactive'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0xf4): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `gpio_usbotg_fs_inactive' changed from 16 in arch/arm/mach-mx3/mx31ads_gpio.o to 276 in arch/arm/mach-mx3/mx31lite_gpio.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_pcmcia_inactive':
    mx31lite_gpio.c:(.text+0xe0): multiple definition of `gpio_pcmcia_inactive'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x104): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `gpio_pcmcia_inactive' changed from 44 in arch/arm/mach-mx3/mx31ads_gpio.o to 416 in arch/arm/mach-mx3/mx31lite_gpio.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_pcmcia_active':
    mx31lite_gpio.c:(.text+0xfe8): multiple definition of `gpio_pcmcia_active'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0xf38): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `gpio_pcmcia_active' changed from 456 in arch/arm/mach-mx3/mx31ads_gpio.o to 416 in arch/arm/mach-mx3/mx31lite_gpio.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_usbotg_hs_inactive':
    mx31lite_gpio.c:(.text+0x11f4): multiple definition of `gpio_usbotg_hs_inactive'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0xe4): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `gpio_usbotg_hs_inactive' changed from 16 in arch/arm/mach-mx3/mx31ads_gpio.o to 432 in arch/arm/mach-mx3/mx31lite_gpio.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_uart_inactive':
    mx31lite_gpio.c:(.text+0x26a0): multiple definition of `gpio_uart_inactive'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x2530): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `gpio_uart_inactive' changed from 528 in arch/arm/mach-mx3/mx31ads_gpio.o to 472 in arch/arm/mach-mx3/mx31lite_gpio.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `slcd_gpio_config':
    mx31lite_gpio.c:(.text+0x514): multiple definition of `slcd_gpio_config'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x22d0): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `slcd_gpio_config' changed from 496 in arch/arm/mach-mx3/mx31ads_gpio.o to 456 in arch/arm/mach-mx3/mx31lite_gpio.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_sensor_select':
    mx31lite_gpio.c:(.text+0x58): multiple definition of `gpio_sensor_select'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x2c): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `gpio_sensor_select' changed from 68 in arch/arm/mach-mx3/mx31ads_gpio.o to 16 in arch/arm/mach-mx3/mx31lite_gpio.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_ata_active':
    mx31lite_gpio.c:(.text+0x212c): multiple definition of `gpio_ata_active'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x1f20): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `gpio_ata_active' changed from 876 in arch/arm/mach-mx3/mx31ads_gpio.o to 820 in arch/arm/mach-mx3/mx31lite_gpio.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_usbotg_hs_active':
    mx31lite_gpio.c:(.text+0x13a4): multiple definition of `gpio_usbotg_hs_active'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x1100): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `gpio_usbotg_hs_active' changed from 532 in arch/arm/mach-mx3/mx31ads_gpio.o to 512 in arch/arm/mach-mx3/mx31lite_gpio.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_activate_audio_ports':
    mx31lite_gpio.c:(.text+0x8f4): multiple definition of `gpio_activate_audio_ports'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x704): first defined here
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_usbotg_fs_active':
    mx31lite_gpio.c:(.text+0x394): multiple definition of `gpio_usbotg_fs_active'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x1e4): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `gpio_usbotg_fs_active' changed from 408 in arch/arm/mach-mx3/mx31ads_gpio.o to 384 in arch/arm/mach-mx3/mx31lite_gpio.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_i2c_inactive':
    mx31lite_gpio.c:(.text+0x9a4): multiple definition of `gpio_i2c_inactive'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x7b4): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `gpio_i2c_inactive' changed from 64 in arch/arm/mach-mx3/mx31ads_gpio.o to 160 in arch/arm/mach-mx3/mx31lite_gpio.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_sensor_inactive':
    mx31lite_gpio.c:(.text+0x78): multiple definition of `gpio_sensor_inactive'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x1988): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `gpio_sensor_inactive' changed from 336 in arch/arm/mach-mx3/mx31ads_gpio.o to 16 in arch/arm/mach-mx3/mx31lite_gpio.o
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_pmic_active':
    mx31lite_gpio.c:(.text+0x24dc): multiple definition of `gpio_pmic_active'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x24f8): first defined here
    arch/arm/mach-mx3/mx31lite_gpio.o: In function `gpio_keypad_inactive':
    mx31lite_gpio.c:(.text+0xae8): multiple definition of `gpio_keypad_inactive'
    arch/arm/mach-mx3/mx31ads_gpio.o:mx31ads_gpio.c:(.text+0x9d8): first defined here
    arm-none-linux-gnueabi-ld: Warning: size of symbol `gpio_keypad_inactive' changed from 176 in arch/arm/mach-mx3/mx31ads_gpio.o to 336 in arch/arm/mach-mx3/mx31lite_gpio.o
    make[1]: *** [arch/arm/mach-mx3/built-in.o] Error 1
    make: *** [arch/arm/mach-mx3] Error 2
    error: Bad exit status from /usr/local/ltib/ltib-imx31ads-20071008/tmp/rpm-tmp.10740 (%build)


    RPM build errors:
    Bad exit status from /usr/local/ltib/ltib-imx31ads-20071008/tmp/rpm-tmp.10740 (%build)
    Build time for kernel-2.6.22-mx: 469 seconds

    Failed building kernel-2.6.22-mx



    Can anyone help me get past this point.
    Thanks
    You are not authorized to post a reply.