uint32_t bootstage_start(enum bootstage_id id, const char *name) { struct bootstage_record *rec = &record[id]; rec->start_us = timer_get_boot_us(); rec->name = name; return rec->start_us; }
ulong bootstage_mark_name(enum bootstage_id id, const char *name) { int flags = 0; if (id == BOOTSTAGE_ID_ALLOC) flags = BOOTSTAGEF_ALLOC; return bootstage_add_record(id, name, flags, timer_get_boot_us()); }
uint32_t bootstage_accum(enum bootstage_id id) { struct bootstage_record *rec = &record[id]; uint32_t duration; duration = (uint32_t)timer_get_boot_us() - rec->start_us; rec->time_us += duration; return duration; }
uint32_t bootstage_accum(enum bootstage_id id) { struct bootstage_data *data = gd->bootstage; struct bootstage_record *rec = ensure_id(data, id); uint32_t duration; if (!rec) return 0; duration = (uint32_t)timer_get_boot_us() - rec->start_us; rec->time_us += duration; return duration; }
uint32_t bootstage_start(enum bootstage_id id, const char *name) { struct bootstage_data *data = gd->bootstage; struct bootstage_record *rec = ensure_id(data, id); ulong start_us = timer_get_boot_us(); if (rec) { rec->start_us = start_us; rec->name = name; } return start_us; }
ulong bootstage_error(enum bootstage_id id) { return bootstage_add_record(id, NULL, BOOTSTAGEF_ERROR, timer_get_boot_us()); }
ulong bootstage_mark(enum bootstage_id id) { return bootstage_add_record(id, NULL, 0, timer_get_boot_us()); }