This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: ixp42x NPE networking build issue.


On Wed, 28 Dec 2005, Andrew Lunn wrote:

Yes, I think the intention of the error above is that ecosadmin "detects"
error in pkgadd.db and exists making tar also exists. Anyway, the file is
OK, I've decomplressed it and did
cat pkgadd.db >> <path>/ecos.db

I've also copied Jerzy's if_npe.c and now I'm fighting with various
compilation issues. Generaly Intel code's complaining about RebBoot not
enabled. Is RedBoot required for this to work? i.e. do I need to build my
NPE-enabled eCos app including RedBoot just to be able to build it?

Now, you do not want RedBoot.

I also though that, but unfortunatelly whole code looks like expecting RedBoot... Now I'm fighting with this (RedBoot still not enabled in config), which seems to be MAC address "detection":


if_npe.c file from Jerzy:

    806     // Set MAC address
    807 #if defined(CYGSEM_NPE_REDBOOT_HOLDS_ESA)
    808     {
    809         char *cfgname = NULL;
    810 #if defined(CYGSEM_INTEL_NPE_USE_ETH0)
    811         if (p_npe == &npe_eth0_priv_data)
    812             cfgname = "npe_eth0_esa";
    813 #endif
    814 #if defined(CYGSEM_INTEL_NPE_USE_ETH1)
    815         if (p_npe == &npe_eth1_priv_data)
    816             cfgname = "npe_eth1_esa";
    817 #endif
    818
    819 #elif defined(CYGHAL_GET_NPE_ESA)
    820
    821         mac_ok = CYGACC_CALL_IF_FLASH_CFG_OP(CYGNUM_CALL_IF_FLASH_CFG_GET, cfgname,
    822                                              p_npe->mac_address, CONFIG_ESA);
    823     }


1. cfgname is used here, but it is not defined. It is defined in above #ifdef statement.


2. CONFIG_ESA is not defined. It seems CONFIG_ESA is defined to 6 when RedBoot is enabled

    824 #else
    825 #error No mechanism to get MAC address
    826 #endif
    827
    828     if (!mac_ok) {
    829 #ifdef DEBUG
    830                 diag_printf("Error getting MAC address.\n");
    831 #endif
    832                 return 0;
    833     }


here we test !mac_ok, but strangely when CYGSEM_NPE_REDBOOT_HOLDS_ESA is defined, then mac_ok is not set to true.


So now, I'm searching where is all these defines provided to find out more info about this issue.

Thanks,
Karel
--
Karel Gardas                  kgardas@objectsecurity.com
ObjectSecurity Ltd.           http://www.objectsecurity.com

--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]