From 5d4390f0120a1a6ab3e209f7743bcc09070d3fc3 Mon Sep 17 00:00:00 2001 From: Allan Stephens Date: Tue, 12 May 2015 16:28:45 -0400 Subject: [PATCH] Eliminate unneeded arguments during nanokernel initialization No longer passes arguments to _nano_init() that aren't needed. Note: Also eliminates duplicate declarations of _nano_init() that are obsolete. Change-Id: I36ddfc9ceb18e3e5d6942a23574e38c1dfd3eb65 Signed-off-by: Allan Stephens --- include/nanokernel/arc/v2/init.h | 1 - include/nanokernel/arm/CortexM/init.h | 1 - include/nanokernel/x86/arch.h | 3 --- kernel/nanokernel/nanoinit.c | 12 +++++------- 4 files changed, 5 insertions(+), 12 deletions(-) diff --git a/include/nanokernel/arc/v2/init.h b/include/nanokernel/arc/v2/init.h index 0d18e0326e0..0f3c5d6bfbb 100644 --- a/include/nanokernel/arc/v2/init.h +++ b/include/nanokernel/arc/v2/init.h @@ -39,7 +39,6 @@ #define _ARCH_ARC_V2_INIT_H_ #ifndef _ASMLANGUAGE -extern void _nano_init(nano_context_id_t, int argc, char *argv[], char *envp[]); extern void _nano_fiber_swap(void); #endif diff --git a/include/nanokernel/arm/CortexM/init.h b/include/nanokernel/arm/CortexM/init.h index c97bd46423a..67213c5245e 100644 --- a/include/nanokernel/arm/CortexM/init.h +++ b/include/nanokernel/arm/CortexM/init.h @@ -39,7 +39,6 @@ ARM-specific nanokernel initialization interface. Included by ARM/arch.h. #define _ARCH_ARM_CORTEXM_INIT_H_ #ifndef _ASMLANGUAGE -extern void _nano_init(nano_context_id_t, int argc, char *argv[], char *envp[]); extern void _nano_fiber_swap(void); #endif diff --git a/include/nanokernel/x86/arch.h b/include/nanokernel/x86/arch.h index 9ba485dcf17..918709e2c98 100644 --- a/include/nanokernel/x86/arch.h +++ b/include/nanokernel/x86/arch.h @@ -307,9 +307,6 @@ typedef void (*NANO_EOI_GET_FUNC) (void *); #endif /* CONFIG_SSE */ #endif /* CONFIG_FP_SHARING */ -extern void _nano_init(nano_context_id_t dummyOutContext, int argc, - char *argv[], char *envp[]); - extern void _nano_fiber_swap(void); extern unsigned int find_first_set(unsigned int op); diff --git a/kernel/nanokernel/nanoinit.c b/kernel/nanokernel/nanoinit.c index e18d212ca40..d5f042f8960 100644 --- a/kernel/nanokernel/nanoinit.c +++ b/kernel/nanokernel/nanoinit.c @@ -136,7 +136,7 @@ extern void _Ctors(void); * \NOMANUAL */ -void _nano_init(tCCS *dummyOutContext, int argc, char *argv[], char *envp[]) +void _nano_init(tCCS *dummyOutContext) { /* * Setup enough information re: the current execution context to permit @@ -180,9 +180,9 @@ void _nano_init(tCCS *dummyOutContext, int argc, char *argv[], char *envp[]) _NewContext(_k_init_and_idle_task_stack, /* pStackMem */ CONFIG_MAIN_STACK_SIZE, /* stackSize */ (_ContextEntry)main, /* pEntry */ - (_ContextArg)argc, /* parameter1 */ - (_ContextArg)argv, /* parameter2 */ - (_ContextArg)envp, /* parameter3 */ + (_ContextArg)0, /* parameter1 */ + (_ContextArg)0, /* parameter2 */ + (_ContextArg)0, /* parameter3 */ -1, /* priority */ 0 /* options */ ); @@ -277,11 +277,9 @@ FUNC_NORETURN void _Cstart(void) * Initialize the nanokernel. This step includes initializing the * interrupt subsystem, which must be performed before the * hardware initialization phase (by _InitHardware). - * - * For the time being don't pass any arguments to the nanokernel. */ - _nano_init((tCCS *)&dummyCCS, 0, (char **)0, (char **)0); + _nano_init((tCCS *)&dummyCCS); /* perform basic hardware initialization */