Example #1
0
 * Global Graphics Software Ltd. Confidential Information.
 *
 * \brief
 * Initialisation for recombine compound.
 */

#include "core.h"
#include "coreinit.h"
#include "swstart.h"
#include "rcbinit.h"
#include "rcbmergeinit.h"
#include "rcbadjstinit.h"

/** Sub-initialisation table for DL compound. */
static core_init_t rcbn_init[] = {
  CORE_INIT("recombine adjust", rcbn_adjust_C_globals),
  CORE_INIT("recombine merge", rcbn_merge_C_globals),
} ;

static Bool rcbn_swinit(SWSTART *params)
{
  return core_swinit_run(rcbn_init, NUM_ARRAY_ITEMS(rcbn_init), params) ;
}

static Bool rcbn_swstart(SWSTART *params)
{
  return core_swstart_run(rcbn_init, NUM_ARRAY_ITEMS(rcbn_init), params) ;
}

static Bool rcbn_postboot(void)
{
Example #2
0
    The order of the first few functions in this table is critical. After
    that, the order should not matter much. When adding new entries, please
    add them before the tasks entry at the end of the table, and try to
    avoid coding the functions so that they rely on state initialised by
    another module during the same phase (it's not always possible). Relying
    on state initialised in a previous phase is OK.
*/
static core_init_t init_functions[] =
{
  /* Must be before mem_init(), because MPS needs pthreads loaded */
  CORE_INIT_LOCAL("apis", FindSkinAPIs, NULL, NULL, NULL),
  /* Multi-render needs to come before systemparams, so the SwInit() phase
     initialises the RendererThreads systemparam correctly. Must also come
     before the first module that uses any locks. */
  CORE_INIT("multi_render", multi_render_C_globals),
  /* Must be before any memory allocation (i.e. just about everything else). */
  CORE_INIT("memory", mem_C_globals),
  /* It's really convenient to allow modules to initialise metrics in
     C_globals routine, however we must deallocate them before the memory
     pools are destroyed. */
  CORE_INIT("metrics", sw_metrics_C_globals),
  CORE_INIT("jobmetrics", sw_jobmetrics_C_globals),
  /* Start of SWcore initialisation. Must be before all other SwInit
     functions, to capture startup time, create per-thread core context,
     and start the monitor to print failure messages. */
  CORE_INIT("core", swcore_C_globals),
  /* Must be before all other remaining SwInit functions. This sets up the
     per-thread core_context_t. */
  CORE_INIT_LOCAL("context", context_swinit, context_swstart, NULL, context_finish),
  /* Monitor is needed early, so we can print out failure messages. */
Example #3
0
#include "app_cfg.h"
#include "interfaces.h"

vsf_err_t peripheral_commit(void)
{
	return VSFERR_NONE;
}

const struct interfaces_info_t core_interfaces = 
{
	NULL,			// struct interfaes_commit_t *comm;
	
	// core
	{
		CORE_INIT(__TARGET_CHIP__),
		CORE_FINI(__TARGET_CHIP__),
		CORE_RESET(__TARGET_CHIP__),
		CORE_SET_STACK(__TARGET_CHIP__),
	}
#if IFS_UNIQUEID_EN
	// unique ID
	,{
		CORE_UID_GET(__TARGET_CHIP__),
	}
#endif
#if IFS_FLASH_EN
	// flash
	,{
		CORE_FLASH_INIT(__TARGET_CHIP__),
		CORE_FLASH_FINI(__TARGET_CHIP__),
Example #4
0
extern void ps_scanner_C_globals(core_init_fns *fns) ;
extern void ps_fontops_C_globals(core_init_fns *fns) ;
extern void ps_fontprivate_C_globals(core_init_fns *fns) ;
extern void ps_idlefonts_C_globals(core_init_fns *fns) ;
extern void idiom_C_globals(core_init_fns *fns) ;

/** The sub initialisation table for PostScript. Using an initialisation
    table assumes that the PostScript interpreter is a singleton. In the
    (very) long run, it would be nice to move all of the interpreter state
    into the PostScript context, in which case the init table should be
    localised on the C stack of the interpreter thread, or dynamically
    allocated in the pscontext. In the meantime, the modularity advantage of
    the automatic cleanup mechanism outweighs any long-term disadvantage. */
static core_init_t postscript_init[] = {
  /* Must be first. Sets up PostScript per-thread context structure: */
  CORE_INIT("pscontext", ps_context_C_globals),
  CORE_INIT("standard files", std_files_C_globals),
  CORE_INIT("%boot% device", ps_boot_C_globals),
  CORE_INIT("psvm", ps_vm_C_globals),
  CORE_INIT("stacks", ps_stacks_C_globals), /* Must be before dicts */
  CORE_INIT("dicts", ps_dicts_C_globals),
  CORE_INIT("scanner", ps_scanner_C_globals),
  CORE_INIT("marking", ps_marking_C_globals),
  CORE_INIT("fontops", ps_fontops_C_globals),
  CORE_INIT("fontpriv", ps_fontprivate_C_globals),
  CORE_INIT("idlefonts", ps_idlefonts_C_globals),
  CORE_INIT("idiom", idiom_C_globals),
} ;

static Bool postscript_swinit(SWSTART *params)
{
Example #5
0
 *      YYYY-MM-DD:     What(by Who)                                      *
 *      2010-12-05:     created(by SimonQian)                             *
 **************************************************************************/

#include "app_cfg.h"
#include "interfaces.h"

vsf_err_t peripheral_commit(void)
{
	return VSFERR_NONE;
}

const struct interfaces_info_t core_interfaces =
{
	// core
	.core.init = CORE_INIT(__TARGET_CHIP__),
	.core.fini = CORE_FINI(__TARGET_CHIP__),
	.core.reset = CORE_RESET(__TARGET_CHIP__),
	.core.get_stack = CORE_GET_STACK(__TARGET_CHIP__),
	.core.set_stack = CORE_SET_STACK(__TARGET_CHIP__),
	.core.sleep = CORE_SLEEP(__TARGET_CHIP__),
	.core.pendsv_config = CORE_PENDSV_CONFIG(__TARGET_CHIP__),
	.core.pendsv_trigger = CORE_PENDSV_TRIGGER(__TARGET_CHIP__),
#if IFS_UNIQUEID_EN
	.uid.get = CORE_UID_GET(__TARGET_CHIP__),
#endif
#if IFS_FLASH_EN
	.flash.direct_read = &CORE_FLASH_DIRECT_READ(__TARGET_CHIP__),
	.flash.init = CORE_FLASH_INIT(__TARGET_CHIP__),
	.flash.fini = CORE_FLASH_FINI(__TARGET_CHIP__),
	.flash.capacity = CORE_FLASH_CAPACITY(__TARGET_CHIP__),