forked from epagris/FreeRTOS-Kernel
		
	Update Freedom Studio RISC-V demo for the latest GCC RISC-V port - not yet tested.
This commit is contained in:
		
							parent
							
								
									80f6f3e59b
								
							
						
					
					
						commit
						e5daf23d75
					
				@ -23,8 +23,8 @@
 | 
			
		||||
							<option id="ilg.gnumcueclipse.managedbuild.cross.riscv.option.optimization.level.383399415" name="Optimization Level" superClass="ilg.gnumcueclipse.managedbuild.cross.riscv.option.optimization.level" useByScannerDiscovery="true" value="ilg.gnumcueclipse.managedbuild.cross.riscv.option.optimization.level.none" valueType="enumerated"/>
 | 
			
		||||
							<option id="ilg.gnumcueclipse.managedbuild.cross.riscv.option.optimization.messagelength.178339006" name="Message length (-fmessage-length=0)" superClass="ilg.gnumcueclipse.managedbuild.cross.riscv.option.optimization.messagelength" useByScannerDiscovery="true" value="false" valueType="boolean"/>
 | 
			
		||||
							<option id="ilg.gnumcueclipse.managedbuild.cross.riscv.option.optimization.signedchar.119459497" name="'char' is signed (-fsigned-char)" superClass="ilg.gnumcueclipse.managedbuild.cross.riscv.option.optimization.signedchar" useByScannerDiscovery="true" value="false" valueType="boolean"/>
 | 
			
		||||
							<option id="ilg.gnumcueclipse.managedbuild.cross.riscv.option.optimization.functionsections.735578493" name="Function sections (-ffunction-sections)" superClass="ilg.gnumcueclipse.managedbuild.cross.riscv.option.optimization.functionsections" useByScannerDiscovery="true" value="false" valueType="boolean"/>
 | 
			
		||||
							<option id="ilg.gnumcueclipse.managedbuild.cross.riscv.option.optimization.datasections.663648478" name="Data sections (-fdata-sections)" superClass="ilg.gnumcueclipse.managedbuild.cross.riscv.option.optimization.datasections" useByScannerDiscovery="true" value="false" valueType="boolean"/>
 | 
			
		||||
							<option id="ilg.gnumcueclipse.managedbuild.cross.riscv.option.optimization.functionsections.735578493" name="Function sections (-ffunction-sections)" superClass="ilg.gnumcueclipse.managedbuild.cross.riscv.option.optimization.functionsections" useByScannerDiscovery="true" value="true" valueType="boolean"/>
 | 
			
		||||
							<option id="ilg.gnumcueclipse.managedbuild.cross.riscv.option.optimization.datasections.663648478" name="Data sections (-fdata-sections)" superClass="ilg.gnumcueclipse.managedbuild.cross.riscv.option.optimization.datasections" useByScannerDiscovery="true" value="true" valueType="boolean"/>
 | 
			
		||||
							<option id="ilg.gnumcueclipse.managedbuild.cross.riscv.option.debugging.level.33211902" name="Debug level" superClass="ilg.gnumcueclipse.managedbuild.cross.riscv.option.debugging.level" useByScannerDiscovery="true" value="ilg.gnumcueclipse.managedbuild.cross.riscv.option.debugging.level.max" valueType="enumerated"/>
 | 
			
		||||
							<option id="ilg.gnumcueclipse.managedbuild.cross.riscv.option.debugging.format.1212459035" name="Debug format" superClass="ilg.gnumcueclipse.managedbuild.cross.riscv.option.debugging.format" useByScannerDiscovery="true"/>
 | 
			
		||||
							<option id="ilg.gnumcueclipse.managedbuild.cross.riscv.option.toolchain.name.2118228106" superClass="ilg.gnumcueclipse.managedbuild.cross.riscv.option.toolchain.name" useByScannerDiscovery="false" value="RISC-V GCC/Newlib" valueType="string"/>
 | 
			
		||||
@ -50,11 +50,16 @@
 | 
			
		||||
								<option id="ilg.gnumcueclipse.managedbuild.cross.riscv.option.assembler.usepreprocessor.874608690" name="Use preprocessor" superClass="ilg.gnumcueclipse.managedbuild.cross.riscv.option.assembler.usepreprocessor" useByScannerDiscovery="false" value="true" valueType="boolean"/>
 | 
			
		||||
								<option id="ilg.gnumcueclipse.managedbuild.cross.riscv.option.assembler.include.paths.545620458" name="Include paths (-I)" superClass="ilg.gnumcueclipse.managedbuild.cross.riscv.option.assembler.include.paths" useByScannerDiscovery="true" valueType="includePath">
 | 
			
		||||
									<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/freedom-e-sdk/env}""/>
 | 
			
		||||
									<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/FreeRTOS_Source/portable/GCC/RISC-V-RV32/CLINT_no_extensions}""/>
 | 
			
		||||
									<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/freedom-e-sdk/include}""/>
 | 
			
		||||
									<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/freedom-e-sdk/env/freedom-e300-hifive1}""/>
 | 
			
		||||
									<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/freedom-e-sdk/drivers}""/>
 | 
			
		||||
								</option>
 | 
			
		||||
								<option id="ilg.gnumcueclipse.managedbuild.cross.riscv.option.assembler.other.855588508" name="Other assembler flags" superClass="ilg.gnumcueclipse.managedbuild.cross.riscv.option.assembler.other" useByScannerDiscovery="false" value="-c" valueType="string"/>
 | 
			
		||||
								<option id="ilg.gnumcueclipse.managedbuild.cross.riscv.option.assembler.flags.179185022" name="Assembler flags" superClass="ilg.gnumcueclipse.managedbuild.cross.riscv.option.assembler.flags" useByScannerDiscovery="false" valueType="stringList"/>
 | 
			
		||||
								<option id="ilg.gnumcueclipse.managedbuild.cross.riscv.option.assembler.defs.1636772541" name="Defined symbols (-D)" superClass="ilg.gnumcueclipse.managedbuild.cross.riscv.option.assembler.defs" useByScannerDiscovery="true" valueType="definedSymbols">
 | 
			
		||||
									<listOptionValue builtIn="false" value="portasmHANDLE_INTERRUPT=handle_trap"/>
 | 
			
		||||
								</option>
 | 
			
		||||
								<inputType id="ilg.gnumcueclipse.managedbuild.cross.riscv.tool.assembler.input.1208356864" superClass="ilg.gnumcueclipse.managedbuild.cross.riscv.tool.assembler.input"/>
 | 
			
		||||
							</tool>
 | 
			
		||||
							<tool id="ilg.gnumcueclipse.managedbuild.cross.riscv.tool.c.compiler.1632260763" name="GNU RISC-V Cross C Compiler" superClass="ilg.gnumcueclipse.managedbuild.cross.riscv.tool.c.compiler">
 | 
			
		||||
 | 
			
		||||
@ -5,7 +5,7 @@
 | 
			
		||||
			<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
 | 
			
		||||
			<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
 | 
			
		||||
			<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
 | 
			
		||||
			<provider class="org.eclipse.cdt.managedbuilder.language.settings.providers.GCCBuiltinSpecsDetector" console="false" env-hash="-1662098508467853022" id="ilg.gnumcueclipse.managedbuild.cross.riscv.GCCBuiltinSpecsDetector" keep-relative-paths="false" name="CDT RISC-V Cross GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} ${cross_toolchain_flags} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true">
 | 
			
		||||
			<provider class="org.eclipse.cdt.managedbuilder.language.settings.providers.GCCBuiltinSpecsDetector" console="false" env-hash="1445704774232250253" id="ilg.gnumcueclipse.managedbuild.cross.riscv.GCCBuiltinSpecsDetector" keep-relative-paths="false" name="CDT RISC-V Cross GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} ${cross_toolchain_flags} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true">
 | 
			
		||||
				<language-scope id="org.eclipse.cdt.core.gcc"/>
 | 
			
		||||
				<language-scope id="org.eclipse.cdt.core.g++"/>
 | 
			
		||||
			</provider>
 | 
			
		||||
@ -16,7 +16,7 @@
 | 
			
		||||
			<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
 | 
			
		||||
			<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
 | 
			
		||||
			<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
 | 
			
		||||
			<provider class="org.eclipse.cdt.managedbuilder.language.settings.providers.GCCBuiltinSpecsDetector" console="false" env-hash="-1671468065510502376" id="ilg.gnumcueclipse.managedbuild.cross.riscv.GCCBuiltinSpecsDetector" keep-relative-paths="false" name="CDT RISC-V Cross GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} ${cross_toolchain_flags} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true">
 | 
			
		||||
			<provider class="org.eclipse.cdt.managedbuilder.language.settings.providers.GCCBuiltinSpecsDetector" console="false" env-hash="1449619206437459651" id="ilg.gnumcueclipse.managedbuild.cross.riscv.GCCBuiltinSpecsDetector" keep-relative-paths="false" name="CDT RISC-V Cross GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} ${cross_toolchain_flags} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true">
 | 
			
		||||
				<language-scope id="org.eclipse.cdt.core.gcc"/>
 | 
			
		||||
				<language-scope id="org.eclipse.cdt.core.g++"/>
 | 
			
		||||
			</provider>
 | 
			
		||||
 | 
			
		||||
@ -91,8 +91,8 @@
 | 
			
		||||
#define configUSE_TICK_HOOK				1
 | 
			
		||||
#define configCPU_CLOCK_HZ				( 10000000 ) /*QEMU*/
 | 
			
		||||
#define configTICK_RATE_HZ				( ( TickType_t ) 1000 )
 | 
			
		||||
#define configMAX_PRIORITIES			( 5 )
 | 
			
		||||
#define configMINIMAL_STACK_SIZE		( ( unsigned short ) 85 )
 | 
			
		||||
#define configMAX_PRIORITIES			( 7 )
 | 
			
		||||
#define configMINIMAL_STACK_SIZE		( ( unsigned short ) 95 )
 | 
			
		||||
#define configTOTAL_HEAP_SIZE			( ( size_t ) 14300 )
 | 
			
		||||
#define configMAX_TASK_NAME_LEN			( 16 )
 | 
			
		||||
#define configUSE_TRACE_FACILITY		0
 | 
			
		||||
@ -114,7 +114,7 @@
 | 
			
		||||
/* Software timer definitions. */
 | 
			
		||||
#define configUSE_TIMERS				1
 | 
			
		||||
#define configTIMER_TASK_PRIORITY		( configMAX_PRIORITIES - 1 )
 | 
			
		||||
#define configTIMER_QUEUE_LENGTH		7
 | 
			
		||||
#define configTIMER_QUEUE_LENGTH		4
 | 
			
		||||
#define configTIMER_TASK_STACK_DEPTH	( 120 )
 | 
			
		||||
 | 
			
		||||
/* Task priorities.  Allow these to be overridden. */
 | 
			
		||||
@ -142,11 +142,12 @@ void vAssertCalled( void );
 | 
			
		||||
/* Overwrite some of the stack sizes allocated to various test and demo tasks.
 | 
			
		||||
Like all task stack sizes, the value is the number of words, not bytes. */
 | 
			
		||||
#define configTIMER_TEST_TASK_STACK_SIZE 150
 | 
			
		||||
#define configNOTIFIED_TEST_TASK_STACK_SIZE 120
 | 
			
		||||
#define configNOTIFIED_TEST_TASK_STACK_SIZE 130
 | 
			
		||||
#define configEVENT_GROUP_SET_BIT_TEST_TASK_STACK_SIZE 110
 | 
			
		||||
#define configEVENT_GROUP_RENDEZVOUS_TASK_STACK_SIZE 100
 | 
			
		||||
#define configRECURSIVE_MUTEX_TASK_STACK_SIZE 100
 | 
			
		||||
#define configRECURSIVE_MUTEX_TASK_STACK_SIZE 110
 | 
			
		||||
#define configBLOCK_TIME_TEST_TASK_STACK_SIZE 110
 | 
			
		||||
 | 
			
		||||
#define configUSE_PORT_OPTIMISED_TASK_SELECTION 0
 | 
			
		||||
#define configUSE_PORT_OPTIMISED_TASK_SELECTION 1
 | 
			
		||||
 | 
			
		||||
#endif /* FREERTOS_CONFIG_H */
 | 
			
		||||
 | 
			
		||||
@ -39,6 +39,6 @@
 | 
			
		||||
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
 | 
			
		||||
<listEntry value="4"/>
 | 
			
		||||
</listAttribute>
 | 
			
		||||
<stringAttribute key="org.eclipse.dsf.launch.MEMORY_BLOCKS" value="<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<memoryBlockExpressionList context="reserved-for-future-use"/>
"/>
 | 
			
		||||
<stringAttribute key="org.eclipse.dsf.launch.MEMORY_BLOCKS" value="<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<memoryBlockExpressionList context="reserved-for-future-use">
<gdbmemoryBlockExpression address="2147486760" label="0x80000c28"/>
</memoryBlockExpressionList>
"/>
 | 
			
		||||
<stringAttribute key="process_factory_id" value="org.eclipse.cdt.dsf.gdb.GdbProcessFactory"/>
 | 
			
		||||
</launchConfiguration>
 | 
			
		||||
 | 
			
		||||
@ -157,5 +157,6 @@ SECTIONS
 | 
			
		||||
    PROVIDE( _heap_end = . );
 | 
			
		||||
    . = __stack_size;
 | 
			
		||||
    PROVIDE( _sp = . );
 | 
			
		||||
    __freertos_irq_stack_top = .;
 | 
			
		||||
  } >ram AT>ram :ram
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -101,10 +101,10 @@ purpose of ensuring parameters are passed into tasks correctl5. */
 | 
			
		||||
 | 
			
		||||
/* The size of the stack allocated to the check task (as described in the
 | 
			
		||||
comments at the top of this file. */
 | 
			
		||||
#define mainCHECK_TASK_STACK_SIZE_WORDS 100
 | 
			
		||||
#define mainCHECK_TASK_STACK_SIZE_WORDS 110
 | 
			
		||||
 | 
			
		||||
/* Size of the stacks to allocated for the register check tasks. */
 | 
			
		||||
#define mainREG_TEST_STACK_SIZE_WORDS 60
 | 
			
		||||
#define mainREG_TEST_STACK_SIZE_WORDS 70
 | 
			
		||||
 | 
			
		||||
/*-----------------------------------------------------------*/
 | 
			
		||||
 | 
			
		||||
@ -155,8 +155,8 @@ void main_full( void )
 | 
			
		||||
	vCreateBlockTimeTasks();
 | 
			
		||||
	vStartGenericQueueTasks( tskIDLE_PRIORITY );
 | 
			
		||||
	vStartRecursiveMutexTasks();
 | 
			
		||||
	vStartTimerDemoTask( mainTIMER_TEST_PERIOD );
 | 
			
		||||
	vStartEventGroupTasks();
 | 
			
		||||
//	vStartTimerDemoTask( mainTIMER_TEST_PERIOD );
 | 
			
		||||
//	vStartEventGroupTasks();
 | 
			
		||||
	vStartTaskNotifyTask();
 | 
			
		||||
 | 
			
		||||
	/* Create the register check tasks, as described at the top of this	file.
 | 
			
		||||
@ -194,7 +194,7 @@ const TickType_t xDelayPeriod = mainNO_ERROR_CHECK_TASK_PERIOD;
 | 
			
		||||
TickType_t xLastExecutionTime;
 | 
			
		||||
static unsigned long ulLastRegTest1Value = 0, ulLastRegTest2Value = 0;
 | 
			
		||||
const char * const pcPassMessage = "Pass.\r\n";
 | 
			
		||||
char * pcStatusMessage = pcPassMessage;
 | 
			
		||||
const char * pcStatusMessage = pcPassMessage;
 | 
			
		||||
 | 
			
		||||
	/* Just to stop compiler warnings. */
 | 
			
		||||
	( void ) pvParameters;
 | 
			
		||||
@ -243,7 +243,7 @@ char * pcStatusMessage = pcPassMessage;
 | 
			
		||||
 | 
			
		||||
		if( xAreEventGroupTasksStillRunning() != pdPASS )
 | 
			
		||||
		{
 | 
			
		||||
			pcStatusMessage = "ERROR: Event group demo/tests.\r\n";
 | 
			
		||||
//			pcStatusMessage = "ERROR: Event group demo/tests.\r\n";
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		if( xAreTaskNotificationTasksStillRunning() != pdPASS )
 | 
			
		||||
@ -312,6 +312,6 @@ void vFullDemoTickHook( void )
 | 
			
		||||
	/* Called from vApplicationTickHook() when the project is configured to
 | 
			
		||||
	build the full demo. */
 | 
			
		||||
//	vTimerPeriodicISRTests();
 | 
			
		||||
	vPeriodicEventGroupsProcessing();
 | 
			
		||||
//	vPeriodicEventGroupsProcessing();
 | 
			
		||||
	xNotifyTaskFromISR();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -48,7 +48,7 @@
 | 
			
		||||
 | 
			
		||||
/* Set mainCREATE_SIMPLE_BLINKY_DEMO_ONLY to one to run the simple blinky demo,
 | 
			
		||||
or 0 to run the more comprehensive test and demo application. */
 | 
			
		||||
#define mainCREATE_SIMPLE_BLINKY_DEMO_ONLY	0
 | 
			
		||||
#define mainCREATE_SIMPLE_BLINKY_DEMO_ONLY	1
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * main_blinky() is used when mainCREATE_SIMPLE_BLINKY_DEMO_ONLY is set to 1.
 | 
			
		||||
@ -145,7 +145,12 @@ void vApplicationTickHook( void )
 | 
			
		||||
 | 
			
		||||
void vAssertCalled( void )
 | 
			
		||||
{
 | 
			
		||||
volatile uint32_t ulSetTo1ToExitFunction = 0;
 | 
			
		||||
 | 
			
		||||
	taskDISABLE_INTERRUPTS();
 | 
			
		||||
//	__asm volatile( "ebreak" );
 | 
			
		||||
	for( ;; );
 | 
			
		||||
	while( ulSetTo1ToExitFunction != 1 )
 | 
			
		||||
	{
 | 
			
		||||
		__asm volatile( "NOP" );
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user