Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
15 years ago

Error compiling BSP for Igor Opencores Macq

I'm trying to get a Cyclone II FPGA connected to a National Semiconductor DP83848 Evaluation kit to work. Struggled with it a bit and so far no luck.

I'm trying to get the "Simple Socket Server" example to work because the threads at http://www.alteraforum.com/forum/showthread.php?t=21005&referrerid=2226 and http://www.alteraforum.com/forum/showthread.php?t=3665&page=3 recommend that as a starting point.

But I cannot get the BSP to compile. I'm using version 9.1 of the tools because that is what the core was designed for. I get the error:


c:/Users/Public/Documents/LTM/LTM-svn/FPGA_Projects/NIOS_Ethernet/software/test_cpu_91_bsp/drivers/src/eth_ocm_phy.c
c:/Users/Public/Documents/LTM/LTM-svn/FPGA_Projects/NIOS_Ethernet/software/test_cpu_91_bsp/drivers/src/eth_ocm_phy.c: In function `eth_ocm_phy_init':
c:/Users/Public/Documents/LTM/LTM-svn/FPGA_Projects/NIOS_Ethernet/software/test_cpu_91_bsp/drivers/src/eth_ocm_phy.c:160: error: structure has no member named `phyadd'

So I found the definition of the dev structure in eth_ocm.h:

typedef struct{
    alt_u32         base;
    alt_u8          irq;
    char            name;
} eth_ocm_dev;

and it appears to me that the error is correct.

Any ideas what I am doing wrong? Not sure it if is related but here is a snippet from the output of the build command:

Compiling eth_ocm_phy.c...
nios2-elf-gcc -xc -MP -MMD -c  -I. -I./drivers/inc -I./HAL/inc -DSYSTEM_BUS_WIDTH=32 -D__hal__ -pipe -DALT_NO_INSTRUCTION_EMULATION -DALT_SINGLE_THREADED -DALTERA_TRIPLE_SPEED_MAC -DETH_OCM_PHY_MAX_PROFILES=3 -DETH_OCM_PHY_SUPPORT_DP83848C -DETH_OCM_PHY_SUPPORT_MVL88E1111    -O0 -g -Wall  -mno-hw-div -mhw-mul -mno-hw-mulx   -o obj/drivers/src/eth_ocm_phy.o 

To me it looks wrong to have -DALTERA_TRIPLE_SPEED_MAC and -DETH_OCM_PHY_SUPPORT_MVL88E111 but I did not define those. I've looked but cannot find where to turn those off.

Edit: I figured out where to turn those off but it does not seem to make a difference on my error.

edit 2: Should I be defining ALT_INICHE so that it triggers the inclusion of ins_eth_ocm.h?

Any help appreciated,

David

5 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Hello,

    ALT_INICHE should be defined automatically when you set "Add this software component" which can be found in the "System Library Properties" under "Software Components".
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    I'm facing the same problem and can't get through (Quartus 10.1), please post if you find a workaround for this, it would be very appreciated.

    JC
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Hi,

    the error-message you get is because the header file "ins_eth_ocm.h" was not imported. In this file there is the complete struct of "eth_ocm_dev".

    But this will only be imported when ALT_INICHE is defined.

    As I wrote before you have to make sure that the box "Add this Software Component" is checked. This defines ALT_INICHE in the "Simple Socket Server" or "Webserver" example you use.

    Another reason could be that you forgot to import the "ins_eth_ocm.h" in your development environment.

    Urmel
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    Hello,

    ALT_INICHE should be defined automatically when you set "Add this software component" which can be found in the "System Library Properties" under "Software Components".

    --- Quote End ---

    I really appreciate your help but I can't seem to find the option that you are referring to. I've searched the BSP editor and I have selected properties for the BSP and for the project. I can see where to manually define things but I cannot find the option for "system library properties." I've searched the help files for "software component" and "system library" but I just am not seeing it. Am I missing something obvious?

    Thanks,

    David
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Under Nios-IDE you have to right-click on your project and select "System Library Properties". Then you see a window where you can change the RTOS the stdout and so on. Almost at the bottom of the window there is button called "Software Components". After you clicked it you should see the Nichestack options.