diff --git a/Source/portable/Renesas/RX200/port.c b/Source/portable/Renesas/RX200/port.c index d49a61a47..bfb6cc3f6 100644 --- a/Source/portable/Renesas/RX200/port.c +++ b/Source/portable/Renesas/RX200/port.c @@ -73,6 +73,14 @@ PSW is set with U and I set, and PM and IPL clear. */ /*-----------------------------------------------------------*/ +/* The following lines are to ensure vSoftwareInterruptEntry can be referenced, + and therefore installed in the vector table, when the FreeRTOS code is built +as a library. */ +extern portBASE_TYPE vSoftwareInterruptEntry; +const portBASE_TYPE * p_vSoftwareInterruptEntry = &vSoftwareInterruptEntry; + +/*-----------------------------------------------------------*/ + /* * Function to start the first task executing - written in asm code as direct * access to registers is required. diff --git a/Source/portable/Renesas/RX200/port_asm.src b/Source/portable/Renesas/RX200/port_asm.src index 3214abdf6..e8c566406 100644 --- a/Source/portable/Renesas/RX200/port_asm.src +++ b/Source/portable/Renesas/RX200/port_asm.src @@ -51,6 +51,7 @@ ; licensing and training services. ;*/ .GLB _vSoftwareInterruptISR + .GLB _vSoftwareInterruptEntry .SECTION P,CODE diff --git a/Source/portable/Renesas/RX600/port.c b/Source/portable/Renesas/RX600/port.c index c84776d6b..b48617517 100644 --- a/Source/portable/Renesas/RX600/port.c +++ b/Source/portable/Renesas/RX600/port.c @@ -74,6 +74,14 @@ PSW is set with U and I set, and PM and IPL clear. */ /*-----------------------------------------------------------*/ +/* The following lines are to ensure vSoftwareInterruptEntry can be referenced, + and therefore installed in the vector table, when the FreeRTOS code is built +as a library. */ +extern portBASE_TYPE vSoftwareInterruptEntry; +const portBASE_TYPE * p_vSoftwareInterruptEntry = &vSoftwareInterruptEntry; + +/*-----------------------------------------------------------*/ + /* * Function to start the first task executing - written in asm code as direct * access to registers is required. diff --git a/Source/portable/Renesas/RX600/port_asm.src b/Source/portable/Renesas/RX600/port_asm.src index 3214abdf6..e8c566406 100644 --- a/Source/portable/Renesas/RX600/port_asm.src +++ b/Source/portable/Renesas/RX600/port_asm.src @@ -51,6 +51,7 @@ ; licensing and training services. ;*/ .GLB _vSoftwareInterruptISR + .GLB _vSoftwareInterruptEntry .SECTION P,CODE