void engine_init( at_cmd_cb default_callback ) { cb_default = default_callback; dev_adapter_init(); dev_timer_init(); at_parser_init(); at_cmd_save( "+CMS ERROR :", AT_DEFAULT_TIMEOUT, default_callback, default_callback, default_callback, default_callback ); exception_f = false; response_f = false; cue_f = false; memset( ( void* )tx_buffer, 0, AT_TRANSFER_SIZE ); }
static TIMER * create_timer_obj(char *name, timer_tick_t tick_handle, void *data) { TIMER *timer = kmalloc(sizeof(*timer)); if(NULL == timer) return timer; memset(timer, 0, sizeof(*timer)); timer->name = name; timer->tick_handle = tick_handle; timer->timer_data = data; timer->config = 0xff; struct device *root = get_root_device(); struct device *dev = kmalloc(sizeof(*dev)); dev_timer_init(dev, root); dev->device_data = timer; timer->id = dev->dev_id; dev_timer_setup_io(dev, &timer_read, &timer_write); return timer; }