mirror of
https://github.com/Telecominfraproject/OpenCellular.git
synced 2025-12-29 18:11:05 +00:00
g: slightly optimize boot on USB resume
Save a small amount of time when the USB resume is making the chip boot from deep-sleep by removing the verbose serial traces in main and increasing the usb initialization priority. This brings us from borderline timings wrt the USB specification to a reasonable margin. Signed-off-by: Vincent Palatin <vpalatin@chromium.org> BRANCH=none BUG=b:38160821 TEST=run on hotelgolf, go to deep-sleep on USB-suspend. On USB resume, measure the time from CPU boot to the end of usb_init using the CPU cycle count. We are shaving 1.3ms. Change-Id: Ia5bf69c0ca26748dec59a87f3908a5fe68296b36 Reviewed-on: https://chromium-review.googlesource.com/563206 Commit-Ready: Marius Schilder <mschilder@chromium.org> Tested-by: Marius Schilder <mschilder@chromium.org> Tested-by: Vincent Palatin <vpalatin@chromium.org> Reviewed-by: Marius Schilder <mschilder@chromium.org> Reviewed-by: Vadim Bendebury <vbendeb@chromium.org>
This commit is contained in:
committed by
chrome-bot
parent
ec99f39137
commit
e156e014dd
@@ -1370,7 +1370,7 @@ void usb_init(void)
|
||||
#endif
|
||||
}
|
||||
#ifndef CONFIG_USB_INHIBIT_INIT
|
||||
DECLARE_HOOK(HOOK_INIT, usb_init, HOOK_PRIO_DEFAULT);
|
||||
DECLARE_HOOK(HOOK_INIT, usb_init, HOOK_PRIO_DEFAULT - 2);
|
||||
#endif
|
||||
|
||||
void usb_release(void)
|
||||
|
||||
@@ -121,16 +121,20 @@ test_mockable __keep int main(void)
|
||||
/* Initialize UART. Console output functions may now be used. */
|
||||
uart_init();
|
||||
|
||||
if (system_jumped_to_this_image()) {
|
||||
CPRINTS("UART initialized after sysjump");
|
||||
} else {
|
||||
CPUTS("\n\n--- UART initialized after reboot ---\n");
|
||||
CPUTS("[Reset cause: ");
|
||||
system_print_reset_flags();
|
||||
CPUTS("]\n");
|
||||
/* be less verbose if we boot for USB resume to meet spec timings */
|
||||
if (!(system_get_reset_flags() & RESET_FLAG_USB_RESUME)) {
|
||||
if (system_jumped_to_this_image()) {
|
||||
CPRINTS("UART initialized after sysjump");
|
||||
} else {
|
||||
CPUTS("\n\n--- UART initialized after reboot ---\n");
|
||||
CPUTS("[Reset cause: ");
|
||||
system_print_reset_flags();
|
||||
CPUTS("]\n");
|
||||
}
|
||||
CPRINTF("[Image: %s, %s]\n",
|
||||
system_get_image_copy_string(),
|
||||
system_get_build_info());
|
||||
}
|
||||
CPRINTF("[Image: %s, %s]\n",
|
||||
system_get_image_copy_string(), system_get_build_info());
|
||||
|
||||
#ifdef CONFIG_BRINGUP
|
||||
ccprintf("\n\nWARNING: BRINGUP BUILD\n\n\n");
|
||||
|
||||
Reference in New Issue
Block a user