Part Number: AM3359
Other Parts Discussed in Thread: SYSBIOS
Tool/software: TI-RTOS
Hello David,
This is a new post but it concerns my previous post RTOS/AM3359- EtherCAT issue : I thought it was resolved but there's a new issue.
I've a little big problem while updating the try PRU-ICSS-ETHERCAT-SLAVE 01_00_05_00 !!!
Before doing that I had also updated to pdk pdk_am335x_1_0_9 and I have rebuilded of the libraries for all components.
Then I've generated both project from PRU: ethercat_slave_full_AM335x_arm (patched with Beckoff stack 5.12) and ethercat_slave_demo_AM335x_arm.
I thied to compile these 2 projects and: IMPOSSIBLE !!!
I have the same error while compiling: a problem of undefined type in osal library (in my previous post, I had included a picture of the log but I list it, sorry...)
I tried to investigate and find the error.
In the file am335x_app_pa8fg.c found in the folder AM335x_release\ConfigPkg\cfg I can find the indirection :
/* Module__startupDoneFxn__C */
__FAR__ const CT__ti_osal_Settings_Module__startupDoneFxn ti_osal_Settings_Module__startupDoneFxn__C = ((CT__ti_osal_Settings_Module__startupDoneFxn)0);
But, if I search for the type CT__ti_osal_Settings_Module__startupDoneFxn There's no definition for this type.
For example, in the previous command:
/* Module__loggerFxn8__C */
__FAR__ const CT__ti_osal_Settings_Module__loggerFxn8 ti_osal_Settings_Module__loggerFxn8__C = ((CT__ti_osal_Settings_Module__loggerFxn8)0);
If I search for the type CT__ti_osal_Settings_Module__loggerFxn8 I can find its definition il the file C:\ti\pdk_am335x_1_0_9\packages\ti\osal\Settings.h:
/* Module__loggerFxn8 */
typedef xdc_runtime_Types_LoggerFxn8 CT__ti_osal_Settings_Module__loggerFxn8;
__extern __FAR__ const CT__ti_osal_Settings_Module__loggerFxn8 ti_osal_Settings_Module__loggerFxn8__C;
#ifdef ti_osal_Settings_Module__loggerFxn8__CR
#define ti_osal_Settings_Module__loggerFxn8__C (*((CT__ti_osal_Settings_Module__loggerFxn8*)(xdcRomConstPtr + ti_osal_Settings_Module__loggerFxn8__C_offset)))
#else
#define ti_osal_Settings_Module__loggerFxn8 (ti_osal_Settings_Module__loggerFxn8__C)
#end
And tis is the same for all types defined !!!!
There's only a mistake on Module__startupDoneFxn__C.
Of course, I tried to put a same definition in the file Settings.h:
/* Module__startupDoneFxn__C */
typedef xdc_runtime_Types_startupDoneFxn CT__ti_osal_Settings_Module__startupDoneFxn;
__extern __FAR__ const CT__ti_osal_Settings_Module__startupDoneFxn ti_osal_Settings_Module__startupDoneFxn__C;
#ifdef ti_osal_Settings_Module__startupDoneFxn__CR
#define ti_osal_Settings_Module__startupDoneFxn__C (*((CT__ti_osal_Settings_Module__startupDoneFxn*)(xdcRomConstPtr + ti_osal_Settings_Module__startupDoneFxn__C_offset)))
#else
#define ti_osal_Settings_Module__startupDoneFxn (ti_osal_Settings_Module__startupDoneFxn_C)
#endif
But of course it doesn't work and I have an error while compiling the osal library:
In file included from /ti/PDK_AM~2/packages/ti/binary/pruss_app_sorte_slave/obj/icev2AM335x/a8host/release/pruss_app_sorte_slave_configuro/package/cfg/sorte_icev2am335x_app_pa8fg.c:43:0:
/ti/PDK_AM~2/packages/ti/osal/Settings.h:191:9: error: unknown type name 'xdc_runtime_Types_startupDoneFxn'
typedef xdc_runtime_Types_startupDoneFxn CT__ti_osal_Settings_Module__startupDoneFxn;
Did you ever make the compilation for these projects ?
Did it succeeded ?
Can you tell me why it doen't work and help me to fix the problem ?
Thanks a lot for your help.
Laurence