Skip to content

Commit 7ea94ee

Browse files
committed
💚 fix latent virtualization issues
1 parent 6fb128e commit 7ea94ee

19 files changed

+306
-299
lines changed

Include/Platform/A6M_RVM/rmp_platform_a6m_chip_rvm.h

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,6 @@ Licence : The Unlicense; see LICENSE for details.
66
Description: The configuration file for any virtualized ARMv6-M chip.
77
******************************************************************************/
88

9-
/* Include *******************************************************************/
10-
#include "rvm_guest.h"
11-
/* End Include ***************************************************************/
12-
139
/* Define ********************************************************************/
1410
/* Debugging */
1511
/* Assertion */

Include/Platform/A6M_RVM/rmp_platform_a6m_rvm.h

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -78,9 +78,6 @@ typedef rmp_s32_t rmp_ret_t;
7878
#define RMP_MSB_GET(VAL) RMP_MSB_Generic(VAL)
7979
#define RMP_LSB_GET(VAL) RMP_LSB_Generic(VAL)
8080

81-
/* The virtual machine configs are here */
82-
#include "rvm_guest_conf.h"
83-
8481
/* The CPU and application specific macros are here */
8582
#include "rmp_platform_a6m_rvm_conf.h"
8683

@@ -168,6 +165,10 @@ RMP_EXTERN const rvm_ptr_t RVM_Desc[];
168165

169166
/* Private Function **********************************************************/
170167
/*****************************************************************************/
168+
/* External print in process main file */
169+
#if(RVM_DBGLOG_ENABLE!=0U)
170+
RVM_EXTERN void RVM_Putchar(char Char);
171+
#endif
171172
/* Interrupts */
172173
static void RMP_PendSV_Handler(void);
173174
static void RMP_SysTick_Handler(void);
@@ -195,8 +196,8 @@ __RMP_EXTERN__ void RMP_Int_Disable(void);
195196
RMP_EXTERN void RVM_Virt_Int_Mask(void);
196197
RMP_EXTERN void RVM_Virt_Int_Unmask(void);
197198

198-
RMP_EXTERN void _RMP_Start(rvm_ptr_t Entry,
199-
rvm_ptr_t Stack);
199+
RMP_EXTERN void _RMP_Start(rmp_ptr_t Entry,
200+
rmp_ptr_t Stack);
200201
RMP_EXTERN void _RMP_A6M_RVM_Yield(void);
201202
RMP_EXTERN void RVM_Virt_Yield(void);
202203

Include/Platform/A7M_RVM/rmp_platform_a7m_chip_rvm.h

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,6 @@ Licence : The Unlicense; see LICENSE for details.
66
Description: The configuration file for any virtualized ARMv7-M chip.
77
******************************************************************************/
88

9-
/* Include *******************************************************************/
10-
#include "rvm_guest.h"
11-
/* End Include ***************************************************************/
12-
139
/* Define ********************************************************************/
1410
/* Debugging */
1511
/* Assertion */

Include/Platform/A7M_RVM/rmp_platform_a7m_rvm.h

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -81,9 +81,6 @@ typedef rmp_s32_t rmp_ret_t;
8181
/* FPU registers */
8282
#define RMP_FPU ((volatile struct RVM_A7M_Cop_Struct*)(RVM_REG->Cop))
8383

84-
/* The virtual machine configs are here */
85-
#include "rvm_guest_conf.h"
86-
8784
/* The CPU and application specific macros are here */
8885
#include "rmp_platform_a7m_rvm_conf.h"
8986

@@ -171,6 +168,10 @@ RMP_EXTERN const rvm_ptr_t RVM_Desc[];
171168

172169
/* Private Function **********************************************************/
173170
/*****************************************************************************/
171+
/* External print in process main file */
172+
#if(RVM_DBGLOG_ENABLE!=0U)
173+
RVM_EXTERN void RVM_Putchar(char Char);
174+
#endif
174175
/* Interrupts */
175176
static void RMP_PendSV_Handler(void);
176177
static void RMP_SysTick_Handler(void);
@@ -198,18 +199,18 @@ __RMP_EXTERN__ void RMP_Int_Disable(void);
198199
RMP_EXTERN void RVM_Virt_Int_Mask(void);
199200
RMP_EXTERN void RVM_Virt_Int_Unmask(void);
200201

201-
RMP_EXTERN rvm_ptr_t _RMP_A7M_RVM_MSB_Get(rvm_ptr_t Value);
202-
RMP_EXTERN rvm_ptr_t _RMP_A7M_RVM_LSB_Get(rvm_ptr_t Value);
203-
RMP_EXTERN void _RMP_Start(rvm_ptr_t Entry,
204-
rvm_ptr_t Stack);
202+
RMP_EXTERN rmp_ptr_t _RMP_A7M_RVM_MSB_Get(rmp_ptr_t Value);
203+
RMP_EXTERN rmp_ptr_t _RMP_A7M_RVM_LSB_Get(rmp_ptr_t Value);
204+
RMP_EXTERN void _RMP_Start(rmp_ptr_t Entry,
205+
rmp_ptr_t Stack);
205206
RMP_EXTERN void _RMP_A7M_RVM_Yield(void);
206207
RMP_EXTERN void RVM_Virt_Yield(void);
207208

208209
/* Initialization */
209210
__RMP_EXTERN__ rmp_ptr_t _RMP_Stack_Init(rmp_ptr_t Stack,
210-
rmp_ptr_t Size,
211-
rmp_ptr_t Entry,
212-
rmp_ptr_t Param);
211+
rmp_ptr_t Size,
212+
rmp_ptr_t Entry,
213+
rmp_ptr_t Param);
213214
__RMP_EXTERN__ void _RMP_Lowlvl_Init(void);
214215
__RMP_EXTERN__ void RMP_Putchar(char Char);
215216
__RMP_EXTERN__ void _RMP_Plat_Hook(void);

Include/Platform/RV32P_RVM/rmp_platform_rv32p_chip_rvm.h

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,6 @@ Licence : The Unlicense; see LICENSE for details.
66
Description: The configuration file for any virtualized RISC-V 32-bit chip.
77
******************************************************************************/
88

9-
/* Include *******************************************************************/
10-
#include "rvm_guest.h"
11-
/* End Include ***************************************************************/
12-
139
/* Define ********************************************************************/
1410
/* Debugging */
1511
/* Assertion */

Include/Platform/RV32P_RVM/rmp_platform_rv32p_rvm.h

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -79,11 +79,7 @@ typedef rmp_s32_t rmp_ret_t;
7979
#define RMP_LSB_GET(VAL) RMP_LSB_Generic(VAL)
8080

8181
/* FPU registers */
82-
#define RMP_FPU_RVF ((volatile struct RVM_RV32P_RVF_Struct*)(RVM_REG->Cop))
83-
#define RMP_FPU_RVD ((volatile struct RVM_RV32P_RVD_Struct*)(RVM_REG->Cop))
84-
85-
/* The virtual machine configs are here */
86-
#include "rvm_guest_conf.h"
82+
#define RMP_FPU ((volatile struct RVM_RV32P_Cop_Struct*)(RVM_REG->Cop))
8783

8884
/* The CPU and application specific macros are here */
8985
#include "rmp_platform_rv32p_rvm_conf.h"
@@ -194,6 +190,10 @@ RMP_EXTERN const rvm_ptr_t RVM_Desc[];
194190

195191
/* Private Function **********************************************************/
196192
/*****************************************************************************/
193+
/* External print in process main file */
194+
#if(RVM_DBGLOG_ENABLE!=0U)
195+
RVM_EXTERN void RVM_Putchar(char Char);
196+
#endif
197197
/* Interrupts */
198198
static void RMP_Ctx_Handler(void);
199199
static void RMP_Tim_Handler(void);
@@ -209,7 +209,7 @@ static void RMP_Tim_Handler(void);
209209
#endif
210210

211211
/*****************************************************************************/
212-
RMP_EXTERN rmp_ptr_t _RVM_Global;
212+
RMP_EXTERN rmp_ptr_t __RVM_Global;
213213
/*****************************************************************************/
214214

215215
/* End Public Variable *******************************************************/
@@ -219,10 +219,13 @@ RMP_EXTERN rmp_ptr_t _RVM_Global;
219219
/* Interrupts */
220220
__RMP_EXTERN__ void RMP_Int_Enable(void);
221221
__RMP_EXTERN__ void RMP_Int_Disable(void);
222+
RMP_EXTERN void RVM_Virt_Int_Mask(void);
223+
RMP_EXTERN void RVM_Virt_Int_Unmask(void);
222224

223225
RMP_EXTERN void _RMP_Start(rmp_ptr_t Entry,
224226
rmp_ptr_t Stack);
225227
RMP_EXTERN void _RMP_RV32P_RVM_Yield(void);
228+
RMP_EXTERN void RVM_Virt_Yield(void);
226229

227230
/* Platform specific */
228231
RMP_EXTERN void _RMP_RV32P_RVM_Yield_NONE(void);

Include/Test/Chip/rmp_test_ch32v307vc_rvm.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,8 +74,8 @@ ISR RVM activation relay : 1981 / 2045 / 1979
7474
******************************************************************************/
7575

7676
/* Include *******************************************************************/
77+
#include "rvm.h"
7778
#include "rmp.h"
78-
#include "rvm_guest.h"
7979

8080
#define RVM_TEST_VIRTUAL_INC
8181
#include "rvm_test.h"

Include/Test/Chip/rmp_test_stm32f405rg_rvm.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,8 +114,8 @@ ISR RVM activation relay : 2348 / 3956 / 2284
114114
******************************************************************************/
115115

116116
/* Include *******************************************************************/
117+
#include "rvm.h"
117118
#include "rmp.h"
118-
#include "rvm_guest.h"
119119

120120
#define RVM_TEST_VIRTUAL_INC
121121
#include "rvm_test.h"

Include/Test/Chip/rmp_test_stm32f767ig_rvm.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,8 +114,8 @@ ISR RVM activation relay : 1525 / 1972 / 1480
114114
******************************************************************************/
115115

116116
/* Include *******************************************************************/
117+
#include "rvm.h"
117118
#include "rmp.h"
118-
#include "rvm_guest.h"
119119

120120
#define RVM_TEST_VIRTUAL_INC
121121
#include "rvm_test.h"

Include/Test/Chip/rmp_test_stm32l071cb_rvm.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,8 +70,8 @@ ISR RVM activation relay : 2636 / 4953 / 2541
7070
******************************************************************************/
7171

7272
/* Include *******************************************************************/
73+
#include "rvm.h"
7374
#include "rmp.h"
74-
#include "rvm_guest.h"
7575

7676
#define RVM_TEST_VIRTUAL_INC
7777
#include "rvm_test.h"

0 commit comments

Comments
 (0)