Other Parts Discussed in Thread: SYSCONFIG
Tool/software:
Hello.
I am developing using ind_comms_sdk_am243x_09_00_00_03.
Our board consists of the following PHYs.
- PRU_ICSSG0 <-> MII
- PRU_ICSSG1 <-> RGMII
I would like to run PRP/HSR on PRU_ICSSG0 and PRU_ICSSG1 at the same time.
So I added two instances (ICSSG0/ICSSG1) of HSR-PRP in sysconfig.
Then I implemented the application as hsr_prp_main() included in SDK examples.
On this assumption, please tell me if the following points are not problematic.
Download firmware
ind_comms_sdk_am243x_09_00_00_03/source/industrial_comms/hsr_prp/icss_fwhal/hsrPrp_red_config.c
It seems that the preprocessor determines which firmware to download depending on whether MII or RGMII is used.
Should I download different firmware if I use MII for PRU_ICSSG0 and RGMII for PRU_ICSSG1?
Task stack area
ind_comms_sdk_am243x_09_00_00_03/source/industrial_comms/hsr_prp/icss_fwhal/hsrPrp_red.c
the application calls RedProtocolStart() on PRU_ICSSG0 and PRU_ICSSG1, following hsr_prp_main().
(the parameters hsrPrpHandle* and PRUICSS_Handle prepare an instance for each execution.)
However, the tasks created in RedLifeCheckTaskCreate() uses the same stack area and it causes
kernel level error. Is it possible to run RedProtocolStart() multiple times?
Best Regards,
mshino.