rtems_status_code rtems_media_server_initialize( rtems_task_priority priority, size_t stack_size, rtems_mode modes, rtems_attribute attributes ) { rtems_status_code sc = RTEMS_SUCCESSFUL; if (server_id == RTEMS_ID_NONE) { sc = rtems_media_initialize(); if (sc != RTEMS_SUCCESSFUL) { goto error; } sc = rtems_task_create( rtems_build_name('M', 'D', 'I', 'A'), priority, stack_size, modes, attributes, &server_id ); if (sc != RTEMS_SUCCESSFUL) { goto error; } sc = rtems_task_start(server_id, media_server, 0); if (sc != RTEMS_SUCCESSFUL) { goto error; } } return RTEMS_SUCCESSFUL; error: if (server_id != RTEMS_ID_NONE) { rtems_task_delete(server_id); } return RTEMS_NO_MEMORY; }
static void early_initialization(void) { rtems_status_code sc; sc = rtems_bdbuf_init(); assert(sc == RTEMS_SUCCESSFUL); sc = rtems_media_initialize(); assert(sc == RTEMS_SUCCESSFUL); sc = rtems_media_listener_add(media_listener, NULL); assert(sc == RTEMS_SUCCESSFUL); sc = rtems_media_server_initialize( 200, 32 * 1024, RTEMS_DEFAULT_MODES, RTEMS_DEFAULT_ATTRIBUTES ); assert(sc == RTEMS_SUCCESSFUL); }