diff options
Diffstat (limited to 'arch/sandbox/cpu/state.c')
| -rw-r--r-- | arch/sandbox/cpu/state.c | 22 | 
1 files changed, 22 insertions, 0 deletions
| diff --git a/arch/sandbox/cpu/state.c b/arch/sandbox/cpu/state.c index 56d504141..0380fe279 100644 --- a/arch/sandbox/cpu/state.c +++ b/arch/sandbox/cpu/state.c @@ -4,6 +4,7 @@   */  #include <common.h> +#include <os.h>  #include <asm/state.h>  /* Main state record for the sandbox */ @@ -25,6 +26,10 @@ int state_init(void)  {  	state = &main_state; +	state->ram_size = CONFIG_SYS_SDRAM_SIZE; +	state->ram_buf = os_malloc(state->ram_size); +	assert(state->ram_buf); +  	/*  	 * Example of how to use GPIOs:  	 * @@ -33,3 +38,20 @@ int state_init(void)  	 */  	return 0;  } + +int state_uninit(void) +{ +	int err; + +	state = &main_state; + +	if (state->write_ram_buf) { +		err = os_write_ram_buf(state->ram_buf_fname); +		if (err) { +			printf("Failed to write RAM buffer\n"); +			return err; +		} +	} + +	return 0; +} |