4.3. Steps for creating Stand alone switch example in SYSBIOS Industrial SDK¶
Revision History
Revision | Date | Description |
1.0 | 29-Sep-2014 | Created initial version of the document |
1.1 | 24-Jan-2017 | Added PRU ICSS Ethernet/IP Package section |
1.2 | 16-Nov-2023 | Appaerance changes |
4.3.1. Introduction¶
The Stand alone switch application is not provided as a part of SYSBIOS ISDK. The Ethernet/IP application can be modified to use it as a switch application.This document describes the steps required to create Stand alone switch application from Ethernet/IP application. In this case of Switch example over ICSS, the Ethernet/IP firmware will act as switch firmware. The procedures apply to both ICSS and CPSW implementation.
4.3.2. Steps¶
4.3.2.1. Industrial SDK¶
- Remove all Ethernet/IP related source and header files from the
example
- All source and header files except main.c and appl_cnfg.h should be removed
- Exclude ethernatip_stack.lib from the Linker files search path
- Remove Ethernet/IP specific includes from main.c
- eip_main.h
- icss_dlr.h
- icss_eip_driver.h
- Remove Ethernet/IP related function declarations
- void LedFxn(UArg arg0, UArg arg1);
- extern void app_exit_handler(int var);
- Comment out or remove Ethernet/IP specific function calls
- eip_driver_init();
- EIPMain();
- eip_driver_start();
- Remove LED Task creation and Registering Application exit handler
- Remove Uart ISR registration from main()
- UartOpen(uartInstance, UartIsr) to UartOpen(uartInstance, NULL)
- Edit app.cfg to use XGCONF to configure NDK
- Commnet out Global.stackThreadUser = “&NDKACD_stackThread”;
4.3.2.2. PRU ICSS Ethernet/IP Package¶
- Remove all Ethernet/IP related source and header files from the
example
- All application source files except main.c should be removed
- Keep the board specific files and soc specific files
- Exclude ethernatip_stack.lib and ptp lib from the libraries linked
- Remove Ethernet/IP specific includes from main.c
- app_restart.h
- icss_ptp.h
- version.h
- eip_main.h
- icss_dlr.h
- Remove Ethernet/IP related function declarations and definitions
- EIPAPP_initICSSDlrHandle
- EIPAPP_initICSSPtpHandle
- EIPAPP_taskFxn
- Comment out or remove Ethernet/IP specific function calls
- System_atexit(EIPAPP_exitHandler)
- EIPAPP_saveIODelaySection()
- EIPAPP_initICSSPtpHandle(ptpHandle, emachandle)
- Remove EIP specific Task creation and semaphore creation
- EIPUTILS_ledFxn
- EIPAPP_uartTask
- EIPAPP_taskFxn
- appInitSem = Semaphore_create(0, &semParams1, NULL)
- Remove EIP handle, PTP handle, and DLR handle declarations and
initialization code
- ICSS_PtpHandle ptpHandle;
- EIP_Handle eipHandle;
- EIP_DLRHandle dlrHandle;
- Edit app.cfg to use XGCONF to configure NDK
- Comment out Global.stackThreadUser = “&NDKACD_stackThread”;