Problem trying to include ethernet platform on LwIP/Free_RTOS build on CYW943907 hw platform

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Gare_4782551
Level 1
Level 1
First reply posted First question asked Welcome!

I wrote an ethernetif.c driver that uses functions in platform_ethernet.c, but not sure how to get the platform code to build in this configuration.  I get errors (see below) due to the platform code not being built.   For NetX_Duo/ThreadX, the platform code does get built.   Not sure what the 'correct' way to get this included in the build LwIP/FreeRTOS is (i.e. do I need to modify a makefile or is there a define that is needed for this config).

 

------------------------------------------

Making wwd.ping_wwd-CYW943907AEVAL1F-FreeRTOS-LwIP.elf
build/wwd.ping_wwd-CYW943907AEVAL1F-FreeRTOS-LwIP/libraries/LwIP.a(ethernetif.o): In function `low_level_output':
C:\Users\gr\Documents\WICED-Studio-6.6\43xxx_Wi-Fi/WICED/network/LwIP/ver2.0.3/src/netif/ethernetif.c:180: undefined reference to `platform_ethernet_send_data'
build/wwd.ping_wwd-CYW943907AEVAL1F-FreeRTOS-LwIP/libraries/LwIP.a(ethernetif.o): In function `low_level_init':
C:\Users\gr\Documents\WICED-Studio-6.6\43xxx_Wi-Fi/WICED/network/LwIP/ver2.0.3/src/netif/ethernetif.c:95: undefined reference to `platform_ethernet_init'
C:\Users\gr\Documents\WICED-Studio-6.6\43xxx_Wi-Fi/WICED/network/LwIP/ver2.0.3/src/netif/ethernetif.c:101: undefined reference to `platform_ethernet_get_config'
collect2.exe: error: ld returned 1 exit status
make.exe[1]: *** [build/wwd.ping_wwd-CYW943907AEVAL1F-FreeRTOS-LwIP/binary/wwd.ping_wwd-CYW943907AEVAL1F-FreeRTOS-LwIP.elf] Error 1
tools/makefiles/wiced_elf.mk:315: recipe for target 'build/wwd.ping_wwd-CYW943907AEVAL1F-FreeRTOS-LwIP/binary/wwd.ping_wwd-CYW943907AEVAL1F-FreeRTOS-LwIP.elf' failed
make: *** [main_app] Error 2
Makefile:351: recipe for target 'main_app' failed

0 Likes
2 Replies
Gare_4782551
Level 1
Level 1
First reply posted First question asked Welcome!

Found out it's due to this (in peripherals.mk):

 

ifeq (,$(APP_WWD_ONLY)$(NS_WWD_ONLY)$(RTOS_WWD_ONLY)$(PLATFORM_NO_GMAC))
$(NAME)_COMPONENTS += MCU/BCM4390x/peripherals/ethernet
else
GLOBAL_DEFINES += PLATFORM_NO_GMAC=1
endif

 

So building WWD only with Ethernet is not supported, is there a way around this?

 

0 Likes
Aditi_B
Moderator
Moderator
Moderator
500 replies posted 5 questions asked 250 replies posted

Hi,

Is the build issue gone or do you still face some build issues? What's the make target? From the description, it seems you're using the ping example of the wwd folder, right?

Thanks

Aditi

0 Likes