:orphan:

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

* Processed 1675 changesets from 194 developers

* 28 employers found

* A total of 117874 lines added, 48394 removed (delta 69480)

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

   =================================  =====
   Name                               Count
   =================================  =====
   Simon Glass                        285 (17.0%)
   Heinrich Schuchardt                203 (12.1%)
   Patrick Delaunay                   85 (5.1%)
   Bin Meng                           59 (3.5%)
   Pali Rohár                         41 (2.4%)
   Tom Rini                           40 (2.4%)
   Dario Binacchi                     39 (2.3%)
   Biwen Li                           34 (2.0%)
   Claudiu Beznea                     27 (1.6%)
   Marek Vasut                        26 (1.6%)
   Andy Shevchenko                    26 (1.6%)
   Marek Szyprowski                   25 (1.5%)
   Weijie Gao                         25 (1.5%)
   Ovidiu Panait                      25 (1.5%)
   Marek Behún                        23 (1.4%)
   Michael Walle                      22 (1.3%)
   Michal Simek                       22 (1.3%)
   Eugen Hristev                      20 (1.2%)
   Jernej Skrabec                     20 (1.2%)
   Faiz Abbas                         20 (1.2%)
   Sean Anderson                      19 (1.1%)
   Andre Przywara                     17 (1.0%)
   Adam Ford                          16 (1.0%)
   Priyanka Jain                      15 (0.9%)
   Nicolas Saenz Julienne             15 (0.9%)
   Li Jun                             15 (0.9%)
   Sughosh Ganu                       15 (0.9%)
   AKASHI Takahiro                    15 (0.9%)
   Fabio Estevam                      14 (0.8%)
   Peng Fan                           14 (0.8%)
   Chee Hong Ang                      14 (0.8%)
   Siew Chin Lim                      13 (0.8%)
   Neil Armstrong                     13 (0.8%)
   Jaehoon Chung                      13 (0.8%)
   Ye Li                              13 (0.8%)
   Patrice Chotard                    12 (0.7%)
   Ilias Apalodimas                   11 (0.7%)
   Alexandru Gagniuc                  11 (0.7%)
   Matthias Brugger                   10 (0.6%)
   Stefan Roese                       8 (0.5%)
   Christian Hewitt                   8 (0.5%)
   Moti Buskila                       7 (0.4%)
   T Karthik Reddy                    7 (0.4%)
   Fabien Parent                      7 (0.4%)
   Padmarao Begari                    7 (0.4%)
   Igor Opaniuk                       6 (0.4%)
   Lokesh Vutla                       6 (0.4%)
   Minkyu Kang                        6 (0.4%)
   Rasmus Villemoes                   6 (0.4%)
   Harm Berntsen                      6 (0.4%)
   Aswath Govindraju                  6 (0.4%)
   Philippe Reynes                    6 (0.4%)
   Hou Zhiqiang                       5 (0.3%)
   Kuldeep Singh                      5 (0.3%)
   Aleksandar Gerasimovski            5 (0.3%)
   Eugeniu Rosca                      5 (0.3%)
   Alice Guo                          5 (0.3%)
   Chia-Wei, Wang                     5 (0.3%)
   Heiko Schocher                     4 (0.2%)
   Tim Harvey                         4 (0.2%)
   Klaus Heinrich Kiwi                4 (0.2%)
   Peter Robinson                     4 (0.2%)
   Niel Fourie                        4 (0.2%)
   David Lechner                      4 (0.2%)
   Dennis Gilmore                     4 (0.2%)
   Robert Marko                       4 (0.2%)
   Chris Packham                      3 (0.2%)
   Ley Foon Tan                       3 (0.2%)
   Chunfeng Yun                       3 (0.2%)
   Wasim Khan                         3 (0.2%)
   Alper Nebi Yasak                   3 (0.2%)
   Pragnesh Patel                     3 (0.2%)
   Alex Marginean                     3 (0.2%)
   Mathew McBride                     3 (0.2%)
   Kory Maincent                      3 (0.2%)
   Kever Yang                         3 (0.2%)
   Phil Sutter                        3 (0.2%)
   Andre Heider                       3 (0.2%)
   Joel Stanley                       3 (0.2%)
   Greg Gallagher                     3 (0.2%)
   Tudor Ambarus                      3 (0.2%)
   Holger Brunck                      3 (0.2%)
   Lad Prabhakar                      3 (0.2%)
   Nishanth Menon                     3 (0.2%)
   Vladimir Oltean                    2 (0.1%)
   Mark Kettenis                      2 (0.1%)
   Yannick Fertre                     2 (0.1%)
   Etienne Carriere                   2 (0.1%)
   Ramon Fried                        2 (0.1%)
   Rajesh Bhagat                      2 (0.1%)
   Oleksandr Suvorov                  2 (0.1%)
   Baruch Siach                       2 (0.1%)
   Alex Leibovich                     2 (0.1%)
   Roger Pau Monne                    2 (0.1%)
   Brandon Maier                      2 (0.1%)
   Sinan Akman                        2 (0.1%)
   Yuezhang Mo                        2 (0.1%)
   Jorge Ramirez-Ortiz                2 (0.1%)
   Vignesh Raghavendra                2 (0.1%)
   Jean-Philippe ROMAIN               2 (0.1%)
   Roman Kovalivskyi                  2 (0.1%)
   Gary Bisson                        2 (0.1%)
   Ravik Hasija                       2 (0.1%)
   Stanislav Pinchuk                  2 (0.1%)
   SkyLake.Huang                      2 (0.1%)
   Ying-Chun Liu (PaulLiu)            2 (0.1%)
   Marc Ferland                       2 (0.1%)
   Shawn Lin                          2 (0.1%)
   Hugh Cole-Baker                    2 (0.1%)
   Hongwei Zhang                      2 (0.1%)
   Kate Liu                           2 (0.1%)
   Vabhav Sharma                      2 (0.1%)
   Jerome Brunet                      2 (0.1%)
   Nicolas Ferre                      2 (0.1%)
   Philipp Tomsich                    2 (0.1%)
   Peter Bergin                       1 (0.1%)
   Andrey Zhizhikin                   1 (0.1%)
   Samuel Holland                     1 (0.1%)
   Jessica Clarke                     1 (0.1%)
   Maxim Kochetkov                    1 (0.1%)
   Frank Wunderlich                   1 (0.1%)
   schspa                             1 (0.1%)
   Daniel Golle                       1 (0.1%)
   Sujeet Baranwal                    1 (0.1%)
   Dalon Westergreen                  1 (0.1%)
   Stephen Carlson                    1 (0.1%)
   Bernhard Kirchen                   1 (0.1%)
   Bharat Gooty                       1 (0.1%)
   Haibo Chen                         1 (0.1%)
   Frieder Schrempf                   1 (0.1%)
   Stefan Brüns                       1 (0.1%)
   Reto Schneider                     1 (0.1%)
   Hauke Mehrtens                     1 (0.1%)
   heaterC                            1 (0.1%)
   Kostya Porotchkin                  1 (0.1%)
   Su Baocheng                        1 (0.1%)
   Diego Sueiro                       1 (0.1%)
   Vincent Stehlé                     1 (0.1%)
   Qu Wenruo                          1 (0.1%)
   Jesper Schmitz Mouridsen           1 (0.1%)
   Tobias Schramm                     1 (0.1%)
   Moses Christopher                  1 (0.1%)
   Stefan Bosch                       1 (0.1%)
   Claudiu Manoil                     1 (0.1%)
   Asherah Connor                     1 (0.1%)
   Fabrice GIRARDOT                   1 (0.1%)
   Nipun Gupta                        1 (0.1%)
   Zhao Qiang                         1 (0.1%)
   Ioana Ciornei                      1 (0.1%)
   Roman Stratiienko                  1 (0.1%)
   Suman Anna                         1 (0.1%)
   Ashok Reddy Soma                   1 (0.1%)
   Stephen Warren                     1 (0.1%)
   Ilies CHERGUI                      1 (0.1%)
   Seung-Woo Kim                      1 (0.1%)
   Guillermo Rodriguez                1 (0.1%)
   Biju Das                           1 (0.1%)
   Volodymyr Babchuk                  1 (0.1%)
   Alex Nemirovsky                    1 (0.1%)
   Abbie Chang                        1 (0.1%)
   Aaron Tseng                        1 (0.1%)
   Yang Liu                           1 (0.1%)
   Teresa Remmet                      1 (0.1%)
   Martin Fuzzey                      1 (0.1%)
   Han Xu                             1 (0.1%)
   Martin Hundebøll                   1 (0.1%)
   Kai Stuhlemmer (ebee Engineering)  1 (0.1%)
   David Bauer                        1 (0.1%)
   Campbell Suter                     1 (0.1%)
   Atish Patra                        1 (0.1%)
   David Wu                           1 (0.1%)
   David Rivshin                      1 (0.1%)
   Ian Ray                            1 (0.1%)
   Matthias Schiffer                  1 (0.1%)
   Ryan Chen                          1 (0.1%)
   Dylan Hung                         1 (0.1%)
   Florian Klink                      1 (0.1%)
   Steve Bennett                      1 (0.1%)
   Joel Peshkin                       1 (0.1%)
   Corneliu Doban                     1 (0.1%)
   Marcin Juszkiewicz                 1 (0.1%)
   Artem Lapkin                       1 (0.1%)
   Felix Brack                        1 (0.1%)
   Praneeth Bajjuri                   1 (0.1%)
   Tomas Novotny                      1 (0.1%)
   Icenowy Zheng                      1 (0.1%)
   Pascal Vizeli                      1 (0.1%)
   Stefan Agner                       1 (0.1%)
   Vikhyat Goyal                      1 (0.1%)
   Harini Katakam                     1 (0.1%)
   Siva Durga Prasad Paladugu         1 (0.1%)
   Adrian Fiergolski                  1 (0.1%)
   Lyle Franklin                      1 (0.1%)
   Anton Leontiev                     1 (0.1%)
   =================================  =====


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

   =================================  =====
   Name                               Count
   =================================  =====
   Tom Rini                           19605 (13.8%)
   Simon Glass                        17340 (12.2%)
   Heinrich Schuchardt                10305 (7.3%)
   Adam Ford                          6826 (4.8%)
   Dario Binacchi                     6048 (4.3%)
   Tim Harvey                         5842 (4.1%)
   Weijie Gao                         4501 (3.2%)
   Lokesh Vutla                       4408 (3.1%)
   Jernej Skrabec                     4219 (3.0%)
   Fabio Estevam                      4137 (2.9%)
   Peng Fan                           3871 (2.7%)
   Chia-Wei, Wang                     3182 (2.2%)
   Niel Fourie                        2917 (2.1%)
   Teresa Remmet                      2827 (2.0%)
   AKASHI Takahiro                    2634 (1.9%)
   Neil Armstrong                     2421 (1.7%)
   Padmarao Begari                    2101 (1.5%)
   Patrick Delaunay                   1799 (1.3%)
   Kate Liu                           1755 (1.2%)
   Christian Hewitt                   1731 (1.2%)
   Ryan Chen                          1574 (1.1%)
   Aaron Tseng                        1516 (1.1%)
   Dylan Hung                         1286 (0.9%)
   Marek Szyprowski                   1254 (0.9%)
   Fabien Parent                      1237 (0.9%)
   Sughosh Ganu                       1148 (0.8%)
   Chee Hong Ang                      1108 (0.8%)
   Shawn Lin                          1054 (0.7%)
   Ilias Apalodimas                   1015 (0.7%)
   Pali Rohár                         981 (0.7%)
   Sean Anderson                      813 (0.6%)
   Li Jun                             741 (0.5%)
   Siew Chin Lim                      737 (0.5%)
   Biju Das                           733 (0.5%)
   Michael Walle                      705 (0.5%)
   Bin Meng                           671 (0.5%)
   Claudiu Manoil                     666 (0.5%)
   Faiz Abbas                         653 (0.5%)
   Marek Vasut                        637 (0.4%)
   Eugen Hristev                      633 (0.4%)
   Igor Opaniuk                       630 (0.4%)
   SkyLake.Huang                      627 (0.4%)
   Ying-Chun Liu (PaulLiu)            594 (0.4%)
   Nicolas Saenz Julienne             565 (0.4%)
   Alex Marginean                     562 (0.4%)
   Andre Przywara                     539 (0.4%)
   Michal Simek                       533 (0.4%)
   Stephen Carlson                    519 (0.4%)
   David Bauer                        516 (0.4%)
   Biwen Li                           482 (0.3%)
   Andre Heider                       467 (0.3%)
   Ovidiu Panait                      456 (0.3%)
   Jerome Brunet                      455 (0.3%)
   Jaehoon Chung                      417 (0.3%)
   Andy Shevchenko                    351 (0.2%)
   Claudiu Beznea                     339 (0.2%)
   Stefan Roese                       254 (0.2%)
   Pragnesh Patel                     250 (0.2%)
   Matthias Brugger                   245 (0.2%)
   Greg Gallagher                     245 (0.2%)
   Alexandru Gagniuc                  240 (0.2%)
   Alice Guo                          227 (0.2%)
   Praneeth Bajjuri                   219 (0.2%)
   Moses Christopher                  208 (0.1%)
   Corneliu Doban                     190 (0.1%)
   Patrice Chotard                    161 (0.1%)
   Abbie Chang                        147 (0.1%)
   Jorge Ramirez-Ortiz                138 (0.1%)
   Holger Brunck                      131 (0.1%)
   Philippe Reynes                    129 (0.1%)
   T Karthik Reddy                    118 (0.1%)
   Marc Ferland                       118 (0.1%)
   Heiko Schocher                     117 (0.1%)
   Marek Behún                        109 (0.1%)
   Brandon Maier                      106 (0.1%)
   Zhao Qiang                         105 (0.1%)
   Eugeniu Rosca                      96 (0.1%)
   Sinan Akman                        87 (0.1%)
   Bharat Gooty                       83 (0.1%)
   Lad Prabhakar                      80 (0.1%)
   Roman Kovalivskyi                  80 (0.1%)
   Ley Foon Tan                       76 (0.1%)
   Hou Zhiqiang                       75 (0.1%)
   Reto Schneider                     69 (0.0%)
   Dennis Gilmore                     64 (0.0%)
   Ye Li                              60 (0.0%)
   Kory Maincent                      60 (0.0%)
   Suman Anna                         59 (0.0%)
   David Lechner                      58 (0.0%)
   Ioana Ciornei                      58 (0.0%)
   Moti Buskila                       57 (0.0%)
   Nicolas Ferre                      56 (0.0%)
   Vabhav Sharma                      55 (0.0%)
   Priyanka Jain                      54 (0.0%)
   Vladimir Oltean                    54 (0.0%)
   Phil Sutter                        50 (0.0%)
   Alex Nemirovsky                    48 (0.0%)
   Rasmus Villemoes                   46 (0.0%)
   Aswath Govindraju                  45 (0.0%)
   Etienne Carriere                   43 (0.0%)
   Lyle Franklin                      36 (0.0%)
   Wasim Khan                         35 (0.0%)
   Hongwei Zhang                      35 (0.0%)
   Campbell Suter                     35 (0.0%)
   Tomas Novotny                      35 (0.0%)
   Aleksandar Gerasimovski            32 (0.0%)
   Peter Robinson                     32 (0.0%)
   Chunfeng Yun                       27 (0.0%)
   Jean-Philippe ROMAIN               26 (0.0%)
   Kuldeep Singh                      25 (0.0%)
   Vikhyat Goyal                      25 (0.0%)
   Andrey Zhizhikin                   24 (0.0%)
   Siva Durga Prasad Paladugu         24 (0.0%)
   Chris Packham                      23 (0.0%)
   Tudor Ambarus                      23 (0.0%)
   Harini Katakam                     23 (0.0%)
   Joel Stanley                       22 (0.0%)
   Icenowy Zheng                      21 (0.0%)
   Pascal Vizeli                      21 (0.0%)
   Harm Berntsen                      20 (0.0%)
   Nishanth Menon                     19 (0.0%)
   Philipp Tomsich                    18 (0.0%)
   Frieder Schrempf                   18 (0.0%)
   Rajesh Bhagat                      17 (0.0%)
   Robert Marko                       15 (0.0%)
   Oleksandr Suvorov                  15 (0.0%)
   Alex Leibovich                     15 (0.0%)
   Vignesh Raghavendra                15 (0.0%)
   Samuel Holland                     15 (0.0%)
   Artem Lapkin                       15 (0.0%)
   Peter Bergin                       14 (0.0%)
   Dalon Westergreen                  14 (0.0%)
   Stefan Brüns                       14 (0.0%)
   Ian Ray                            14 (0.0%)
   Joel Peshkin                       14 (0.0%)
   Anton Leontiev                     14 (0.0%)
   Mathew McBride                     13 (0.0%)
   Stefan Agner                       13 (0.0%)
   Kever Yang                         12 (0.0%)
   Baruch Siach                       12 (0.0%)
   Maxim Kochetkov                    10 (0.0%)
   Matthias Schiffer                  10 (0.0%)
   Mark Kettenis                      9 (0.0%)
   Gary Bisson                        9 (0.0%)
   Ravik Hasija                       9 (0.0%)
   Han Xu                             8 (0.0%)
   Minkyu Kang                        7 (0.0%)
   Alper Nebi Yasak                   7 (0.0%)
   Ramon Fried                        7 (0.0%)
   Hugh Cole-Baker                    7 (0.0%)
   Jessica Clarke                     7 (0.0%)
   Sujeet Baranwal                    7 (0.0%)
   Roger Pau Monne                    6 (0.0%)
   Haibo Chen                         6 (0.0%)
   Tobias Schramm                     6 (0.0%)
   Yannick Fertre                     5 (0.0%)
   Yuezhang Mo                        5 (0.0%)
   Stanislav Pinchuk                  5 (0.0%)
   Klaus Heinrich Kiwi                4 (0.0%)
   Su Baocheng                        4 (0.0%)
   Diego Sueiro                       4 (0.0%)
   Stephen Warren                     4 (0.0%)
   Seung-Woo Kim                      4 (0.0%)
   Steve Bennett                      4 (0.0%)
   Stefan Bosch                       3 (0.0%)
   Ilies CHERGUI                      3 (0.0%)
   David Rivshin                      3 (0.0%)
   Daniel Golle                       2 (0.0%)
   Qu Wenruo                          2 (0.0%)
   Jesper Schmitz Mouridsen           2 (0.0%)
   Fabrice GIRARDOT                   2 (0.0%)
   Nipun Gupta                        2 (0.0%)
   Roman Stratiienko                  2 (0.0%)
   Guillermo Rodriguez                2 (0.0%)
   Volodymyr Babchuk                  2 (0.0%)
   Kai Stuhlemmer (ebee Engineering)  2 (0.0%)
   David Wu                           2 (0.0%)
   Felix Brack                        2 (0.0%)
   Frank Wunderlich                   1 (0.0%)
   schspa                             1 (0.0%)
   Bernhard Kirchen                   1 (0.0%)
   Hauke Mehrtens                     1 (0.0%)
   heaterC                            1 (0.0%)
   Kostya Porotchkin                  1 (0.0%)
   Vincent Stehlé                     1 (0.0%)
   Asherah Connor                     1 (0.0%)
   Ashok Reddy Soma                   1 (0.0%)
   Yang Liu                           1 (0.0%)
   Martin Fuzzey                      1 (0.0%)
   Martin Hundebøll                   1 (0.0%)
   Atish Patra                        1 (0.0%)
   Florian Klink                      1 (0.0%)
   Marcin Juszkiewicz                 1 (0.0%)
   Adrian Fiergolski                  1 (0.0%)
   =================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Tom Rini                          19221 (39.7%)
   Pali Rohár                        387 (0.8%)
   Jaehoon Chung                     184 (0.4%)
   Alice Guo                         67 (0.1%)
   Roman Kovalivskyi                 51 (0.1%)
   Nicolas Ferre                     46 (0.1%)
   Marc Ferland                      43 (0.1%)
   Priyanka Jain                     43 (0.1%)
   Stephen Carlson                   42 (0.1%)
   Brandon Maier                     25 (0.1%)
   Patrice Chotard                   23 (0.0%)
   Kuldeep Singh                     16 (0.0%)
   Samuel Holland                    15 (0.0%)
   Etienne Carriere                  12 (0.0%)
   Oleksandr Suvorov                 11 (0.0%)
   David Lechner                     7 (0.0%)
   Peter Robinson                    6 (0.0%)
   Mathew McBride                    5 (0.0%)
   Jessica Clarke                    5 (0.0%)
   Peter Bergin                      1 (0.0%)
   Hugh Cole-Baker                   1 (0.0%)
   Roger Pau Monne                   1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Andre Przywara                    28 (11.4%)
   Peng Fan                          27 (11.0%)
   Neil Armstrong                    26 (10.6%)
   Aswath Govindraju                 20 (8.2%)
   Michal Simek                      18 (7.3%)
   Matthias Brugger                  17 (6.9%)
   Marek Behún                       12 (4.9%)
   Priyanka Jain                     8 (3.3%)
   Siew Chin Lim                     7 (2.9%)
   Bin Meng                          6 (2.4%)
   Patrick Delaunay                  6 (2.4%)
   Heinrich Schuchardt               6 (2.4%)
   Roman Kovalivskyi                 5 (2.0%)
   Minkyu Kang                       5 (2.0%)
   Tom Rini                          4 (1.6%)
   Jaehoon Chung                     4 (1.6%)
   Alex Nemirovsky                   4 (1.6%)
   Vladimir Oltean                   4 (1.6%)
   Jernej Skrabec                    4 (1.6%)
   Claudiu Manoil                    3 (1.2%)
   Simon Glass                       3 (1.2%)
   Rayagonda Kokatanur               2 (0.8%)
   Rainer Boschung                   2 (0.8%)
   Chia-Wei, Wang                    2 (0.8%)
   Pali Rohár                        1 (0.4%)
   Jagan Teki                        1 (0.4%)
   Jane Wan                          1 (0.4%)
   Boris Brezillon                   1 (0.4%)
   Bruce Monroe                      1 (0.4%)
   Arie Haenel                       1 (0.4%)
   Julien Lenoir                     1 (0.4%)
   Mark Brown                        1 (0.4%)
   Valentin Longchamp                1 (0.4%)
   Peter Chen                        1 (0.4%)
   Sherry Sun                        1 (0.4%)
   Sebastian Reichel                 1 (0.4%)
   Kevin Scholz                      1 (0.4%)
   Stefan Agner                      1 (0.4%)
   Wasim Khan                        1 (0.4%)
   Tudor Ambarus                     1 (0.4%)
   Reto Schneider                    1 (0.4%)
   Abbie Chang                       1 (0.4%)
   Michael Walle                     1 (0.4%)
   Alex Marginean                    1 (0.4%)
   Marek Szyprowski                  1 (0.4%)
   Tim Harvey                        1 (0.4%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Simon Glass                       241 (27.2%)
   Priyanka Jain                     117 (13.2%)
   Patrice Chotard                   64 (7.2%)
   Stefan Roese                      61 (6.9%)
   Bin Meng                          54 (6.1%)
   Jaehoon Chung                     37 (4.2%)
   Andre Przywara                    25 (2.8%)
   Peng Fan                          18 (2.0%)
   Patrick Delaunay                  17 (1.9%)
   Lukasz Majewski                   17 (1.9%)
   Heiko Schocher                    16 (1.8%)
   Heinrich Schuchardt               14 (1.6%)
   Tom Rini                          13 (1.5%)
   Samuel Holland                    13 (1.5%)
   Jagan Teki                        10 (1.1%)
   Kostya Porotchkin                 10 (1.1%)
   Fabio Estevam                     10 (1.1%)
   Jernej Skrabec                    8 (0.9%)
   Ramon Fried                       8 (0.9%)
   Ye Li                             8 (0.9%)
   Peter Chen                        7 (0.8%)
   Anup Patel                        7 (0.8%)
   Kever Yang                        7 (0.8%)
   Neil Armstrong                    6 (0.7%)
   Andy Shevchenko                   6 (0.7%)
   Ryan Chen                         6 (0.7%)
   Marek Behún                       5 (0.6%)
   Vladimir Oltean                   5 (0.6%)
   Pratyush Yadav                    5 (0.6%)
   Rick Chen                         5 (0.6%)
   Sean Anderson                     5 (0.6%)
   Qu Wenruo                         4 (0.5%)
   Paulo Alcantara (SUSE)            4 (0.5%)
   Nadav Haklai                      3 (0.3%)
   Ley Foon Tan                      3 (0.3%)
   Claudiu Manoil                    2 (0.2%)
   Wasim Khan                        2 (0.2%)
   Peter Robinson                    2 (0.2%)
   Andrey Zhizhikin                  2 (0.2%)
   Michael Trimarchi                 2 (0.2%)
   Leo Liang                         2 (0.2%)
   Jens Wiklander                    2 (0.2%)
   Christian Gmeiner                 2 (0.2%)
   Torsten Duwe                      2 (0.2%)
   Alex Leibovich                    2 (0.2%)
   Igor Opaniuk                      2 (0.2%)
   Biju Das                          2 (0.2%)
   Minkyu Kang                       1 (0.1%)
   Pali Rohár                        1 (0.1%)
   Michael Walle                     1 (0.1%)
   Etienne Carriere                  1 (0.1%)
   Ashok Reddy Soma                  1 (0.1%)
   Stefan Chulski                    1 (0.1%)
   Patrick Wildt                     1 (0.1%)
   Andy Wu                           1 (0.1%)
   Laurentiu Tudor                   1 (0.1%)
   Fugang Duan                       1 (0.1%)
   Madalin Bucur                     1 (0.1%)
   Igal Liberman                     1 (0.1%)
   Daniel Schwierzeck                1 (0.1%)
   Pavel Machek                      1 (0.1%)
   Luca Ceresoli                     1 (0.1%)
   Stephen Warren                    1 (0.1%)
   Sujeet Baranwal                   1 (0.1%)
   Mark Kettenis                     1 (0.1%)
   Moti Buskila                      1 (0.1%)
   Marek Vasut                       1 (0.1%)
   Pragnesh Patel                    1 (0.1%)
   Ilias Apalodimas                  1 (0.1%)
   Nicolas Saenz Julienne            1 (0.1%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Chris Packham                     20 (24.1%)
   Peter Robinson                    17 (20.5%)
   Jaehoon Chung                     5 (6.0%)
   faqiang.zhu                       5 (6.0%)
   Bin Meng                          4 (4.8%)
   Jernej Skrabec                    4 (4.8%)
   Andre Przywara                    2 (2.4%)
   Samuel Holland                    2 (2.4%)
   Wasim Khan                        2 (2.4%)
   Patrice Chotard                   1 (1.2%)
   Patrick Delaunay                  1 (1.2%)
   Heinrich Schuchardt               1 (1.2%)
   Tom Rini                          1 (1.2%)
   Ye Li                             1 (1.2%)
   Neil Armstrong                    1 (1.2%)
   Andy Shevchenko                   1 (1.2%)
   Andrey Zhizhikin                  1 (1.2%)
   Michael Walle                     1 (1.2%)
   Stephen Warren                    1 (1.2%)
   Atish Patra                       1 (1.2%)
   sa_ip-sw-jenkins                  1 (1.2%)
   Suneel Garapati                   1 (1.2%)
   Oliver Graute                     1 (1.2%)
   iSoC Platform CI                  1 (1.2%)
   Chrstopher Obbard                 1 (1.2%)
   Miquel Raynal                     1 (1.2%)
   Ondrej Jirman                     1 (1.2%)
   Thomas Graichen                   1 (1.2%)
   Priit Laes                        1 (1.2%)
   Icenowy Zheng                     1 (1.2%)
   Dario Binacchi                    1 (1.2%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Nicolas Saenz Julienne            13 (15.7%)
   Andre Przywara                    9 (10.8%)
   Marek Behún                       7 (8.4%)
   Moti Buskila                      7 (8.4%)
   Marek Szyprowski                  5 (6.0%)
   Li Jun                            5 (6.0%)
   Padmarao Begari                   4 (4.8%)
   Matthias Brugger                  3 (3.6%)
   Jernej Skrabec                    2 (2.4%)
   Heinrich Schuchardt               2 (2.4%)
   Fabio Estevam                     2 (2.4%)
   Ramon Fried                       2 (2.4%)
   Alex Leibovich                    2 (2.4%)
   Sujeet Baranwal                   2 (2.4%)
   Marek Vasut                       2 (2.4%)
   Patrice Chotard                   1 (1.2%)
   Tom Rini                          1 (1.2%)
   Neil Armstrong                    1 (1.2%)
   Andy Shevchenko                   1 (1.2%)
   Michael Walle                     1 (1.2%)
   Dario Binacchi                    1 (1.2%)
   Kostya Porotchkin                 1 (1.2%)
   Sean Anderson                     1 (1.2%)
   Pali Rohár                        1 (1.2%)
   Ilias Apalodimas                  1 (1.2%)
   Stephen Carlson                   1 (1.2%)
   heaterC                           1 (1.2%)
   Hou Zhiqiang                      1 (1.2%)
   Vignesh Raghavendra               1 (1.2%)
   Baruch Siach                      1 (1.2%)
   Andre Heider                      1 (1.2%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Bruce Monroe                      7 (14.0%)
   Arie Haenel                       7 (14.0%)
   Julien Lenoir                     7 (14.0%)
   Heinrich Schuchardt               6 (12.0%)
   Kever Yang                        3 (6.0%)
   Peter Robinson                    2 (4.0%)
   Bin Meng                          2 (4.0%)
   Simon Glass                       2 (4.0%)
   Nicolas Saenz Julienne            1 (2.0%)
   Atish Patra                       1 (2.0%)
   Suneel Garapati                   1 (2.0%)
   Paulo Alcantara (SUSE)            1 (2.0%)
   Peter Bergin                      1 (2.0%)
   Jesper Schmitz Mouridsen          1 (2.0%)
   Lukas Rusak                       1 (2.0%)
   Markus Reichl                     1 (2.0%)
   Dean Saridakis                    1 (2.0%)
   Thorsten Spille                   1 (2.0%)
   Junghoon Kim                      1 (2.0%)
   Alexander von Gluck IV            1 (2.0%)
   Moshe, Yaniv                      1 (2.0%)
   Rasmus Villemoes                  1 (2.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Simon Glass                       28 (56.0%)
   Heinrich Schuchardt               6 (12.0%)
   Tom Rini                          3 (6.0%)
   Fabio Estevam                     2 (4.0%)
   Ovidiu Panait                     2 (4.0%)
   Andre Przywara                    1 (2.0%)
   Ramon Fried                       1 (2.0%)
   Andy Shevchenko                   1 (2.0%)
   Ilias Apalodimas                  1 (2.0%)
   Baruch Siach                      1 (2.0%)
   Stephen Warren                    1 (2.0%)
   Priyanka Jain                     1 (2.0%)
   Michal Simek                      1 (2.0%)
   Seung-Woo Kim                     1 (2.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         748 (44.7%)
   Google, Inc.                      285 (17.0%)
   NXP                               124 (7.4%)
   ST Microelectronics               103 (6.1%)
   Intel                             57 (3.4%)
   Samsung                           45 (2.7%)
   Linaro                            43 (2.6%)
   DENX Software Engineering         42 (2.5%)
   Konsulko Group                    40 (2.4%)
   Texas Instruments                 39 (2.3%)
   Wind River                        25 (1.5%)
   AMD                               22 (1.3%)
   BayLibre SAS                      22 (1.3%)
   ARM                               18 (1.1%)
   Marvell                           11 (0.7%)
   SUSE                              11 (0.7%)
   Xilinx                            11 (0.7%)
   Rockchip                          6 (0.4%)
   IBM                               4 (0.2%)
   Renesas Electronics               4 (0.2%)
   Bootlin                           3 (0.2%)
   Broadcom                          3 (0.2%)
   Sony                              2 (0.1%)
   Boundary Devices                  2 (0.1%)
   Toradex                           2 (0.1%)
   General Electric                  1 (0.1%)
   Phytec                            1 (0.1%)
   Siemens                           1 (0.1%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         65641 (46.3%)
   Konsulko Group                    19605 (13.8%)
   Google, Inc.                      17340 (12.2%)
   NXP                               7103 (5.0%)
   Texas Instruments                 5418 (3.8%)
   Linaro                            5391 (3.8%)
   BayLibre SAS                      4113 (2.9%)
   DENX Software Engineering         3925 (2.8%)
   Phytec                            2827 (2.0%)
   Intel                             2286 (1.6%)
   ST Microelectronics               2034 (1.4%)
   Samsung                           1682 (1.2%)
   Rockchip                          1068 (0.8%)
   Renesas Electronics               813 (0.6%)
   ARM                               543 (0.4%)
   AMD                               533 (0.4%)
   Wind River                        456 (0.3%)
   Broadcom                          287 (0.2%)
   SUSE                              247 (0.2%)
   Xilinx                            191 (0.1%)
   Marvell                           80 (0.1%)
   Bootlin                           60 (0.0%)
   Toradex                           15 (0.0%)
   General Electric                  14 (0.0%)
   Boundary Devices                  9 (0.0%)
   Sony                              5 (0.0%)
   IBM                               4 (0.0%)
   Siemens                           4 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         50 (20.4%)
   NXP                               46 (18.8%)
   ARM                               28 (11.4%)
   BayLibre SAS                      26 (10.6%)
   Texas Instruments                 21 (8.6%)
   Xilinx                            18 (7.3%)
   SUSE                              17 (6.9%)
   Intel                             10 (4.1%)
   Samsung                           10 (4.1%)
   ST Microelectronics               6 (2.4%)
   Konsulko Group                    4 (1.6%)
   Google, Inc.                      3 (1.2%)
   Broadcom                          2 (0.8%)
   Bootlin                           1 (0.4%)
   Amarula Solutions                 1 (0.4%)
   Collabora Ltd.                    1 (0.4%)
   Nokia                             1 (0.4%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         110 (56.7%)
   NXP                               19 (9.8%)
   Texas Instruments                 7 (3.6%)
   Xilinx                            5 (2.6%)
   Intel                             5 (2.6%)
   ST Microelectronics               5 (2.6%)
   Samsung                           4 (2.1%)
   Linaro                            4 (2.1%)
   DENX Software Engineering         4 (2.1%)
   Marvell                           4 (2.1%)
   BayLibre SAS                      3 (1.5%)
   Broadcom                          3 (1.5%)
   Rockchip                          3 (1.5%)
   ARM                               2 (1.0%)
   SUSE                              2 (1.0%)
   Renesas Electronics               2 (1.0%)
   Konsulko Group                    1 (0.5%)
   Google, Inc.                      1 (0.5%)
   Bootlin                           1 (0.5%)
   Phytec                            1 (0.5%)
   AMD                               1 (0.5%)
   Wind River                        1 (0.5%)
   Toradex                           1 (0.5%)
   General Electric                  1 (0.5%)
   Boundary Devices                  1 (0.5%)
   Sony                              1 (0.5%)
   IBM                               1 (0.5%)
   Siemens                           1 (0.5%)
   ================================  =====
