:orphan:

Release Statistics for U-Boot v2021.10
======================================

* Processed 1509 changesets from 176 developers

* 28 employers found

* A total of 98664 lines added, 74614 removed (delta 24050)

.. table:: Developers with the most changesets
   :widths: auto

   =================================  =====
   Name                               Count
   =================================  =====
   Simon Glass                        191 (12.7%)
   Tom Rini                           92 (6.1%)
   Michal Simek                       91 (6.0%)
   Pali Rohár                         80 (5.3%)
   Patrick Delaunay                   70 (4.6%)
   Tim Harvey                         54 (3.6%)
   Heinrich Schuchardt                51 (3.4%)
   Marek Vasut                        38 (2.5%)
   Aswath Govindraju                  37 (2.5%)
   Alexandru Gagniuc                  29 (1.9%)
   Marek Behún                        26 (1.7%)
   Bin Meng                           26 (1.7%)
   Ye Li                              26 (1.7%)
   Pratyush Yadav                     26 (1.7%)
   Peng Fan                           25 (1.7%)
   Tero Kristo                        22 (1.5%)
   Stephan Gerhold                    21 (1.4%)
   Andre Przywara                     20 (1.3%)
   Tony Dinh                          19 (1.3%)
   Ashok Reddy Soma                   18 (1.2%)
   Mattijs Korpershoek                18 (1.2%)
   Masami Hiramatsu                   18 (1.2%)
   Zong Li                            16 (1.1%)
   Siew Chin Lim                      15 (1.0%)
   Gireesh Hiremath                   15 (1.0%)
   Suman Anna                         13 (0.9%)
   Sean Anderson                      12 (0.8%)
   Kishon Vijay Abraham I             12 (0.8%)
   Masahisa Kojima                    10 (0.7%)
   Teresa Remmet                      10 (0.7%)
   Takahiro Kuwano                    10 (0.7%)
   T Karthik Reddy                    9 (0.6%)
   Artem Lapkin                       9 (0.6%)
   Alper Nebi Yasak                   9 (0.6%)
   Trevor Woerner                     9 (0.6%)
   Rasmus Villemoes                   8 (0.5%)
   Kuldeep Singh                      8 (0.5%)
   Fabio Estevam                      8 (0.5%)
   Steffen Jaeckel                    8 (0.5%)
   Vignesh Raghavendra                8 (0.5%)
   Stephen Carlson                    8 (0.5%)
   Dario Binacchi                     8 (0.5%)
   Samuel Holland                     7 (0.5%)
   Adam Ford                          7 (0.5%)
   Kunihiko Hayashi                   7 (0.5%)
   Vladimir Oltean                    7 (0.5%)
   Dave Gerlach                       6 (0.4%)
   Roland Gaudig                      6 (0.4%)
   AKASHI Takahiro                    6 (0.4%)
   Daniel Schwierzeck                 6 (0.4%)
   Gowtham Tammana                    6 (0.4%)
   Lokesh Vutla                       5 (0.3%)
   Priyanka Jain                      5 (0.3%)
   Wasim Khan                         5 (0.3%)
   Chris Morgan                       5 (0.3%)
   Johan Jonker                       5 (0.3%)
   Eugen Hristev                      5 (0.3%)
   Hai Pham                           5 (0.3%)
   Joseph Chen                        5 (0.3%)
   Grzegorz Szymaszek                 5 (0.3%)
   Patrice Chotard                    4 (0.3%)
   Ilias Apalodimas                   4 (0.3%)
   Matthias Schiffer                  4 (0.3%)
   Oleksandr Suvorov                  4 (0.3%)
   Michael Walle                      4 (0.3%)
   Matwey V. Kornilov                 4 (0.3%)
   Paul Barker                        4 (0.3%)
   Nandor Han                         4 (0.3%)
   Yifeng Zhao                        4 (0.3%)
   Frieder Schrempf                   4 (0.3%)
   Andy Shevchenko                    3 (0.2%)
   Tien Fong Chee                     3 (0.2%)
   Sebastian Reichel                  3 (0.2%)
   Camelia Groza                      3 (0.2%)
   Peter Robinson                     3 (0.2%)
   Xiaobo Tian                        3 (0.2%)
   John Keeping                       3 (0.2%)
   Reto Schneider                     3 (0.2%)
   Joao Marcos Costa                  3 (0.2%)
   Moses Christopher                  3 (0.2%)
   Tianrui Wei                        3 (0.2%)
   Jassi Brar                         3 (0.2%)
   Zhengxun                           3 (0.2%)
   Anand Moon                         3 (0.2%)
   Ilko Iliev                         3 (0.2%)
   Marek Szyprowski                   2 (0.1%)
   Matthias Brugger                   2 (0.1%)
   Mark Kettenis                      2 (0.1%)
   Roger Quadros                      2 (0.1%)
   Stefan Agner                       2 (0.1%)
   Raju Kumar Pothuraju               2 (0.1%)
   Oleh Kravchenko                    2 (0.1%)
   Dimitri John Ledkov                2 (0.1%)
   Guillaume La Roque                 2 (0.1%)
   Ming Liu                           2 (0.1%)
   Adarsh Babu Kalepalli              2 (0.1%)
   Thomas Perrot                      2 (0.1%)
   Jean-Jacques Hiblot                2 (0.1%)
   Piyush Mehta                       2 (0.1%)
   Chen Baozi                         2 (0.1%)
   Peter Hoyes                        2 (0.1%)
   Anders Dellien                     2 (0.1%)
   Lukasz Majewski                    2 (0.1%)
   Cosmin-Florin Aluchenesei          2 (0.1%)
   Vincent Chen                       2 (0.1%)
   Breno Lima                         2 (0.1%)
   MengLi                             2 (0.1%)
   Keerthy                            2 (0.1%)
   Sheep Sun                          2 (0.1%)
   Koji Matsuoka                      2 (0.1%)
   Elaine Zhang                       2 (0.1%)
   Tudor Ambarus                      2 (0.1%)
   Nicolas Saenz Julienne             1 (0.1%)
   Robert Marko                       1 (0.1%)
   Denis Odintsov                     1 (0.1%)
   Ruchika Gupta                      1 (0.1%)
   Simon Guinot                       1 (0.1%)
   Martyn Welch                       1 (0.1%)
   Nishanth Menon                     1 (0.1%)
   Jan Kiszka                         1 (0.1%)
   Christophe Leroy                   1 (0.1%)
   Ivan T. Ivanov                     1 (0.1%)
   Yuan Fang                          1 (0.1%)
   Marcel Ziswiler                    1 (0.1%)
   Derald D. Woods                    1 (0.1%)
   Yuezhang Mo                        1 (0.1%)
   Sven Auhagen                       1 (0.1%)
   Thomas Skibo                       1 (0.1%)
   Sai Krishna Potthuri               1 (0.1%)
   Ley Foon Tan                       1 (0.1%)
   Horia Geantă                       1 (0.1%)
   Kshitiz Varshney                   1 (0.1%)
   Jon Lin                            1 (0.1%)
   Johan Gunnarsson                   1 (0.1%)
   Alex Bee                           1 (0.1%)
   Christian Hewitt                   1 (0.1%)
   Campbell Suter                     1 (0.1%)
   Linus Walleij                      1 (0.1%)
   Icenowy Zheng                      1 (0.1%)
   Chris Packham                      1 (0.1%)
   litchipi                           1 (0.1%)
   Marc Kleine-Budde                  1 (0.1%)
   Chan, Donald                       1 (0.1%)
   Alan Douglas                       1 (0.1%)
   Faiz Abbas                         1 (0.1%)
   Manish Narani                      1 (0.1%)
   Mike Looijmans                     1 (0.1%)
   Ricardo Salveti                    1 (0.1%)
   Chia-Wei Wang                      1 (0.1%)
   Patrick Wildt                      1 (0.1%)
   Etienne Carriere                   1 (0.1%)
   Chen Guanqiao                      1 (0.1%)
   Vitaly Wool                        1 (0.1%)
   Alfonso Sánchez-Beato              1 (0.1%)
   Max Yang                           1 (0.1%)
   Joel Stanley                       1 (0.1%)
   Sven Roederer                      1 (0.1%)
   Yann Dirson                        1 (0.1%)
   Stefano Babic                      1 (0.1%)
   Cody Gray                          1 (0.1%)
   Kacper Kubkowski                   1 (0.1%)
   Christoph Niedermaier              1 (0.1%)
   Jernej Skrabec                     1 (0.1%)
   Yu-Tung Chang                      1 (0.1%)
   Paul Kocialkowski                  1 (0.1%)
   Sinan Akman                        1 (0.1%)
   Green Wan                          1 (0.1%)
   Radu Pirea (NXP OSS)               1 (0.1%)
   Jaime Liao                         1 (0.1%)
   Srinivas Neeli                     1 (0.1%)
   Stefano Stabellini                 1 (0.1%)
   Jorge Ramirez-Ortiz                1 (0.1%)
   Daniil Stas                        1 (0.1%)
   Michael Opdenacker                 1 (0.1%)
   Kevin Scholz                       1 (0.1%)
   Kai Stuhlemmer (ebee Engineering)  1 (0.1%)
   =================================  =====


.. table:: Developers with the most changed lines
   :widths: auto

   =================================  =====
   Name                               Count
   =================================  =====
   Tom Rini                           48665 (30.6%)
   Simon Glass                        14052 (8.8%)
   Peng Fan                           8037 (5.1%)
   Marek Vasut                        6463 (4.1%)
   Joseph Chen                        5161 (3.2%)
   Tim Harvey                         4466 (2.8%)
   Elaine Zhang                       4389 (2.8%)
   Zong Li                            3994 (2.5%)
   Patrick Delaunay                   3410 (2.1%)
   Aswath Govindraju                  3202 (2.0%)
   Michal Simek                       2657 (1.7%)
   Tien Fong Chee                     2547 (1.6%)
   Masami Hiramatsu                   2163 (1.4%)
   Tero Kristo                        2122 (1.3%)
   Siew Chin Lim                      1925 (1.2%)
   Pratyush Yadav                     1906 (1.2%)
   Ye Li                              1793 (1.1%)
   Sean Anderson                      1790 (1.1%)
   Yifeng Zhao                        1658 (1.0%)
   Stephan Gerhold                    1643 (1.0%)
   Peter Robinson                     1578 (1.0%)
   Dave Gerlach                       1550 (1.0%)
   Ashok Reddy Soma                   1456 (0.9%)
   Pali Rohár                         1432 (0.9%)
   Trevor Woerner                     1352 (0.8%)
   Steffen Jaeckel                    1326 (0.8%)
   Alexandru Gagniuc                  1220 (0.8%)
   Adam Ford                          1187 (0.7%)
   Jean-Jacques Hiblot                1174 (0.7%)
   Roland Gaudig                      1120 (0.7%)
   Tianrui Wei                        1029 (0.6%)
   Jassi Brar                         938 (0.6%)
   Nandor Han                         933 (0.6%)
   Keerthy                            931 (0.6%)
   Chris Morgan                       800 (0.5%)
   Kunihiko Hayashi                   781 (0.5%)
   Lokesh Vutla                       778 (0.5%)
   Alan Douglas                       760 (0.5%)
   Zhengxun                           754 (0.5%)
   Paul Barker                        730 (0.5%)
   Andre Przywara                     706 (0.4%)
   Linus Walleij                      667 (0.4%)
   Johan Jonker                       643 (0.4%)
   Vignesh Raghavendra                642 (0.4%)
   Hai Pham                           622 (0.4%)
   Heinrich Schuchardt                599 (0.4%)
   Tony Dinh                          584 (0.4%)
   Marek Behún                        573 (0.4%)
   Masahisa Kojima                    517 (0.3%)
   Ilias Apalodimas                   482 (0.3%)
   Dario Binacchi                     479 (0.3%)
   Fabio Estevam                      457 (0.3%)
   Kishon Vijay Abraham I             456 (0.3%)
   Joao Marcos Costa                  452 (0.3%)
   Teresa Remmet                      450 (0.3%)
   T Karthik Reddy                    406 (0.3%)
   Stephen Carlson                    398 (0.3%)
   Radu Pirea (NXP OSS)               368 (0.2%)
   Takahiro Kuwano                    358 (0.2%)
   Samuel Holland                     339 (0.2%)
   Sebastian Reichel                  314 (0.2%)
   Gireesh Hiremath                   301 (0.2%)
   Daniel Schwierzeck                 274 (0.2%)
   Alper Nebi Yasak                   254 (0.2%)
   Bin Meng                           226 (0.1%)
   Kevin Scholz                       220 (0.1%)
   Jorge Ramirez-Ortiz                218 (0.1%)
   Suman Anna                         214 (0.1%)
   Mattijs Korpershoek                206 (0.1%)
   Kuldeep Singh                      187 (0.1%)
   Vladimir Oltean                    135 (0.1%)
   Ilko Iliev                         134 (0.1%)
   Wasim Khan                         129 (0.1%)
   Artem Lapkin                       121 (0.1%)
   Michael Walle                      110 (0.1%)
   Yu-Tung Chang                      106 (0.1%)
   Guillaume La Roque                 81 (0.1%)
   Moses Christopher                  76 (0.0%)
   Vincent Chen                       75 (0.0%)
   Sinan Akman                        73 (0.0%)
   AKASHI Takahiro                    70 (0.0%)
   Koji Matsuoka                      65 (0.0%)
   Patrice Chotard                    62 (0.0%)
   Matwey V. Kornilov                 60 (0.0%)
   Rasmus Villemoes                   57 (0.0%)
   Eugen Hristev                      57 (0.0%)
   Roger Quadros                      55 (0.0%)
   Gowtham Tammana                    48 (0.0%)
   Jaime Liao                         46 (0.0%)
   Etienne Carriere                   44 (0.0%)
   Matthias Schiffer                  42 (0.0%)
   Priyanka Jain                      41 (0.0%)
   Derald D. Woods                    40 (0.0%)
   Frieder Schrempf                   39 (0.0%)
   Matthias Brugger                   37 (0.0%)
   Breno Lima                         37 (0.0%)
   Peter Hoyes                        36 (0.0%)
   Andy Shevchenko                    35 (0.0%)
   Jon Lin                            32 (0.0%)
   Grzegorz Szymaszek                 30 (0.0%)
   Manish Narani                      30 (0.0%)
   Piyush Mehta                       28 (0.0%)
   Kshitiz Varshney                   27 (0.0%)
   Yann Dirson                        27 (0.0%)
   Oleksandr Suvorov                  25 (0.0%)
   Lukasz Majewski                    24 (0.0%)
   Ruchika Gupta                      24 (0.0%)
   Camelia Groza                      22 (0.0%)
   Xiaobo Tian                        22 (0.0%)
   Stefan Agner                       21 (0.0%)
   Michael Opdenacker                 21 (0.0%)
   Sai Krishna Potthuri               20 (0.0%)
   Kai Stuhlemmer (ebee Engineering)  19 (0.0%)
   Nishanth Menon                     18 (0.0%)
   Marcel Ziswiler                    18 (0.0%)
   Oleh Kravchenko                    17 (0.0%)
   Reto Schneider                     16 (0.0%)
   MengLi                             16 (0.0%)
   Chris Packham                      16 (0.0%)
   litchipi                           16 (0.0%)
   Daniil Stas                        15 (0.0%)
   Ming Liu                           13 (0.0%)
   Marc Kleine-Budde                  13 (0.0%)
   Paul Kocialkowski                  13 (0.0%)
   John Keeping                       11 (0.0%)
   Anand Moon                         9 (0.0%)
   Tudor Ambarus                      9 (0.0%)
   Alfonso Sánchez-Beato              9 (0.0%)
   Marek Szyprowski                   8 (0.0%)
   Raju Kumar Pothuraju               8 (0.0%)
   Chen Baozi                         8 (0.0%)
   Mark Kettenis                      6 (0.0%)
   Dimitri John Ledkov                6 (0.0%)
   Sheep Sun                          6 (0.0%)
   Denis Odintsov                     6 (0.0%)
   Ivan T. Ivanov                     6 (0.0%)
   Mike Looijmans                     6 (0.0%)
   Vitaly Wool                        6 (0.0%)
   Cosmin-Florin Aluchenesei          5 (0.0%)
   Kacper Kubkowski                   5 (0.0%)
   Adarsh Babu Kalepalli              4 (0.0%)
   Sven Auhagen                       4 (0.0%)
   Ley Foon Tan                       4 (0.0%)
   Chia-Wei Wang                      4 (0.0%)
   Cody Gray                          4 (0.0%)
   Thomas Perrot                      3 (0.0%)
   Anders Dellien                     3 (0.0%)
   Martyn Welch                       3 (0.0%)
   Alex Bee                           3 (0.0%)
   Faiz Abbas                         3 (0.0%)
   Chen Guanqiao                      3 (0.0%)
   Jernej Skrabec                     3 (0.0%)
   Green Wan                          3 (0.0%)
   Robert Marko                       2 (0.0%)
   Jan Kiszka                         2 (0.0%)
   Yuezhang Mo                        2 (0.0%)
   Christian Hewitt                   2 (0.0%)
   Icenowy Zheng                      2 (0.0%)
   Patrick Wildt                      2 (0.0%)
   Max Yang                           2 (0.0%)
   Joel Stanley                       2 (0.0%)
   Sven Roederer                      2 (0.0%)
   Stefano Babic                      2 (0.0%)
   Christoph Niedermaier              2 (0.0%)
   Stefano Stabellini                 2 (0.0%)
   Nicolas Saenz Julienne             1 (0.0%)
   Simon Guinot                       1 (0.0%)
   Christophe Leroy                   1 (0.0%)
   Yuan Fang                          1 (0.0%)
   Thomas Skibo                       1 (0.0%)
   Horia Geantă                       1 (0.0%)
   Johan Gunnarsson                   1 (0.0%)
   Campbell Suter                     1 (0.0%)
   Chan, Donald                       1 (0.0%)
   Ricardo Salveti                    1 (0.0%)
   Srinivas Neeli                     1 (0.0%)
   =================================  =====


.. table:: Developers with the most lines removed
   :widths: auto

   =================================  =====
   Name                               Count
   =================================  =====
   Tom Rini                           46519 (62.3%)
   Simon Glass                        1414 (1.9%)
   Linus Walleij                      667 (0.9%)
   Patrick Delaunay                   331 (0.4%)
   Ilias Apalodimas                   293 (0.4%)
   Sean Anderson                      274 (0.4%)
   Ilko Iliev                         124 (0.2%)
   Stephen Carlson                    56 (0.1%)
   Suman Anna                         40 (0.1%)
   Derald D. Woods                    34 (0.0%)
   Xiaobo Tian                        20 (0.0%)
   Michael Walle                      15 (0.0%)
   Oleksandr Suvorov                  11 (0.0%)
   Lukasz Majewski                    5 (0.0%)
   Bin Meng                           2 (0.0%)
   Anand Moon                         2 (0.0%)
   Jan Kiszka                         2 (0.0%)
   Kai Stuhlemmer (ebee Engineering)  1 (0.0%)
   Ivan T. Ivanov                     1 (0.0%)
   Anders Dellien                     1 (0.0%)
   Yuezhang Mo                        1 (0.0%)
   =================================  =====


.. table:: Developers with the most signoffs (total 326)
   :widths: auto

   ================================  =====
   Name                              Count
   ================================  =====
   Lokesh Vutla                      108 (33.1%)
   Michal Simek                      37 (11.3%)
   Neil Armstrong                    28 (8.6%)
   Tom Rini                          13 (4.0%)
   Peng Fan                          12 (3.7%)
   Kishon Vijay Abraham I            10 (3.1%)
   Andre Przywara                    10 (3.1%)
   Alexandru Gagniuc                 8 (2.5%)
   Marek Vasut                       7 (2.1%)
   Heinrich Schuchardt               6 (1.8%)
   Tero Kristo                       6 (1.8%)
   Jon Lin                           5 (1.5%)
   Guillaume La Roque                5 (1.5%)
   Ashok Reddy Soma                  5 (1.5%)
   Oleksandr Suvorov                 4 (1.2%)
   Markus Niebel                     4 (1.2%)
   Matthias Brugger                  4 (1.2%)
   Vignesh Raghavendra               4 (1.2%)
   Minkyu Kang                       3 (0.9%)
   Dave Gerlach                      3 (0.9%)
   Masami Hiramatsu                  3 (0.9%)
   Aswath Govindraju                 3 (0.9%)
   David Abdurachmanov               2 (0.6%)
   Jagan Teki                        2 (0.6%)
   Jonathan Balkind                  2 (0.6%)
   Roger Quadros                     2 (0.6%)
   Mattijs Korpershoek               2 (0.6%)
   T Karthik Reddy                   2 (0.6%)
   Hai Pham                          2 (0.6%)
   Jean-Jacques Hiblot               2 (0.6%)
   Ye Li                             2 (0.6%)
   Siew Chin Lim                     2 (0.6%)
   Patrick Delaunay                  1 (0.3%)
   Suman Anna                        1 (0.3%)
   Jan Kiszka                        1 (0.3%)
   Tom Warren                        1 (0.3%)
   Kever Yang                        1 (0.3%)
   Timothée Cercueil                 1 (0.3%)
   Murali Karicheri                  1 (0.3%)
   Robert Jones                      1 (0.3%)
   Paul Walmsley                     1 (0.3%)
   Alessandro Temil                  1 (0.3%)
   Praneeth Bajjuri                  1 (0.3%)
   Priyanka Jain                     1 (0.3%)
   Nishanth Menon                    1 (0.3%)
   Tudor Ambarus                     1 (0.3%)
   Patrice Chotard                   1 (0.3%)
   Marek Behún                       1 (0.3%)
   Pratyush Yadav                    1 (0.3%)
   Tien Fong Chee                    1 (0.3%)
   ================================  =====


.. table:: Developers with the most reviews (total 832)
   :widths: auto

   ================================  =====
   Name                              Count
   ================================  =====
   Stefan Roese                      124 (14.9%)
   Simon Glass                       120 (14.4%)
   Patrice Chotard                   52 (6.2%)
   Jagan Teki                        50 (6.0%)
   Marek Behún                       45 (5.4%)
   Jaehoon Chung                     42 (5.0%)
   Ramon Fried                       38 (4.6%)
   Kever Yang                        36 (4.3%)
   Chris Packham                     31 (3.7%)
   Bin Meng                          30 (3.6%)
   Priyanka Jain                     28 (3.4%)
   Leo Yu-Chi Liang                  28 (3.4%)
   Heinrich Schuchardt               21 (2.5%)
   Heiko Schocher                    20 (2.4%)
   Patrick Delaunay                  13 (1.6%)
   Pali Rohár                        13 (1.6%)
   Sean Anderson                     11 (1.3%)
   Miquel Raynal                     11 (1.3%)
   Alexandru Gagniuc                 9 (1.1%)
   Linus Walleij                     9 (1.1%)
   Fabio Estevam                     9 (1.1%)
   Pratyush Yadav                    8 (1.0%)
   Tom Rini                          7 (0.8%)
   Andre Przywara                    7 (0.8%)
   Walter Lozano                     7 (0.8%)
   Rick Chen                         6 (0.7%)
   Patrick Wildt                     5 (0.6%)
   Neil Armstrong                    4 (0.5%)
   Ashok Reddy Soma                  4 (0.5%)
   Nishanth Menon                    4 (0.5%)
   Ilias Apalodimas                  4 (0.5%)
   Konstantin Porotchkin             4 (0.5%)
   Ye Li                             3 (0.4%)
   Suman Anna                        3 (0.4%)
   Igor Opaniuk                      3 (0.4%)
   Nicolas Saenz Julienne            2 (0.2%)
   Jernej Skrabec                    2 (0.2%)
   Mark Kettenis                     2 (0.2%)
   Marcel Ziswiler                   2 (0.2%)
   Peng Fan                          1 (0.1%)
   Masami Hiramatsu                  1 (0.1%)
   Andy Wu                           1 (0.1%)
   Asherah Connor                    1 (0.1%)
   Qu Wenruo                         1 (0.1%)
   Biju Bas                          1 (0.1%)
   Heiko Stuebner                    1 (0.1%)
   Jens Wiklander                    1 (0.1%)
   Horatiu Vultur                    1 (0.1%)
   Ley Foon Tan                      1 (0.1%)
   Daniel Schwierzeck                1 (0.1%)
   Sebastian Reichel                 1 (0.1%)
   Joao Marcos Costa                 1 (0.1%)
   Paul Barker                       1 (0.1%)
   Steffen Jaeckel                   1 (0.1%)
   ================================  =====


.. table:: Developers with the most test credits (total 67)
   :widths: auto

   ================================  =====
   Name                              Count
   ================================  =====
   Chris Packham                     26 (38.8%)
   Patrice Chotard                   14 (20.9%)
   Simon Glass                       10 (14.9%)
   Patrick Wildt                     3 (4.5%)
   Michal Simek                      2 (3.0%)
   Jaehoon Chung                     1 (1.5%)
   Pali Rohár                        1 (1.5%)
   Tom Rini                          1 (1.5%)
   Andre Przywara                    1 (1.5%)
   Suman Anna                        1 (1.5%)
   Igor Opaniuk                      1 (1.5%)
   Masami Hiramatsu                  1 (1.5%)
   Tudor Ambarus                     1 (1.5%)
   Derald D. Woods                   1 (1.5%)
   Sughosh Ganu                      1 (1.5%)
   Stefan Agner                      1 (1.5%)
   Keerthy                           1 (1.5%)
   ================================  =====


.. table:: Developers who gave the most tested-by credits (total 67)
   :widths: auto

   =================================  =====
   Name                               Count
   =================================  =====
   Pali Rohár                         24 (35.8%)
   Marek Behún                        13 (19.4%)
   Bin Meng                           7 (10.4%)
   Stephan Gerhold                    4 (6.0%)
   Ye Li                              3 (4.5%)
   Joao Marcos Costa                  3 (4.5%)
   Ashok Reddy Soma                   2 (3.0%)
   Ilias Apalodimas                   2 (3.0%)
   Alexandru Gagniuc                  1 (1.5%)
   Jernej Skrabec                     1 (1.5%)
   Dave Gerlach                       1 (1.5%)
   Aswath Govindraju                  1 (1.5%)
   Kai Stuhlemmer (ebee Engineering)  1 (1.5%)
   Kevin Scholz                       1 (1.5%)
   Marek Szyprowski                   1 (1.5%)
   Ming Liu                           1 (1.5%)
   Adam Ford                          1 (1.5%)
   =================================  =====


.. table:: Developers with the most report credits (total 10)
   :widths: auto

   ================================  =====
   Name                              Count
   ================================  =====
   Tom Rini                          3 (30.0%)
   Marek Behún                       1 (10.0%)
   Keerthy                           1 (10.0%)
   Walter Lozano                     1 (10.0%)
   Minkyu Kang                       1 (10.0%)
   Jan Kiszka                        1 (10.0%)
   Andreas Schwab                    1 (10.0%)
   Fu Wei                            1 (10.0%)
   ================================  =====


.. table:: Developers who gave the most report credits (total 10)
   :widths: auto

   ================================  =====
   Name                              Count
   ================================  =====
   Simon Glass                       4 (40.0%)
   Tom Rini                          3 (30.0%)
   Dave Gerlach                      1 (10.0%)
   Dimitri John Ledkov               1 (10.0%)
   Tianrui Wei                       1 (10.0%)
   ================================  =====


.. table:: Top changeset contributors by employer
   :widths: auto

   ==================================  =====
   Name                                Count
   ==================================  =====
   (Unknown)                           577 (38.2%)
   Google, Inc.                        191 (12.7%)
   Texas Instruments                   141 (9.3%)
   Konsulko Group                      93 (6.2%)
   AMD                                 91 (6.0%)
   NXP                                 86 (5.7%)
   ST Microelectronics                 74 (4.9%)
   Linaro                              44 (2.9%)
   DENX Software Engineering           43 (2.8%)
   Xilinx                              35 (2.3%)
   ARM                                 24 (1.6%)
   Intel                               21 (1.4%)
   BayLibre SAS                        20 (1.3%)
   Rockchip                            12 (0.8%)
   Phytec                              10 (0.7%)
   Renesas Electronics                 7 (0.5%)
   Socionext Inc.                      7 (0.5%)
   Toradex                             6 (0.4%)
   Weidmüller Interface GmbH & Co. KG  6 (0.4%)
   Bootlin                             4 (0.3%)
   Collabora Ltd.                      4 (0.3%)
   Ronetix                             3 (0.2%)
   SUSE                                3 (0.2%)
   Wind River                          2 (0.1%)
   Samsung                             2 (0.1%)
   Sony                                1 (0.1%)
   Pengutronix                         1 (0.1%)
   Siemens                             1 (0.1%)
   ==================================  =====


.. table:: Top lines changed by employer
   :widths: auto

   ==================================  =====
   Name                                Count
   ==================================  =====
   Konsulko Group                      48671 (30.6%)
   (Unknown)                           32467 (20.4%)
   Google, Inc.                        14052 (8.8%)
   Texas Instruments                   13223 (8.3%)
   Rockchip                            11240 (7.1%)
   NXP                                 10782 (6.8%)
   DENX Software Engineering           6493 (4.1%)
   Linaro                              4905 (3.1%)
   Intel                               4507 (2.8%)
   ST Microelectronics                 3472 (2.2%)
   AMD                                 2657 (1.7%)
   Xilinx                              1951 (1.2%)
   Weidmüller Interface GmbH & Co. KG  1120 (0.7%)
   Socionext Inc.                      781 (0.5%)
   ARM                                 745 (0.5%)
   Renesas Electronics                 687 (0.4%)
   Phytec                              450 (0.3%)
   Collabora Ltd.                      317 (0.2%)
   BayLibre SAS                        287 (0.2%)
   Ronetix                             134 (0.1%)
   Toradex                             69 (0.0%)
   SUSE                                43 (0.0%)
   Bootlin                             37 (0.0%)
   Wind River                          16 (0.0%)
   Pengutronix                         13 (0.0%)
   Samsung                             8 (0.0%)
   Sony                                2 (0.0%)
   Siemens                             2 (0.0%)
   ==================================  =====


.. table:: Employers with the most signoffs (total 326)
   :widths: auto

   =================================  =====
   Name                               Count
   =================================  =====
   Texas Instruments                  138 (42.3%)
   Xilinx                             44 (13.5%)
   (Unknown)                          39 (12.0%)
   BayLibre SAS                       35 (10.7%)
   NXP                                15 (4.6%)
   Konsulko Group                     13 (4.0%)
   ARM                                10 (3.1%)
   Rockchip                           6 (1.8%)
   Toradex                            4 (1.2%)
   SUSE                               4 (1.2%)
   Linaro                             3 (0.9%)
   Intel                              3 (0.9%)
   ST Microelectronics                3 (0.9%)
   Samsung                            3 (0.9%)
   Renesas Electronics                2 (0.6%)
   Amarula Solutions                  2 (0.6%)
   Siemens                            1 (0.3%)
   NVidia                             1 (0.3%)
   =================================  =====


.. table:: Employers with the most hackers (total 181)
   :widths: auto

   ==================================  =====
   Name                                Count
   ==================================  =====
   (Unknown)                           94 (51.9%)
   Texas Instruments                   15 (8.3%)
   NXP                                 12 (6.6%)
   Xilinx                              8 (4.4%)
   Linaro                              8 (4.4%)
   Rockchip                            4 (2.2%)
   Toradex                             4 (2.2%)
   DENX Software Engineering           4 (2.2%)
   ARM                                 3 (1.7%)
   Intel                               3 (1.7%)
   Bootlin                             3 (1.7%)
   BayLibre SAS                        2 (1.1%)
   Konsulko Group                      2 (1.1%)
   SUSE                                2 (1.1%)
   ST Microelectronics                 2 (1.1%)
   Renesas Electronics                 2 (1.1%)
   Collabora Ltd.                      2 (1.1%)
   Samsung                             1 (0.6%)
   Siemens                             1 (0.6%)
   Google, Inc.                        1 (0.6%)
   AMD                                 1 (0.6%)
   Weidmüller Interface GmbH & Co. KG  1 (0.6%)
   Socionext Inc.                      1 (0.6%)
   Phytec                              1 (0.6%)
   Ronetix                             1 (0.6%)
   Wind River                          1 (0.6%)
   Pengutronix                         1 (0.6%)
   Sony                                1 (0.6%)
   ==================================  =====
