diff --git a/firmware/2lib/2stub.c b/firmware/2lib/2stub.c
index e553c34..782ad42 100644
--- a/firmware/2lib/2stub.c
+++ b/firmware/2lib/2stub.c
@@ -87,7 +87,8 @@
 }
 
 __attribute__((weak))
-uint32_t vb2ex_prepare_log_screen(const char *str)
+uint32_t vb2ex_prepare_log_screen(enum vb2_screen screen, uint32_t locale_id,
+				  const char *str)
 {
 	return 1;
 }
diff --git a/firmware/2lib/2ui_screens.c b/firmware/2lib/2ui_screens.c
index 2ec779c..9571ab1 100644
--- a/firmware/2lib/2ui_screens.c
+++ b/firmware/2lib/2ui_screens.c
@@ -297,7 +297,8 @@
 		ui->error_code = VB2_UI_ERROR_DEBUG_LOG;
 		return vb2_ui_screen_back(ui);
 	}
-	ui->state->page_count = vb2ex_prepare_log_screen(log_string);
+	ui->state->page_count = vb2ex_prepare_log_screen(
+		ui->state->screen->id, ui->locale_id, log_string);
 	if (ui->state->page_count == 0) {
 		VB2_DEBUG("ERROR: Failed to prepare debug info screen\n");
 		ui->error_code = VB2_UI_ERROR_DEBUG_LOG;
@@ -315,7 +316,8 @@
 		ui->error_code = VB2_UI_ERROR_DEBUG_LOG;
 		return vb2_ui_screen_back(ui);
 	}
-	ui->state->page_count = vb2ex_prepare_log_screen(log_string);
+	ui->state->page_count = vb2ex_prepare_log_screen(
+		ui->state->screen->id, ui->locale_id, log_string);
 	if (ui->state->page_count == 0) {
 		VB2_DEBUG("ERROR: Failed to prepare debug info screen\n");
 		ui->error_code = VB2_UI_ERROR_DEBUG_LOG;
@@ -359,7 +361,8 @@
 		ui->error_code = VB2_UI_ERROR_FIRMWARE_LOG;
 		return vb2_ui_screen_back(ui);
 	}
-	ui->state->page_count = vb2ex_prepare_log_screen(log_string);
+	ui->state->page_count = vb2ex_prepare_log_screen(
+		ui->state->screen->id, ui->locale_id, log_string);
 	if (ui->state->page_count == 0) {
 		VB2_DEBUG("ERROR: Failed to prepare firmware log screen\n");
 		ui->error_code = VB2_UI_ERROR_FIRMWARE_LOG;
@@ -377,7 +380,8 @@
 		ui->error_code = VB2_UI_ERROR_FIRMWARE_LOG;
 		return vb2_ui_screen_back(ui);
 	}
-	ui->state->page_count = vb2ex_prepare_log_screen(log_string);
+	ui->state->page_count = vb2ex_prepare_log_screen(
+		ui->state->screen->id, ui->locale_id, log_string);
 	if (ui->state->page_count == 0) {
 		VB2_DEBUG("ERROR: Failed to prepare firmware log screen\n");
 		ui->error_code = VB2_UI_ERROR_FIRMWARE_LOG;
@@ -1082,7 +1086,8 @@
 		return vb2_ui_screen_back(ui);
 	}
 
-	ui->state->page_count = vb2ex_prepare_log_screen(log_string);
+	ui->state->page_count = vb2ex_prepare_log_screen(
+		ui->state->screen->id, ui->locale_id, log_string);
 	if (ui->state->page_count == 0) {
 		VB2_DEBUG("ERROR: Failed to prepare storage log screen\n");
 		ui->error_code = VB2_UI_ERROR_DIAGNOSTICS;
@@ -1140,7 +1145,8 @@
 		return vb2_ui_screen_back(ui);
 	}
 
-	ui->state->page_count = vb2ex_prepare_log_screen(log_string);
+	ui->state->page_count = vb2ex_prepare_log_screen(
+		ui->state->screen->id, ui->locale_id, log_string);
 	if (ui->state->page_count == 0) {
 		VB2_DEBUG("ERROR: Failed to prepare memory log screen, error: "
 			  "%#x\n", rv);
diff --git a/firmware/2lib/include/2api.h b/firmware/2lib/include/2api.h
index 4c5e1dc..9448e12 100644
--- a/firmware/2lib/include/2api.h
+++ b/firmware/2lib/include/2api.h
@@ -1491,10 +1491,13 @@
  * pages in the log string is returned.  If the log string ever changes, this
  * function should be called again before the next vb2ex_display_ui() call.
  *
+ * @param screen	Screen to display the log.
+ * @param locale_id	Id of current locale.
  * @param str		The log string to display.
  * @return The number of pages after pagination.  0 if none or error.
  */
-uint32_t vb2ex_prepare_log_screen(const char *str);
+uint32_t vb2ex_prepare_log_screen(enum vb2_screen screen, uint32_t locale_id,
+				  const char *str);
 
 /**
  * Get the full storage diagnostic log.
diff --git a/tests/vb2_ui_tests.c b/tests/vb2_ui_tests.c
index 9d0642a..bc95033 100644
--- a/tests/vb2_ui_tests.c
+++ b/tests/vb2_ui_tests.c
@@ -560,7 +560,8 @@
 	return mock_firmware_log_buf;
 }
 
-uint32_t vb2ex_prepare_log_screen(const char *str)
+uint32_t vb2ex_prepare_log_screen(enum vb2_screen screen, uint32_t locale_id,
+				  const char *str)
 {
 	if (mock_prepare_log_count < ARRAY_SIZE(mock_prepare_log))
 		strncpy(mock_prepare_log[mock_prepare_log_count],
