[PATCH v5 01/20] test: Allow signaling that U-Boot is ready
neil.armstrong at linaro.org
neil.armstrong at linaro.org
Thu Aug 29 16:22:11 CEST 2024
On 29/08/2024 00:08, Simon Glass wrote:
> When Labgrid is used, it can get U-Boot ready for running tests. It
> prints a message when it has done so.
>
> Add logic to detect this message and accept it.
So labgrid can boot and wait for `board_type & board_identity` itself right ?
It's cool, but if the boots fails for a reason, what would happen ?
Having the U-Boot pytest to parse the U-Boot boot log makes sure we can identify crash
and report them in the pytest log.
And this adds a labgrid-only string to parse, which could potentially
collide with pre-uboot or whatever log when not using labgrid.
Neil
>
> Signed-off-by: Simon Glass <sjg at chromium.org>
> ---
>
> (no changes since v1)
>
> test/py/u_boot_console_base.py | 9 +++++----
> 1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/test/py/u_boot_console_base.py b/test/py/u_boot_console_base.py
> index 76a550d45a1..882d04cd1e9 100644
> --- a/test/py/u_boot_console_base.py
> +++ b/test/py/u_boot_console_base.py
> @@ -22,6 +22,7 @@ pattern_stop_autoboot_prompt = re.compile('Hit any key to stop autoboot: ')
> pattern_unknown_command = re.compile('Unknown command \'.*\' - try \'help\'')
> pattern_error_notification = re.compile('## Error: ')
> pattern_error_please_reset = re.compile('### ERROR ### Please RESET the board ###')
> +pattern_ready_prompt = re.compile('U-Boot is ready')
>
> PAT_ID = 0
> PAT_RE = 1
> @@ -196,15 +197,15 @@ class ConsoleBase(object):
> self.bad_pattern_ids[m - 1])
> self.u_boot_version_string = self.p.after
> while True:
> - m = self.p.expect([self.prompt_compiled,
> + m = self.p.expect([self.prompt_compiled, pattern_ready_prompt,
> pattern_stop_autoboot_prompt] + self.bad_patterns)
> - if m == 0:
> + if m == 0 or m == 1:
> break
> - if m == 1:
> + if m == 2:
> self.p.send(' ')
> continue
> raise Exception('Bad pattern found on console: ' +
> - self.bad_pattern_ids[m - 2])
> + self.bad_pattern_ids[m - 3])
>
> except Exception as ex:
> self.log.error(str(ex))
More information about the U-Boot
mailing list