Merge branch 'next'
Signed-off-by: Tom Rini <trini@konsulko.com>
diff --git a/Makefile b/Makefile
index 0f37c4b..af062c0 100644
--- a/Makefile
+++ b/Makefile
@@ -3,7 +3,7 @@
VERSION = 2023
PATCHLEVEL = 04
SUBLEVEL =
-EXTRAVERSION = -rc5
+EXTRAVERSION =
NAME =
# *DOCUMENTATION*
diff --git a/arch/arm/dts/imx6sx-udoo-neo-basic-u-boot.dtsi b/arch/arm/dts/imx6sx-udoo-neo-basic-u-boot.dtsi
new file mode 100644
index 0000000..be755e1
--- /dev/null
+++ b/arch/arm/dts/imx6sx-udoo-neo-basic-u-boot.dtsi
@@ -0,0 +1,17 @@
+// SPDX-License-Identifier: GPL-2.0+
+
+&soc {
+ u-boot,dm-pre-reloc;
+};
+
+&aips1 {
+ u-boot,dm-pre-reloc;
+};
+
+&pinctrl_uart1 {
+ u-boot,dm-pre-reloc;
+};
+
+&uart1 {
+ u-boot,dm-pre-reloc;
+};
diff --git a/arch/arm/dts/k3-j721e-sk-u-boot.dtsi b/arch/arm/dts/k3-j721e-sk-u-boot.dtsi
index 0949caa..31f979f 100644
--- a/arch/arm/dts/k3-j721e-sk-u-boot.dtsi
+++ b/arch/arm/dts/k3-j721e-sk-u-boot.dtsi
@@ -33,7 +33,7 @@
&cbass_main{
bootph-pre-ram;
- main_navss {
+ main_navss: bus@30000000 {
bootph-pre-ram;
};
};
@@ -49,7 +49,7 @@
bootph-pre-ram;
};
- mcu-navss {
+ mcu_navss: bus@28380000 {
bootph-pre-ram;
ringacc@2b800000 {
@@ -237,6 +237,10 @@
bootph-pre-ram;
};
+&hbmc {
+ status = "disabled";
+};
+
&ospi0 {
bootph-pre-ram;
diff --git a/common/cli_getch.c b/common/cli_getch.c
index 87c23ed..61d4cb2 100644
--- a/common/cli_getch.c
+++ b/common/cli_getch.c
@@ -129,7 +129,7 @@
*actp = act;
- return act == ESC_CONVERTED ? ichar : 0;
+ return ichar;
}
int cli_ch_process(struct cli_ch_state *cch, int ichar)
@@ -145,6 +145,7 @@
return cch->esc_save[cch->emit_upto++];
cch->emit_upto = 0;
cch->emitting = false;
+ cch->esc_len = 0;
}
return 0;
} else if (ichar == -ETIMEDOUT) {
@@ -185,7 +186,7 @@
cch->esc_save[cch->esc_len++] = ichar;
ichar = cch->esc_save[cch->emit_upto++];
cch->emitting = true;
- break;
+ return ichar;
case ESC_CONVERTED:
/* valid escape sequence, return the resulting char */
cch->esc_len = 0;
diff --git a/common/cli_readline.c b/common/cli_readline.c
index 709e9c3..e83743e 100644
--- a/common/cli_readline.c
+++ b/common/cli_readline.c
@@ -284,10 +284,9 @@
}
ichar = getcmd_getch();
+ ichar = cli_ch_process(cch, ichar);
}
- ichar = cli_ch_process(cch, ichar);
-
/* ichar=0x0 when error occurs in U-Boot getc */
if (!ichar)
continue;
diff --git a/doc/develop/ci_testing.rst b/doc/develop/ci_testing.rst
index b9a9a51..ffaaced 100644
--- a/doc/develop/ci_testing.rst
+++ b/doc/develop/ci_testing.rst
@@ -50,6 +50,12 @@
pipeline on the free public instances provided at https://gitlab.com/ a problem
with our squashfs tests currently prevents this.
+To push to Gitlab without triggering a pipeline use:
+
+.. code-block:: bash
+
+ git push -o ci.skip
+
Docker container
----------------
diff --git a/doc/develop/release_cycle.rst b/doc/develop/release_cycle.rst
index ea584ce..7d63cf4 100644
--- a/doc/develop/release_cycle.rst
+++ b/doc/develop/release_cycle.rst
@@ -48,13 +48,14 @@
Current Status
--------------
-* U-Boot v2023.01 was released on Mon 09 January 2023.
+* U-Boot v2023.04 was released on Mon 03 April 2023.
-* The Merge Window for the next release (v2023.04) is **closed**.
+* The Merge Window for the next release (v2023.07) is **open** until the -rc1
+ release on Mon 24 April 2023.
-* The next branch is now **open**.
+* The next branch is now **closed**.
-* Release "v2023.04" is scheduled for 03 April 2023.
+* Release "v2023.07" is scheduled for 03 July 2023.
Future Releases
---------------
@@ -62,29 +63,29 @@
.. The following commented out dates are for when release candidates are
planned to be tagged.
-For the next scheduled release, release candidates were made on::
+.. For the next scheduled release, release candidates were made on::
-* U-Boot v2023.04-rc1 was released on Mon 30 January 2023.
+.. * U-Boot v2023.07-rc1 was released on Mon 24 April 2023.
-* U-Boot v2023.04-rc2 was released on Mon 13 February 2023.
+.. * U-Boot v2023.07-rc2 was released on Mon 08 May 2023.
-* U-Boot v2023.04-rc3 was released on Mon 27 February 2023.
+.. * U-Boot v2023.07-rc3 was released on Mon 22 May 2023.
-* U-Boot v2023.04-rc4 was released on Mon 13 March 2023.
+.. * U-Boot v2023.07-rc4 was released on Mon 05 June 2023.
-* U-Boot v2023.04-rc5 was released on Mon 27 March 2023.
+.. * U-Boot v2023.07-rc5 was released on Mon 19 June 2023.
Please note that the following dates are planned only and may be deviated from
as needed.
-* "v2023.04": end of MW = Mon, Jan 30, 2022; release = Mon, Apr 03, 2023
-
* "v2023.07": end of MW = Mon, Apr 24, 2023; release = Mon, Jul 03, 2023
* "v2023.10": end of MW = Mon, Jul 24, 2023; release = Mon, Oct 02, 2023
* "v2024.01": end of MW = Mon, Oct 23, 2023; release = Mon, Jan 08, 2024
+* "v2024.04": end of MW = Mon, Jan 29, 2024; release = Tue, Apr 02, 2024
+
Previous Releases
-----------------
@@ -92,6 +93,8 @@
<https://source.denx.de/u-boot/gitdm>`_, which was originally created by
Jonathan Corbet.
+* :doc:`statistics/u-boot-stats-v2023.04` which was released on 03 April 2023.
+
* :doc:`statistics/u-boot-stats-v2023.01` which was released on 09 January 2023.
* :doc:`statistics/u-boot-stats-v2022.10` which was released on 03 October 2022.
diff --git a/doc/develop/statistics/u-boot-stats-v2023.04.rst b/doc/develop/statistics/u-boot-stats-v2023.04.rst
new file mode 100644
index 0000000..57f2efc
--- /dev/null
+++ b/doc/develop/statistics/u-boot-stats-v2023.04.rst
@@ -0,0 +1,767 @@
+:orphan:
+
+Release Statistics for U-Boot v2023.04
+======================================
+
+* Processed 1691 changesets from 157 developers
+
+* 29 employers found
+
+* A total of 174471 lines added, 78380 removed (delta 96091)
+
+.. table:: Developers with the most changesets
+ :widths: auto
+
+ ==================================== =====
+ Name Count
+ ==================================== =====
+ Simon Glass 381 (22.5%)
+ Tom Rini 333 (19.7%)
+ Marek Vasut 101 (6.0%)
+ Heinrich Schuchardt 70 (4.1%)
+ Jagan Teki 53 (3.1%)
+ Jonas Karlman 36 (2.1%)
+ Patrick Delaunay 35 (2.1%)
+ Hai Pham 21 (1.2%)
+ Michal Simek 20 (1.2%)
+ Maxim Cournoyer 20 (1.2%)
+ Svyatoslav Ryhel 17 (1.0%)
+ Sean Anderson 15 (0.9%)
+ Fabio Estevam 14 (0.8%)
+ Pali Rohár 14 (0.8%)
+ Sumit Garg 14 (0.8%)
+ Bryan Brattlof 14 (0.8%)
+ Sinthu Raja 13 (0.8%)
+ Andre Przywara 13 (0.8%)
+ Heiko Schocher 13 (0.8%)
+ Yu Chien Peter Lin 12 (0.7%)
+ Tim Harvey 12 (0.7%)
+ Peng Fan 12 (0.7%)
+ Tony Dinh 11 (0.7%)
+ Angelo Dureghello 11 (0.7%)
+ Masahisa Kojima 11 (0.7%)
+ Quentin Schulz 11 (0.7%)
+ Roger Quadros 11 (0.7%)
+ Marcel Ziswiler 11 (0.7%)
+ Holger Brunck 10 (0.6%)
+ Mark Kettenis 10 (0.6%)
+ Sergiu Moga 10 (0.6%)
+ Nikhil M Jain 9 (0.5%)
+ Jim Liu 9 (0.5%)
+ Christophe Leroy 9 (0.5%)
+ Balamanikandan Gunasundar 9 (0.5%)
+ Dario Binacchi 8 (0.5%)
+ Samuel Holland 8 (0.5%)
+ Frieder Schrempf 8 (0.5%)
+ Mikhail Ilin 8 (0.5%)
+ Sjoerd Simons 7 (0.4%)
+ Neil Armstrong 7 (0.4%)
+ Eugen Hristev 7 (0.4%)
+ Chris Morgan 7 (0.4%)
+ Dzmitry Sankouski 7 (0.4%)
+ Ioana Ciornei 7 (0.4%)
+ Ilias Apalodimas 6 (0.4%)
+ Peter Robinson 6 (0.4%)
+ Paweł Anikiel 6 (0.4%)
+ Andrejs Cainikovs 6 (0.4%)
+ Rob Herring 6 (0.4%)
+ John Keeping 5 (0.3%)
+ Mihai Sain 5 (0.3%)
+ Rick Chen 5 (0.3%)
+ Sergei Antonov 5 (0.3%)
+ Ashok Reddy Soma 5 (0.3%)
+ Algapally Santosh Sagar 5 (0.3%)
+ Dhruva Gole 5 (0.3%)
+ Brandon Maier 5 (0.3%)
+ Alexey Romanov 5 (0.3%)
+ Vasily Khoruzhick 4 (0.2%)
+ Manoj Sai 4 (0.2%)
+ Jan Kiszka 4 (0.2%)
+ Ovidiu Panait 4 (0.2%)
+ Takahiro Kuwano 4 (0.2%)
+ Enric Balletbo i Serra 4 (0.2%)
+ Fabrice Gasnier 4 (0.2%)
+ Victor Lim 4 (0.2%)
+ Stefan Bosch 4 (0.2%)
+ Vincent Stehlé 3 (0.2%)
+ Tam Nguyen 3 (0.2%)
+ Leo Yu-Chi Liang 3 (0.2%)
+ Mattijs Korpershoek 3 (0.2%)
+ Ye Li 3 (0.2%)
+ Oleksandr Suvorov 3 (0.2%)
+ Max Krummenacher 3 (0.2%)
+ Andrew Davis 3 (0.2%)
+ Michael Walle 3 (0.2%)
+ Andreas Kemnade 3 (0.2%)
+ Kshitiz Varshney 3 (0.2%)
+ Dai Okamura 3 (0.2%)
+ Stefan Roese 2 (0.1%)
+ Vincent Fazio 2 (0.1%)
+ Kamlesh Gurudasani 2 (0.1%)
+ Johan Jonker 2 (0.1%)
+ Antoine Mazeas 2 (0.1%)
+ Christopher Obbard 2 (0.1%)
+ Akash Gajjar 2 (0.1%)
+ Ilko Iliev 2 (0.1%)
+ Qu Wenruo 2 (0.1%)
+ Etienne Carriere 2 (0.1%)
+ Thomas Fitzsimmons 2 (0.1%)
+ Pei Yue Ho 2 (0.1%)
+ Ryan Chen 2 (0.1%)
+ Adam Ford 2 (0.1%)
+ Philippe Schenker 2 (0.1%)
+ Linus Walleij 2 (0.1%)
+ Sean Edmond 2 (0.1%)
+ Nikita Shubin 2 (0.1%)
+ Ying-Chun Liu (PaulLiu) 2 (0.1%)
+ Loic Poulain 2 (0.1%)
+ Pengfei Fan 2 (0.1%)
+ Jernej Skrabec 2 (0.1%)
+ Neha Malcom Francis 2 (0.1%)
+ Harald Seiler 2 (0.1%)
+ Shenlin Liang 2 (0.1%)
+ Martyn Welch 2 (0.1%)
+ Harini Katakam 2 (0.1%)
+ Marc Kleine-Budde 2 (0.1%)
+ David Sebek 1 (0.1%)
+ Jonathan Liu 1 (0.1%)
+ Vignesh Raghavendra 1 (0.1%)
+ Sebastian Andrzej Siewior 1 (0.1%)
+ annsai01 1 (0.1%)
+ Peter Geis 1 (0.1%)
+ Ralph Siemsen 1 (0.1%)
+ Robert Marko 1 (0.1%)
+ Michal Suchanek 1 (0.1%)
+ Jaehoon Chung 1 (0.1%)
+ Christian Kohlschütter 1 (0.1%)
+ Ramin Khonsari 1 (0.1%)
+ Maxim Schwalm 1 (0.1%)
+ Venkatesh Yadav Abbarapu 1 (0.1%)
+ Ivan Khoronzhuk 1 (0.1%)
+ Ulf Samuelsson 1 (0.1%)
+ Jade Lovelace 1 (0.1%)
+ Michael Trimarchi 1 (0.1%)
+ Matwey V. Kornilov 1 (0.1%)
+ KaDiWa 1 (0.1%)
+ Christian Marangi 1 (0.1%)
+ Ehsan Mohandesi 1 (0.1%)
+ Aurelien Jarno 1 (0.1%)
+ Mario Kicherer 1 (0.1%)
+ Arnaud Ferraris 1 (0.1%)
+ Detlev Casanova 1 (0.1%)
+ Igor Opaniuk 1 (0.1%)
+ Massimo Pegorer 1 (0.1%)
+ Kunihiko Hayashi 1 (0.1%)
+ Joost van Zwieten 1 (0.1%)
+ Jorge Ramirez-Ortiz 1 (0.1%)
+ Jay Buddhabhatti 1 (0.1%)
+ Andrey Dolnikov 1 (0.1%)
+ chenzhipeng 1 (0.1%)
+ Olivier Moysan 1 (0.1%)
+ Ville Skyttä 1 (0.1%)
+ David Oberhollenzer 1 (0.1%)
+ Haijun Qin 1 (0.1%)
+ Neal Frager 1 (0.1%)
+ Luca Ceresoli 1 (0.1%)
+ Viacheslav Bocharov 1 (0.1%)
+ Yuepeng Xing 1 (0.1%)
+ Cristian Birsan 1 (0.1%)
+ Lokanathan, Raaj 1 (0.1%)
+ Christian Gmeiner 1 (0.1%)
+ Daniel Golle 1 (0.1%)
+ Manuel Traut 1 (0.1%)
+ Ben Dooks 1 (0.1%)
+ Kasper Revsbech 1 (0.1%)
+ ==================================== =====
+
+
+.. table:: Developers with the most changed lines
+ :widths: auto
+
+ ==================================== =====
+ Name Count
+ ==================================== =====
+ Bryan Brattlof 38811 (18.1%)
+ Tom Rini 36464 (17.0%)
+ Simon Glass 30090 (14.0%)
+ Jagan Teki 23918 (11.1%)
+ Marek Vasut 14720 (6.9%)
+ Brandon Maier 13759 (6.4%)
+ Tony Dinh 7399 (3.4%)
+ Balamanikandan Gunasundar 4239 (2.0%)
+ Jim Liu 4106 (1.9%)
+ Fabio Estevam 3264 (1.5%)
+ Christophe Leroy 2145 (1.0%)
+ Neil Armstrong 2020 (0.9%)
+ Nikhil M Jain 1681 (0.8%)
+ Sumit Garg 1671 (0.8%)
+ Tim Harvey 1524 (0.7%)
+ Jonas Karlman 1439 (0.7%)
+ Roger Quadros 1431 (0.7%)
+ Quentin Schulz 1296 (0.6%)
+ Heinrich Schuchardt 1277 (0.6%)
+ Michal Simek 1274 (0.6%)
+ Svyatoslav Ryhel 1259 (0.6%)
+ Akash Gajjar 1057 (0.5%)
+ Mark Kettenis 1042 (0.5%)
+ Sinthu Raja 967 (0.5%)
+ Holger Brunck 966 (0.5%)
+ Chris Morgan 965 (0.4%)
+ Peter Robinson 919 (0.4%)
+ Luca Ceresoli 860 (0.4%)
+ Hai Pham 712 (0.3%)
+ Andre Przywara 702 (0.3%)
+ Kunihiko Hayashi 695 (0.3%)
+ Dario Binacchi 690 (0.3%)
+ Patrick Delaunay 668 (0.3%)
+ Samuel Holland 568 (0.3%)
+ Dhruva Gole 527 (0.2%)
+ Ryan Chen 504 (0.2%)
+ Sergei Antonov 464 (0.2%)
+ Sean Anderson 439 (0.2%)
+ Ashok Reddy Soma 399 (0.2%)
+ Masahisa Kojima 391 (0.2%)
+ Sergiu Moga 382 (0.2%)
+ Maxim Cournoyer 380 (0.2%)
+ Massimo Pegorer 353 (0.2%)
+ Linus Walleij 317 (0.1%)
+ Eugen Hristev 295 (0.1%)
+ Alexey Romanov 285 (0.1%)
+ Yu Chien Peter Lin 267 (0.1%)
+ Stefan Bosch 260 (0.1%)
+ Dzmitry Sankouski 257 (0.1%)
+ Heiko Schocher 221 (0.1%)
+ Enric Balletbo i Serra 214 (0.1%)
+ Kshitiz Varshney 211 (0.1%)
+ Thomas Fitzsimmons 205 (0.1%)
+ Mihai Sain 191 (0.1%)
+ Angelo Dureghello 167 (0.1%)
+ Adam Ford 162 (0.1%)
+ Marcel Ziswiler 160 (0.1%)
+ Mattijs Korpershoek 154 (0.1%)
+ Etienne Carriere 154 (0.1%)
+ Leo Yu-Chi Liang 135 (0.1%)
+ Ramin Khonsari 131 (0.1%)
+ Pali Rohár 127 (0.1%)
+ Olivier Moysan 116 (0.1%)
+ Vincent Fazio 106 (0.0%)
+ Fabrice Gasnier 98 (0.0%)
+ Max Krummenacher 80 (0.0%)
+ Takahiro Kuwano 76 (0.0%)
+ Victor Lim 73 (0.0%)
+ Frieder Schrempf 72 (0.0%)
+ Manoj Sai 70 (0.0%)
+ Andrew Davis 70 (0.0%)
+ Mikhail Ilin 69 (0.0%)
+ Dai Okamura 65 (0.0%)
+ Tam Nguyen 63 (0.0%)
+ Peng Fan 61 (0.0%)
+ Sjoerd Simons 61 (0.0%)
+ Cristian Birsan 59 (0.0%)
+ Antoine Mazeas 51 (0.0%)
+ Rick Chen 49 (0.0%)
+ Paweł Anikiel 47 (0.0%)
+ Andreas Kemnade 45 (0.0%)
+ Jan Kiszka 43 (0.0%)
+ Andrejs Cainikovs 41 (0.0%)
+ Michael Trimarchi 41 (0.0%)
+ Rob Herring 40 (0.0%)
+ Martyn Welch 36 (0.0%)
+ Stefan Roese 35 (0.0%)
+ Neha Malcom Francis 35 (0.0%)
+ Algapally Santosh Sagar 34 (0.0%)
+ Jernej Skrabec 34 (0.0%)
+ Maxim Schwalm 30 (0.0%)
+ Qu Wenruo 29 (0.0%)
+ Loic Poulain 29 (0.0%)
+ Ioana Ciornei 28 (0.0%)
+ Christian Kohlschütter 28 (0.0%)
+ Michael Walle 23 (0.0%)
+ Vasily Khoruzhick 22 (0.0%)
+ Pei Yue Ho 22 (0.0%)
+ Vincent Stehlé 19 (0.0%)
+ Venkatesh Yadav Abbarapu 19 (0.0%)
+ Pengfei Fan 16 (0.0%)
+ Harald Seiler 16 (0.0%)
+ Ville Skyttä 16 (0.0%)
+ Sean Edmond 14 (0.0%)
+ Harini Katakam 14 (0.0%)
+ Robert Marko 14 (0.0%)
+ John Keeping 13 (0.0%)
+ Ovidiu Panait 13 (0.0%)
+ Kamlesh Gurudasani 13 (0.0%)
+ Nikita Shubin 13 (0.0%)
+ Marc Kleine-Budde 13 (0.0%)
+ Detlev Casanova 13 (0.0%)
+ David Oberhollenzer 11 (0.0%)
+ Ilias Apalodimas 10 (0.0%)
+ Mario Kicherer 10 (0.0%)
+ Yuepeng Xing 10 (0.0%)
+ Jaehoon Chung 9 (0.0%)
+ KaDiWa 9 (0.0%)
+ Oleksandr Suvorov 8 (0.0%)
+ Christian Gmeiner 8 (0.0%)
+ Ye Li 7 (0.0%)
+ Christopher Obbard 7 (0.0%)
+ Ying-Chun Liu (PaulLiu) 7 (0.0%)
+ Johan Jonker 6 (0.0%)
+ Jonathan Liu 6 (0.0%)
+ Andrey Dolnikov 6 (0.0%)
+ Daniel Golle 6 (0.0%)
+ Philippe Schenker 5 (0.0%)
+ Michal Suchanek 5 (0.0%)
+ Ivan Khoronzhuk 5 (0.0%)
+ Ilko Iliev 4 (0.0%)
+ Manuel Traut 4 (0.0%)
+ Shenlin Liang 3 (0.0%)
+ annsai01 3 (0.0%)
+ Ulf Samuelsson 3 (0.0%)
+ Matwey V. Kornilov 3 (0.0%)
+ Jay Buddhabhatti 3 (0.0%)
+ chenzhipeng 3 (0.0%)
+ Ben Dooks 3 (0.0%)
+ Peter Geis 2 (0.0%)
+ Ralph Siemsen 2 (0.0%)
+ Christian Marangi 2 (0.0%)
+ Jorge Ramirez-Ortiz 2 (0.0%)
+ David Sebek 1 (0.0%)
+ Vignesh Raghavendra 1 (0.0%)
+ Sebastian Andrzej Siewior 1 (0.0%)
+ Jade Lovelace 1 (0.0%)
+ Ehsan Mohandesi 1 (0.0%)
+ Aurelien Jarno 1 (0.0%)
+ Arnaud Ferraris 1 (0.0%)
+ Igor Opaniuk 1 (0.0%)
+ Joost van Zwieten 1 (0.0%)
+ Haijun Qin 1 (0.0%)
+ Neal Frager 1 (0.0%)
+ Viacheslav Bocharov 1 (0.0%)
+ Lokanathan, Raaj 1 (0.0%)
+ Kasper Revsbech 1 (0.0%)
+ ==================================== =====
+
+
+.. table:: Developers with the most lines removed
+ :widths: auto
+
+ ==================================== =====
+ Name Count
+ ==================================== =====
+ Tom Rini 18089 (23.1%)
+ Simon Glass 5998 (7.7%)
+ Luca Ceresoli 860 (1.1%)
+ Holger Brunck 532 (0.7%)
+ Leo Yu-Chi Liang 90 (0.1%)
+ Mattijs Korpershoek 83 (0.1%)
+ Andrew Davis 43 (0.1%)
+ Pali Rohár 28 (0.0%)
+ Maxim Schwalm 27 (0.0%)
+ Dai Okamura 12 (0.0%)
+ Michael Walle 12 (0.0%)
+ Ovidiu Panait 10 (0.0%)
+ Peng Fan 7 (0.0%)
+ Ioana Ciornei 6 (0.0%)
+ Michal Suchanek 4 (0.0%)
+ Rob Herring 3 (0.0%)
+ Johan Jonker 3 (0.0%)
+ Ying-Chun Liu (PaulLiu) 2 (0.0%)
+ Ilko Iliev 1 (0.0%)
+ ==================================== =====
+
+
+.. table:: Developers with the most signoffs (total 215)
+ :widths: auto
+
+ ==================================== =====
+ Name Count
+ ==================================== =====
+ Francesco Dolcini 21 (9.8%)
+ Marek Vasut 21 (9.8%)
+ Tom 19 (8.8%)
+ Michal Simek 19 (8.8%)
+ Michael Trimarchi 8 (3.7%)
+ Dario Binacchi 8 (3.7%)
+ Neil Armstrong 8 (3.7%)
+ Hai Pham 7 (3.3%)
+ Kever Yang 6 (2.8%)
+ Tom Rini 5 (2.3%)
+ YouMin Chen 5 (2.3%)
+ Jianqun Xu 4 (1.9%)
+ Elaine Zhang 4 (1.9%)
+ Mike Worsfold 4 (1.9%)
+ Manoj Sai 4 (1.9%)
+ Marcel Ziswiler 4 (1.9%)
+ Ashok Reddy Soma 4 (1.9%)
+ Peter Robinson 4 (1.9%)
+ Peng Fan 3 (1.4%)
+ Andre Przywara 3 (1.4%)
+ Heinrich Schuchardt 3 (1.4%)
+ Vignesh Raghavendra 2 (0.9%)
+ Joseph Chen 2 (0.9%)
+ Finley Xiao 2 (0.9%)
+ Suniel Mahesh 2 (0.9%)
+ FUKAUMI Naoki 2 (0.9%)
+ Judith Mendez 2 (0.9%)
+ Robert Hancock 2 (0.9%)
+ Peter Geis 2 (0.9%)
+ Andrejs Cainikovs 2 (0.9%)
+ Samuel Holland 2 (0.9%)
+ Jonas Karlman 2 (0.9%)
+ Jagan Teki 2 (0.9%)
+ Simon Glass 1 (0.5%)
+ Mattijs Korpershoek 1 (0.5%)
+ Pali Rohár 1 (0.5%)
+ Michal Suchanek 1 (0.5%)
+ Anand Gadiyar 1 (0.5%)
+ Angelo Durgehello 1 (0.5%)
+ Nam Nguyen 1 (0.5%)
+ Steven Liu 1 (0.5%)
+ Sebastian Reichel 1 (0.5%)
+ Yifeng Zhao 1 (0.5%)
+ Ren Jianing 1 (0.5%)
+ Vladimir Oltean 1 (0.5%)
+ Jonas Schwöbel 1 (0.5%)
+ Shawn Guo 1 (0.5%)
+ Jason Zhu 1 (0.5%)
+ Jon Lin 1 (0.5%)
+ Sugar Zhang 1 (0.5%)
+ Valentine Barshak 1 (0.5%)
+ Jit Loon Lim 1 (0.5%)
+ Philippe Schenker 1 (0.5%)
+ Ilias Apalodimas 1 (0.5%)
+ Sjoerd Simons 1 (0.5%)
+ Tam Nguyen 1 (0.5%)
+ Ramin Khonsari 1 (0.5%)
+ Sergiu Moga 1 (0.5%)
+ Svyatoslav Ryhel 1 (0.5%)
+ Quentin Schulz 1 (0.5%)
+ ==================================== =====
+
+
+.. table:: Developers with the most reviews (total 767)
+ :widths: auto
+
+ ==================================== =====
+ Name Count
+ ==================================== =====
+ Simon Glass 225 (29.3%)
+ Kever Yang 112 (14.6%)
+ Fabio Estevam 49 (6.4%)
+ Tom Rini 33 (4.3%)
+ Patrice Chotard 33 (4.3%)
+ Marek Vasut 27 (3.5%)
+ Ramon Fried 22 (2.9%)
+ Stefan Roese 17 (2.2%)
+ Ilias Apalodimas 16 (2.1%)
+ Leo Yu-Chi Liang 15 (2.0%)
+ Rick Chen 15 (2.0%)
+ Heinrich Schuchardt 14 (1.8%)
+ Jagan Teki 14 (1.8%)
+ Patrick Delaunay 14 (1.8%)
+ Mattijs Korpershoek 13 (1.7%)
+ Jaehoon Chung 13 (1.7%)
+ Samuel Holland 12 (1.6%)
+ Heiko Schocher 9 (1.2%)
+ Neil Armstrong 8 (1.0%)
+ Vladimir Oltean 7 (0.9%)
+ Sean Anderson 7 (0.9%)
+ Bin Meng 6 (0.8%)
+ FRANJOU Stephane 6 (0.8%)
+ Claudiu Beznea 6 (0.8%)
+ Michael Trimarchi 5 (0.7%)
+ Peng Fan 5 (0.7%)
+ Jens Wiklander 5 (0.7%)
+ Yu Chien Peter Lin 4 (0.5%)
+ Andre Przywara 3 (0.4%)
+ Pali Rohár 3 (0.4%)
+ Viacheslav Mitrofanov 3 (0.4%)
+ Ye Li 3 (0.4%)
+ Dhruva Gole 3 (0.4%)
+ Marcel Ziswiler 2 (0.3%)
+ Oleksandr Suvorov 2 (0.3%)
+ Wei Liang Lim 2 (0.3%)
+ Eng Lee Teh 2 (0.3%)
+ Minkyu Kang 2 (0.3%)
+ Tudor Ambarus 2 (0.3%)
+ Philipp Tomsich 2 (0.3%)
+ Etienne Carriere 2 (0.3%)
+ Masahisa Kojima 2 (0.3%)
+ Eugen Hristev 2 (0.3%)
+ Francesco Dolcini 1 (0.1%)
+ Michal Simek 1 (0.1%)
+ Jonas Karlman 1 (0.1%)
+ Nishanth Menon 1 (0.1%)
+ Siddharth Vadapalli 1 (0.1%)
+ Matthias Brugger 1 (0.1%)
+ Chia-Wei Wang 1 (0.1%)
+ Huang Jianan 1 (0.1%)
+ Oliver Graute 1 (0.1%)
+ Pratyush Yadav 1 (0.1%)
+ Soeren Moch 1 (0.1%)
+ Sunil V L 1 (0.1%)
+ Miquel Raynal 1 (0.1%)
+ Hector Palacios 1 (0.1%)
+ Derald Woods 1 (0.1%)
+ Nick Desaulniers 1 (0.1%)
+ Frieder Schrempf 1 (0.1%)
+ Adam Ford 1 (0.1%)
+ Sumit Garg 1 (0.1%)
+ Christophe Leroy 1 (0.1%)
+ ==================================== =====
+
+
+.. table:: Developers with the most test credits (total 78)
+ :widths: auto
+
+ ==================================== =====
+ Name Count
+ ==================================== =====
+ Svyatoslav Ryhel 12 (15.4%)
+ Andreas Westman Dorcsak 11 (14.1%)
+ Thierry Reding 9 (11.5%)
+ Robert Eckelmann 8 (10.3%)
+ Samuel Holland 6 (7.7%)
+ Vagrant Cascadian 3 (3.8%)
+ Jagan Teki 2 (2.6%)
+ Eugen Hristev 2 (2.6%)
+ Jonas Schwöbel 2 (2.6%)
+ Quentin Schulz 2 (2.6%)
+ Agneli 2 (2.6%)
+ Lothar Waßmann 2 (2.6%)
+ Simon Glass 1 (1.3%)
+ Fabio Estevam 1 (1.3%)
+ Ilias Apalodimas 1 (1.3%)
+ Rick Chen 1 (1.3%)
+ Patrick Delaunay 1 (1.3%)
+ Mattijs Korpershoek 1 (1.3%)
+ Andre Przywara 1 (1.3%)
+ Dhruva Gole 1 (1.3%)
+ Jonas Karlman 1 (1.3%)
+ Suniel Mahesh 1 (1.3%)
+ Sjoerd Simons 1 (1.3%)
+ Matwey V. Kornilov 1 (1.3%)
+ Anand Moon 1 (1.3%)
+ Vaishnav Achath 1 (1.3%)
+ Karsten Merker 1 (1.3%)
+ Sean Nyekjaer 1 (1.3%)
+ Mihai Sain 1 (1.3%)
+ ==================================== =====
+
+
+.. table:: Developers who gave the most tested-by credits (total 78)
+ :widths: auto
+
+ ==================================== =====
+ Name Count
+ ==================================== =====
+ Svyatoslav Ryhel 41 (52.6%)
+ Andre Przywara 6 (7.7%)
+ Tom Rini 5 (6.4%)
+ Simon Glass 4 (5.1%)
+ Jonas Karlman 3 (3.8%)
+ Loic Poulain 3 (3.8%)
+ Ramin Khonsari 2 (2.6%)
+ Jagan Teki 1 (1.3%)
+ Patrick Delaunay 1 (1.3%)
+ Dhruva Gole 1 (1.3%)
+ Sjoerd Simons 1 (1.3%)
+ Michael Trimarchi 1 (1.3%)
+ Etienne Carriere 1 (1.3%)
+ Peter Geis 1 (1.3%)
+ Sergiu Moga 1 (1.3%)
+ Maxim Schwalm 1 (1.3%)
+ Kasper Revsbech 1 (1.3%)
+ Neha Malcom Francis 1 (1.3%)
+ Fabrice Gasnier 1 (1.3%)
+ Maxim Cournoyer 1 (1.3%)
+ Sergei Antonov 1 (1.3%)
+ ==================================== =====
+
+
+.. table:: Developers with the most report credits (total 22)
+ :widths: auto
+
+ ==================================== =====
+ Name Count
+ ==================================== =====
+ Heinrich Schuchardt 3 (13.6%)
+ Ilias Apalodimas 2 (9.1%)
+ Patrick Delaunay 1 (4.5%)
+ Sjoerd Simons 1 (4.5%)
+ Samuel Holland 1 (4.5%)
+ Quentin Schulz 1 (4.5%)
+ Karsten Merker 1 (4.5%)
+ Marek Vasut 1 (4.5%)
+ Francesco Dolcini 1 (4.5%)
+ Nishanth Menon 1 (4.5%)
+ Oliver Graute 1 (4.5%)
+ Anand Gadiyar 1 (4.5%)
+ Philippe Schenker 1 (4.5%)
+ Andreas Schwab 1 (4.5%)
+ Stefan Herbrechtsmeier 1 (4.5%)
+ Carlos Rafael Giani 1 (4.5%)
+ Dave Jones 1 (4.5%)
+ Serge Bazanski 1 (4.5%)
+ Sam Winchenbach 1 (4.5%)
+ ==================================== =====
+
+
+.. table:: Developers who gave the most report credits (total 22)
+ :widths: auto
+
+ ==================================== =====
+ Name Count
+ ==================================== =====
+ Simon Glass 6 (27.3%)
+ Tom Rini 5 (22.7%)
+ Heinrich Schuchardt 3 (13.6%)
+ Qu Wenruo 2 (9.1%)
+ Ilias Apalodimas 1 (4.5%)
+ Maxim Cournoyer 1 (4.5%)
+ Fabio Estevam 1 (4.5%)
+ Vignesh Raghavendra 1 (4.5%)
+ Harald Seiler 1 (4.5%)
+ Sinthu Raja 1 (4.5%)
+ ==================================== =====
+
+
+.. table:: Top changeset contributors by employer
+ :widths: auto
+
+ ==================================== =====
+ Name Count
+ ==================================== =====
+ (Unknown) 524 (31.0%)
+ Google, Inc. 381 (22.5%)
+ Konsulko Group 333 (19.7%)
+ DENX Software Engineering 72 (4.3%)
+ Texas Instruments 49 (2.9%)
+ Linaro 47 (2.8%)
+ Edgeble AI Technologies Pvt. Ltd. 46 (2.7%)
+ ST Microelectronics 40 (2.4%)
+ AMD 34 (2.0%)
+ NXP 25 (1.5%)
+ Renesas Electronics 24 (1.4%)
+ Toradex 24 (1.4%)
+ Amarula Solutions 20 (1.2%)
+ Collabora Ltd. 20 (1.2%)
+ ARM 17 (1.0%)
+ Semihalf Embedded Systems 6 (0.4%)
+ Red Hat 4 (0.2%)
+ Siemens 4 (0.2%)
+ Socionext Inc. 4 (0.2%)
+ BayLibre SAS 3 (0.2%)
+ SUSE 3 (0.2%)
+ Pengutronix 2 (0.1%)
+ Ronetix 2 (0.1%)
+ Extreme Engineering Solutions 2 (0.1%)
+ Bootlin 1 (0.1%)
+ Intel 1 (0.1%)
+ linutronix 1 (0.1%)
+ Samsung 1 (0.1%)
+ Xilinx 1 (0.1%)
+ ==================================== =====
+
+
+.. table:: Top lines changed by employer
+ :widths: auto
+
+ ==================================== =====
+ Name Count
+ ==================================== =====
+ (Unknown) 64681 (30.1%)
+ Texas Instruments 42105 (19.6%)
+ Konsulko Group 36464 (17.0%)
+ Google, Inc. 30090 (14.0%)
+ Edgeble AI Technologies Pvt. Ltd. 23070 (10.7%)
+ Linaro 4601 (2.1%)
+ DENX Software Engineering 4582 (2.1%)
+ AMD 1741 (0.8%)
+ Amarula Solutions 1649 (0.8%)
+ ST Microelectronics 882 (0.4%)
+ Bootlin 860 (0.4%)
+ Renesas Electronics 775 (0.4%)
+ Socionext Inc. 760 (0.4%)
+ ARM 724 (0.3%)
+ Collabora Ltd. 413 (0.2%)
+ NXP 307 (0.1%)
+ Toradex 290 (0.1%)
+ Red Hat 214 (0.1%)
+ BayLibre SAS 154 (0.1%)
+ Extreme Engineering Solutions 106 (0.0%)
+ Semihalf Embedded Systems 47 (0.0%)
+ Siemens 43 (0.0%)
+ SUSE 34 (0.0%)
+ Pengutronix 13 (0.0%)
+ Samsung 9 (0.0%)
+ Ronetix 4 (0.0%)
+ Xilinx 3 (0.0%)
+ Intel 1 (0.0%)
+ linutronix 1 (0.0%)
+ ==================================== =====
+
+
+.. table:: Employers with the most signoffs (total 215)
+ :widths: auto
+
+ ==================================== =====
+ Name Count
+ ==================================== =====
+ (Unknown) 48 (22.3%)
+ Rockchip 29 (13.5%)
+ Toradex 28 (13.0%)
+ Amarula Solutions 24 (11.2%)
+ AMD 23 (10.7%)
+ NVidia 19 (8.8%)
+ Linaro 9 (4.2%)
+ Renesas Electronics 9 (4.2%)
+ Texas Instruments 5 (2.3%)
+ Konsulko Group 5 (2.3%)
+ NXP 4 (1.9%)
+ ARM 3 (1.4%)
+ Canonical 3 (1.4%)
+ Collabora Ltd. 2 (0.9%)
+ Google, Inc. 1 (0.5%)
+ BayLibre SAS 1 (0.5%)
+ SUSE 1 (0.5%)
+ Intel 1 (0.5%)
+ ==================================== =====
+
+
+.. table:: Employers with the most hackers (total 160)
+ :widths: auto
+
+ ==================================== =====
+ Name Count
+ ==================================== =====
+ (Unknown) 86 (53.8%)
+ Linaro 9 (5.6%)
+ Texas Instruments 8 (5.0%)
+ AMD 6 (3.8%)
+ Collabora Ltd. 6 (3.8%)
+ Toradex 5 (3.1%)
+ DENX Software Engineering 5 (3.1%)
+ Amarula Solutions 4 (2.5%)
+ NXP 4 (2.5%)
+ ARM 3 (1.9%)
+ ST Microelectronics 3 (1.9%)
+ Renesas Electronics 2 (1.2%)
+ SUSE 2 (1.2%)
+ Socionext Inc. 2 (1.2%)
+ Konsulko Group 1 (0.6%)
+ Google, Inc. 1 (0.6%)
+ BayLibre SAS 1 (0.6%)
+ Intel 1 (0.6%)
+ Edgeble AI Technologies Pvt. Ltd. 1 (0.6%)
+ Bootlin 1 (0.6%)
+ Red Hat 1 (0.6%)
+ Extreme Engineering Solutions 1 (0.6%)
+ Semihalf Embedded Systems 1 (0.6%)
+ Siemens 1 (0.6%)
+ Pengutronix 1 (0.6%)
+ Samsung 1 (0.6%)
+ Ronetix 1 (0.6%)
+ Xilinx 1 (0.6%)
+ linutronix 1 (0.6%)
+ ==================================== =====
+
diff --git a/drivers/ram/rockchip/sdram_rk3399.c b/drivers/ram/rockchip/sdram_rk3399.c
index b1fea04..963a05c 100644
--- a/drivers/ram/rockchip/sdram_rk3399.c
+++ b/drivers/ram/rockchip/sdram_rk3399.c
@@ -2954,7 +2954,7 @@
params->ch[ch].cap_info.rank = rank;
}
-#if defined(CONFIG_RAM_RK3399_LPDDR4)
+#if defined(CONFIG_RAM_ROCKCHIP_LPDDR4)
/* LPDDR4 needs to be trained at 400MHz */
lpddr4_set_rate(dram, params, 0);
params->base.ddr_freq = dfs_cfgs_lpddr4[0].base.ddr_freq / MHz;
diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig
index ad484ce..a801412 100644
--- a/drivers/scsi/Kconfig
+++ b/drivers/scsi/Kconfig
@@ -26,7 +26,7 @@
This is deprecated. An AHCI driver should be provided instead.
config SYS_SCSI_MAX_SCSI_ID
- int "Maximum supporedt SCSI ID"
+ int "Maximum supported SCSI ID"
default 1
help
Sets the maximum number of SCSI IDs to scan when looking for devices.
diff --git a/drivers/sysreset/sysreset_gpio.c b/drivers/sysreset/sysreset_gpio.c
index dfca10c..de42b59 100644
--- a/drivers/sysreset/sysreset_gpio.c
+++ b/drivers/sysreset/sysreset_gpio.c
@@ -17,6 +17,7 @@
static int gpio_reboot_request(struct udevice *dev, enum sysreset_t type)
{
struct gpio_reboot_priv *priv = dev_get_priv(dev);
+ int ret;
/*
* When debug log is enabled please make sure that chars won't end up
@@ -26,7 +27,11 @@
debug("GPIO reset\n");
/* Writing 1 respects polarity (active high/low) based on gpio->flags */
- return dm_gpio_set_value(&priv->gpio, 1);
+ ret = dm_gpio_set_value(&priv->gpio, 1);
+ if (ret < 0)
+ return ret;
+
+ return -EINPROGRESS;
}
static struct sysreset_ops gpio_reboot_ops = {
diff --git a/include/cli.h b/include/cli.h
index c777c90..094a660 100644
--- a/include/cli.h
+++ b/include/cli.h
@@ -98,8 +98,8 @@
*
* @prompt: Prompt to display
* @buffer: Place to put the line that is entered
- * @timeout: Timeout in milliseconds, 0 if none
- * Return: command line length excluding terminator, or -ve on error: of the
+ * @timeout: Timeout in seconds, 0 if none
+ * Return: command line length excluding terminator, or -ve on error: if the
* timeout is exceeded (either CONFIG_BOOT_RETRY_TIME or the timeout
* parameter), then -2 is returned. If a break is detected (Ctrl-C) then
* -1 is returned.
diff --git a/include/configs/imx8mn_bsh_smm_s2.h b/include/configs/imx8mn_bsh_smm_s2.h
index e97b8e8..deeed9c 100644
--- a/include/configs/imx8mn_bsh_smm_s2.h
+++ b/include/configs/imx8mn_bsh_smm_s2.h
@@ -14,7 +14,7 @@
#include <config_distro_bootcmd.h>
#define NANDARGS \
- "nandargs=setenv bootargs console=${console} " \
+ "nandargs=setenv bootargs " \
"${optargs} " \
"mtdparts=${mtdparts} " \
"root=${nandroot} " \
diff --git a/include/efi_api.h b/include/efi_api.h
index c4512ee..dc6e5ce 100644
--- a/include/efi_api.h
+++ b/include/efi_api.h
@@ -604,6 +604,7 @@
# define DEVICE_PATH_SUB_TYPE_MSG_MAC_ADDR 0x0b
# define DEVICE_PATH_SUB_TYPE_MSG_UART 0x0e
# define DEVICE_PATH_SUB_TYPE_MSG_USB_CLASS 0x0f
+# define DEVICE_PATH_SUB_TYPE_MSG_USB_WWI 0x10
# define DEVICE_PATH_SUB_TYPE_MSG_SATA 0x12
# define DEVICE_PATH_SUB_TYPE_MSG_NVME 0x17
# define DEVICE_PATH_SUB_TYPE_MSG_URI 0x18
diff --git a/lib/efi_loader/efi_device_path.c b/lib/efi_loader/efi_device_path.c
index d5cc495..ea09783 100644
--- a/lib/efi_loader/efi_device_path.c
+++ b/lib/efi_loader/efi_device_path.c
@@ -110,17 +110,13 @@
/**
* efi_dp_shorten() - shorten device-path
*
- * We can have device paths that start with a USB WWID or a USB Class node,
- * and a few other cases which don't encode the full device path with bus
- * hierarchy:
+ * When creating a short boot option we want to use a device-path that is
+ * independent of the location where the block device is plugged in.
*
- * * MESSAGING:USB_WWID
- * * MESSAGING:USB_CLASS
- * * MEDIA:FILE_PATH
- * * MEDIA:HARD_DRIVE
- * * MESSAGING:URI
+ * UsbWwi() nodes contain a serial number, hard drive paths a partition
+ * UUID. Both should be unique.
*
- * See UEFI spec (section 3.1.2, about short-form device-paths)
+ * See UEFI spec, section 3.1.2 for "short-form device path".
*
* @dp: original device-path
* @Return: shortened device-path or NULL
@@ -128,12 +124,7 @@
struct efi_device_path *efi_dp_shorten(struct efi_device_path *dp)
{
while (dp) {
- /*
- * TODO: Add MESSAGING:USB_WWID and MESSAGING:URI..
- * in practice fallback.efi just uses MEDIA:HARD_DRIVE
- * so not sure when we would see these other cases.
- */
- if (EFI_DP_TYPE(dp, MESSAGING_DEVICE, MSG_USB) ||
+ if (EFI_DP_TYPE(dp, MESSAGING_DEVICE, MSG_USB_WWI) ||
EFI_DP_TYPE(dp, MEDIA_DEVICE, HARD_DRIVE_PATH) ||
EFI_DP_TYPE(dp, MEDIA_DEVICE, FILE_PATH))
return dp;
@@ -735,7 +726,7 @@
#endif
#if defined(CONFIG_USB)
case UCLASS_MASS_STORAGE: {
- struct blk_desc *desc = desc = dev_get_uclass_plat(dev);
+ struct blk_desc *desc = dev_get_uclass_plat(dev);
struct efi_device_path_controller *dp =
dp_fill(buf, dev->parent);
diff --git a/test/common/Makefile b/test/common/Makefile
index cc918f6..a5ab10f 100644
--- a/test/common/Makefile
+++ b/test/common/Makefile
@@ -3,3 +3,4 @@
obj-$(CONFIG_AUTOBOOT) += test_autoboot.o
obj-$(CONFIG_CYCLIC) += cyclic.o
obj-$(CONFIG_EVENT) += event.o
+obj-y += cread.o
diff --git a/test/common/cread.c b/test/common/cread.c
new file mode 100644
index 0000000..2fdd29a
--- /dev/null
+++ b/test/common/cread.c
@@ -0,0 +1,93 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Copyright 2023 Google LLC
+ */
+
+#include <common.h>
+#include <cli.h>
+#include <test/common.h>
+#include <test/test.h>
+#include <test/ut.h>
+
+static int cli_ch_test(struct unit_test_state *uts)
+{
+ struct cli_ch_state s_cch, *cch = &s_cch;
+
+ cli_ch_init(cch);
+
+ /* should be nothing to return at first */
+ ut_asserteq(0, cli_ch_process(cch, 0));
+
+ /* check normal entry */
+ ut_asserteq('a', cli_ch_process(cch, 'a'));
+ ut_asserteq('b', cli_ch_process(cch, 'b'));
+ ut_asserteq('c', cli_ch_process(cch, 'c'));
+ ut_asserteq(0, cli_ch_process(cch, 0));
+
+ /* send an invalid escape sequence */
+ ut_asserteq(0, cli_ch_process(cch, '\e'));
+ ut_asserteq(0, cli_ch_process(cch, '['));
+
+ /*
+ * with the next char it sees that the sequence is invalid, so starts
+ * emitting it
+ */
+ ut_asserteq('\e', cli_ch_process(cch, 'X'));
+
+ /* now we set 0 bytes to empty the buffer */
+ ut_asserteq('[', cli_ch_process(cch, 0));
+ ut_asserteq('X', cli_ch_process(cch, 0));
+ ut_asserteq(0, cli_ch_process(cch, 0));
+
+ /* things are normal again */
+ ut_asserteq('a', cli_ch_process(cch, 'a'));
+ ut_asserteq(0, cli_ch_process(cch, 0));
+
+ return 0;
+}
+COMMON_TEST(cli_ch_test, 0);
+
+static int cread_test(struct unit_test_state *uts)
+{
+ int duration;
+ ulong start;
+ char buf[10];
+
+ /*
+ * useful for debugging
+ *
+ * gd->flags &= ~GD_FLG_RECORD;
+ * print_buffer(0, buf, 1, 7, 0);
+ */
+
+ console_record_reset_enable();
+
+ /* simple input */
+ *buf = '\0';
+ ut_asserteq(4, console_in_puts("abc\n"));
+ ut_asserteq(3, cli_readline_into_buffer("-> ", buf, 1));
+ ut_asserteq_str("abc", buf);
+
+ /* try an escape sequence (cursor left after the 'c') */
+ *buf = '\0';
+ ut_asserteq(8, console_in_puts("abc\e[Dx\n"));
+ ut_asserteq(4, cli_readline_into_buffer("-> ", buf, 1));
+ ut_asserteq_str("abxc", buf);
+
+ /* invalid escape sequence */
+ *buf = '\0';
+ ut_asserteq(8, console_in_puts("abc\e[Xx\n"));
+ ut_asserteq(7, cli_readline_into_buffer("-> ", buf, 1));
+ ut_asserteq_str("abc\e[Xx", buf);
+
+ /* check timeout, should be between 1000 and 1050ms */
+ start = get_timer(0);
+ *buf = '\0';
+ ut_asserteq(-2, cli_readline_into_buffer("-> ", buf, 1));
+ duration = get_timer(start) - 1000;
+ ut_assert(duration >= 0);
+ ut_assert(duration < 50);
+
+ return 0;
+}
+COMMON_TEST(cread_test, 0);
diff --git a/tools/buildman/toolchain.py b/tools/buildman/toolchain.py
index 241e8e6..0ecd845 100644
--- a/tools/buildman/toolchain.py
+++ b/tools/buildman/toolchain.py
@@ -421,7 +421,7 @@
Returns:
Resolved string
- >>> bsettings.Setup()
+ >>> bsettings.Setup(None)
>>> tcs = Toolchains()
>>> tcs.Add('fred', False)
>>> var_dict = {'oblique' : 'OBLIQUE', 'first' : 'fi${second}rst', \