NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.
SYSBIOS ISDK Steps for creating stand alone switch example
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 |
Introduction[edit]
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.
Steps[edit]
Industrial SDK[edit]
- 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";
PRU ICSS Ethernet/IP Package[edit]
- 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";