:orphan:

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

* Processed 2007 csets from 190 developers

* 32 employers found

* A total of 111008 lines added, 38325 removed (delta 72683)

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

   ================================  =====
   Name                              Count
   ================================  =====
   Simon Glass                       252 (12.6%)
   Kever Yang                        142 (7.1%)
   Heinrich Schuchardt               115 (5.7%)
   Patrick Delaunay                  112 (5.6%)
   Jagan Teki                        89 (4.4%)
   Bin Meng                          70 (3.5%)
   Hou Zhiqiang                      66 (3.3%)
   Adam Ford                         55 (2.7%)
   Lukasz Majewski                   46 (2.3%)
   Peng Fan                          45 (2.2%)
   Marek Vasut                       39 (1.9%)
   Chuanhua Han                      35 (1.7%)
   Andreas Dannenberg                34 (1.7%)
   Tom Rini                          30 (1.5%)
   Alex Marginean                    29 (1.4%)
   Masahiro Yamada                   25 (1.2%)
   Lokesh Vutla                      24 (1.2%)
   Faiz Abbas                        24 (1.2%)
   Igor Opaniuk                      23 (1.1%)
   Heiko Schocher                    22 (1.1%)
   Neil Armstrong                    18 (0.9%)
   Sam Protsenko                     17 (0.8%)
   Ramon Fried                       17 (0.8%)
   Baruch Siach                      16 (0.8%)
   Jean-Jacques Hiblot               15 (0.7%)
   Anatolij Gustschin                15 (0.7%)
   Patrice Chotard                   15 (0.7%)
   Anup Patel                        15 (0.7%)
   Bartosz Golaszewski               14 (0.7%)
   Simon Goldschmidt                 13 (0.6%)
   Park, Aiden                       13 (0.6%)
   Pascal Linder                     13 (0.6%)
   Andre Przywara                    13 (0.6%)
   Andy Shevchenko                   12 (0.6%)
   Suniel Mahesh                     12 (0.6%)
   Weijie Gao                        12 (0.6%)
   Miquel Raynal                     12 (0.6%)
   Marek Behún                       11 (0.5%)
   Lukas Auer                        11 (0.5%)
   Ye Li                             11 (0.5%)
   Bryan O'Donoghue                  11 (0.5%)
   Eugeniu Rosca                     10 (0.5%)
   Rick Chen                         10 (0.5%)
   Fabien Dessenne                   10 (0.5%)
   AKASHI Takahiro                   9 (0.4%)
   Andrew F. Davis                   8 (0.4%)
   Yinbo Zhu                         8 (0.4%)
   Matwey V. Kornilov                8 (0.4%)
   Urja Rannikko                     8 (0.4%)
   Sekhar Nori                       8 (0.4%)
   Marcel Ziswiler                   8 (0.4%)
   Tudor Ambarus                     7 (0.3%)
   Stefan Roese                      7 (0.3%)
   Suman Anna                        7 (0.3%)
   Manivannan Sadhasivam             7 (0.3%)
   Luca Ceresoli                     7 (0.3%)
   Vladimir Oltean                   7 (0.3%)
   Ruslan Trofymenko                 7 (0.3%)
   Markus Klotzbuecher               7 (0.3%)
   Ley Foon Tan                      6 (0.3%)
   Michal Simek                      6 (0.3%)
   Mark Kettenis                     6 (0.3%)
   Andrei Gherzan                    6 (0.3%)
   T Karthik Reddy                   6 (0.3%)
   Hannes Schmelzer                  6 (0.3%)
   Shyam Saini                       6 (0.3%)
   Ludwig Zenz                       6 (0.3%)
   Peter Robinson                    6 (0.3%)
   Michal Suchanek                   5 (0.2%)
   liucheng (G)                      5 (0.2%)
   Laurentiu Tudor                   5 (0.2%)
   Trent Piepho                      5 (0.2%)
   Alexander Dahl                    5 (0.2%)
   Robert Hancock                    5 (0.2%)
   Keerthy                           5 (0.2%)
   Paul Emge                         5 (0.2%)
   Yangbo Lu                         5 (0.2%)
   Pierre-Jean Texier                4 (0.2%)
   Vignesh Raghavendra               4 (0.2%)
   Pankaj Bansal                     4 (0.2%)
   Thomas Schaefer                   4 (0.2%)
   Eddie James                       4 (0.2%)
   Marcus Comstedt                   4 (0.2%)
   Fabien Parent                     4 (0.2%)
   Julius Werner                     4 (0.2%)
   Chris Webb                        4 (0.2%)
   Joel Stanley                      4 (0.2%)
   Eugeniy Paltsev                   3 (0.1%)
   Matthias Brugger                  3 (0.1%)
   Grygorii Strashko                 3 (0.1%)
   Andy Yan                          3 (0.1%)
   Joe Hershberger                   3 (0.1%)
   Alexey Brodkin                    3 (0.1%)
   Rohan Garg                        3 (0.1%)
   Ashish Kumar                      3 (0.1%)
   Marek Szyprowski                  3 (0.1%)
   Ryder Lee                         3 (0.1%)
   Nick Xie                          3 (0.1%)
   Bhargav Shah                      3 (0.1%)
   Sven Schwermer                    3 (0.1%)
   Derald D. Woods                   3 (0.1%)
   Roman Stratiienko                 2 (0.1%)
   Stephen Warren                    2 (0.1%)
   Heiko Stuebner                    2 (0.1%)
   Christophe Kerello                2 (0.1%)
   Meenakshi Aggarwal                2 (0.1%)
   Florin Chiculita                  2 (0.1%)
   Fabian Vogt                       2 (0.1%)
   Michael Walle                     2 (0.1%)
   Ralph Siemsen                     2 (0.1%)
   Sagar Shrikant Kadam              2 (0.1%)
   Kunihiko Hayashi                  2 (0.1%)
   Sudeep Holla                      2 (0.1%)
   Chris Packham                     2 (0.1%)
   Yuantian Tang                     2 (0.1%)
   Uwe Kleine-König                  2 (0.1%)
   Yegor Yefremov                    2 (0.1%)
   Dalon Westergreen                 2 (0.1%)
   Holger Brunck                     2 (0.1%)
   Dominik Sliwa                     2 (0.1%)
   Frank Wunderlich                  2 (0.1%)
   Robert P. J. Day                  2 (0.1%)
   Niklas Schulze                    2 (0.1%)
   David Abdurachmanov               2 (0.1%)
   Mickaël Tansorier                 2 (0.1%)
   Radu Pirea                        2 (0.1%)
   Horatiu Vultur                    2 (0.1%)
   Ezequiel Garcia                   2 (0.1%)
   Ilko Iliev                        2 (0.1%)
   Cyrille Pitchen                   2 (0.1%)
   Melin Tomas                       2 (0.1%)
   Hamish Guthrie                    2 (0.1%)
   Maxime Ripard                     1 (0.0%)
   Ovidiu Panait                     1 (0.0%)
   Andrius Štikonas                  1 (0.0%)
   Joris Offouga                     1 (0.0%)
   Biwen Li                          1 (0.0%)
   Michael Trimarchi                 1 (0.0%)
   Hugh Cole-Baker                   1 (0.0%)
   Priyanka Jain                     1 (0.0%)
   Bonnans, Laurent                  1 (0.0%)
   Raul Benet                        1 (0.0%)
   Guillaume GARDET                  1 (0.0%)
   Matt Pelland                      1 (0.0%)
   Florinel Iordache                 1 (0.0%)
   Alistair Francis                  1 (0.0%)
   Rasmus Villemoes                  1 (0.0%)
   Ryan Harkin                       1 (0.0%)
   Samuel Egli                       1 (0.0%)
   Ricardo Ribalda Delgado           1 (0.0%)
   Aaron Williams                    1 (0.0%)
   Martin Vystrčil                   1 (0.0%)
   Vikas Manocha                     1 (0.0%)
   Nuno Gonçalves                    1 (0.0%)
   Max Kellermann                    1 (0.0%)
   Alison Wang                       1 (0.0%)
   Levin Du                          1 (0.0%)
   Nishanth Menon                    1 (0.0%)
   Anselm Busse                      1 (0.0%)
   Jerome Brunet                     1 (0.0%)
   Stefan Agner                      1 (0.0%)
   Bernhard Messerklinger            1 (0.0%)
   Joshua Watt                       1 (0.0%)
   Eugen Hristev                     1 (0.0%)
   Alex Deymo                        1 (0.0%)
   Anton Gerasimov                   1 (0.0%)
   Eric Perie                        1 (0.0%)
   Andrej Rosano                     1 (0.0%)
   titron                            1 (0.0%)
   Emmanuel Vadot                    1 (0.0%)
   Jianchao Wang                     1 (0.0%)
   Jonathan Corbet                   1 (0.0%)
   Leon Yu                           1 (0.0%)
   Breno Matheus Lima                1 (0.0%)
   Sébastien Szymanski               1 (0.0%)
   Matti Vaittinen                   1 (0.0%)
   Oleksandr Zhadan                  1 (0.0%)
   Vesa Jääskeläinen                 1 (0.0%)
   Jernej Skrabec                    1 (0.0%)
   Marcus Cooper                     1 (0.0%)
   Akio Hirayama                     1 (0.0%)
   Niel Fourie                       1 (0.0%)
   David Lechner                     1 (0.0%)
   Leo Ruan                          1 (0.0%)
   Roman Kapl                        1 (0.0%)
   Luka Kovacic                      1 (0.0%)
   Thierry Reding                    1 (0.0%)
   Vabhav Sharma                     1 (0.0%)
   Jun Chen                          1 (0.0%)
   Andreas Färber                    1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Simon Glass                       15674 (12.4%)
   Jagan Teki                        7394 (5.8%)
   Kever Yang                        7177 (5.7%)
   Marek Vasut                       6504 (5.1%)
   Bin Meng                          5608 (4.4%)
   Heinrich Schuchardt               5109 (4.0%)
   Lukasz Majewski                   4813 (3.8%)
   Patrick Delaunay                  3764 (3.0%)
   Manivannan Sadhasivam             3703 (2.9%)
   Neil Armstrong                    3599 (2.8%)
   Yangbo Lu                         3043 (2.4%)
   Alex Marginean                    3007 (2.4%)
   Ramon Fried                       2610 (2.1%)
   Peng Fan                          2450 (1.9%)
   Uwe Kleine-König                  2338 (1.8%)
   Hou Zhiqiang                      2293 (1.8%)
   Tom Rini                          2261 (1.8%)
   Eugeniu Rosca                     2112 (1.7%)
   Lokesh Vutla                      1912 (1.5%)
   Andreas Dannenberg                1831 (1.4%)
   Luca Ceresoli                     1477 (1.2%)
   Adam Ford                         1476 (1.2%)
   Park, Aiden                       1421 (1.1%)
   Sekhar Nori                       1420 (1.1%)
   Chuanhua Han                      1307 (1.0%)
   Hannes Schmelzer                  1272 (1.0%)
   Niel Fourie                       1260 (1.0%)
   Nick Xie                          1096 (0.9%)
   Anup Patel                        1054 (0.8%)
   Simon Goldschmidt                 1008 (0.8%)
   Fabien Dessenne                   940 (0.7%)
   Jianchao Wang                     921 (0.7%)
   Heiko Schocher                    885 (0.7%)
   Keerthy                           855 (0.7%)
   Masahiro Yamada                   830 (0.7%)
   Holger Brunck                     821 (0.6%)
   Tudor Ambarus                     797 (0.6%)
   Weijie Gao                        775 (0.6%)
   Levin Du                          766 (0.6%)
   Faiz Abbas                        743 (0.6%)
   Patrice Chotard                   714 (0.6%)
   Ruslan Trofymenko                 713 (0.6%)
   Bhargav Shah                      705 (0.6%)
   Lukas Auer                        694 (0.5%)
   Andre Przywara                    664 (0.5%)
   Pascal Linder                     609 (0.5%)
   Matti Vaittinen                   607 (0.5%)
   Suniel Mahesh                     587 (0.5%)
   Shyam Saini                       575 (0.5%)
   Horatiu Vultur                    518 (0.4%)
   Igor Opaniuk                      486 (0.4%)
   Bartosz Golaszewski               425 (0.3%)
   Kunihiko Hayashi                  425 (0.3%)
   Robert Hancock                    420 (0.3%)
   Peter Robinson                    381 (0.3%)
   Julius Werner                     376 (0.3%)
   Jerome Brunet                     373 (0.3%)
   Markus Klotzbuecher               366 (0.3%)
   Jean-Jacques Hiblot               364 (0.3%)
   Rick Chen                         350 (0.3%)
   Anatolij Gustschin                323 (0.3%)
   Ludwig Zenz                       306 (0.2%)
   Fabien Parent                     288 (0.2%)
   Anton Gerasimov                   281 (0.2%)
   Hamish Guthrie                    266 (0.2%)
   Rohan Garg                        245 (0.2%)
   Marcus Cooper                     239 (0.2%)
   Laurentiu Tudor                   216 (0.2%)
   Urja Rannikko                     207 (0.2%)
   Ilko Iliev                        198 (0.2%)
   AKASHI Takahiro                   194 (0.2%)
   Eugeniy Paltsev                   193 (0.2%)
   Andy Shevchenko                   190 (0.1%)
   Stefan Roese                      181 (0.1%)
   Michael Walle                     181 (0.1%)
   Grygorii Strashko                 178 (0.1%)
   Eddie James                       174 (0.1%)
   Bernhard Messerklinger            172 (0.1%)
   Andrei Gherzan                    162 (0.1%)
   Baruch Siach                      155 (0.1%)
   Marcel Ziswiler                   152 (0.1%)
   Sven Schwermer                    146 (0.1%)
   Trent Piepho                      136 (0.1%)
   Sam Protsenko                     135 (0.1%)
   Yinbo Zhu                         127 (0.1%)
   Frank Wunderlich                  126 (0.1%)
   Leo Ruan                          121 (0.1%)
   Alexey Brodkin                    115 (0.1%)
   T Karthik Reddy                   114 (0.1%)
   David Lechner                     102 (0.1%)
   Ye Li                             101 (0.1%)
   Marcus Comstedt                   98 (0.1%)
   Pankaj Bansal                     97 (0.1%)
   Meenakshi Aggarwal                97 (0.1%)
   Miquel Raynal                     96 (0.1%)
   Matwey V. Kornilov                93 (0.1%)
   Dominik Sliwa                     90 (0.1%)
   Alex Deymo                        90 (0.1%)
   Suman Anna                        83 (0.1%)
   Andrew F. Davis                   78 (0.1%)
   Michal Suchanek                   75 (0.1%)
   Alexander Dahl                    74 (0.1%)
   Ryan Harkin                       70 (0.1%)
   Ryder Lee                         68 (0.1%)
   Ley Foon Tan                      60 (0.0%)
   Oleksandr Zhadan                  60 (0.0%)
   Bryan O'Donoghue                  59 (0.0%)
   Jonathan Corbet                   59 (0.0%)
   Derald D. Woods                   58 (0.0%)
   Chris Webb                        56 (0.0%)
   Vesa Jääskeläinen                 52 (0.0%)
   Joshua Watt                       44 (0.0%)
   Paul Emge                         41 (0.0%)
   Matthias Brugger                  41 (0.0%)
   Vladimir Oltean                   40 (0.0%)
   Mark Kettenis                     38 (0.0%)
   Yuantian Tang                     35 (0.0%)
   Sagar Shrikant Kadam              30 (0.0%)
   Thomas Schaefer                   29 (0.0%)
   Marek Behún                       27 (0.0%)
   Cyrille Pitchen                   27 (0.0%)
   Ezequiel Garcia                   26 (0.0%)
   Florinel Iordache                 26 (0.0%)
   Anselm Busse                      26 (0.0%)
   Niklas Schulze                    24 (0.0%)
   Michael Trimarchi                 24 (0.0%)
   David Abdurachmanov               22 (0.0%)
   Pierre-Jean Texier                21 (0.0%)
   Emmanuel Vadot                    21 (0.0%)
   Sébastien Szymanski               21 (0.0%)
   Stephen Warren                    20 (0.0%)
   Aaron Williams                    19 (0.0%)
   Michal Simek                      18 (0.0%)
   Roman Stratiienko                 18 (0.0%)
   Priyanka Jain                     17 (0.0%)
   Vikas Manocha                     17 (0.0%)
   Jernej Skrabec                    17 (0.0%)
   liucheng (G)                      16 (0.0%)
   Vignesh Raghavendra               16 (0.0%)
   Marek Szyprowski                  14 (0.0%)
   Melin Tomas                       13 (0.0%)
   Joris Offouga                     13 (0.0%)
   Joe Hershberger                   12 (0.0%)
   Joel Stanley                      11 (0.0%)
   Fabian Vogt                       11 (0.0%)
   Eugen Hristev                     11 (0.0%)
   Andy Yan                          10 (0.0%)
   Ashish Kumar                      10 (0.0%)
   Roman Kapl                        10 (0.0%)
   Chris Packham                     9 (0.0%)
   Matt Pelland                      8 (0.0%)
   Yegor Yefremov                    7 (0.0%)
   Raul Benet                        7 (0.0%)
   Breno Matheus Lima                7 (0.0%)
   Jun Chen                          7 (0.0%)
   Dalon Westergreen                 6 (0.0%)
   Eric Perie                        6 (0.0%)
   Christophe Kerello                5 (0.0%)
   Mickaël Tansorier                 5 (0.0%)
   Radu Pirea                        5 (0.0%)
   Ovidiu Panait                     5 (0.0%)
   Leon Yu                           5 (0.0%)
   Florin Chiculita                  4 (0.0%)
   Sudeep Holla                      4 (0.0%)
   Robert P. J. Day                  4 (0.0%)
   Maxime Ripard                     4 (0.0%)
   Bonnans, Laurent                  4 (0.0%)
   Martin Vystrčil                   4 (0.0%)
   Nishanth Menon                    4 (0.0%)
   Stefan Agner                      4 (0.0%)
   Vabhav Sharma                     4 (0.0%)
   Heiko Stuebner                    3 (0.0%)
   Hugh Cole-Baker                   3 (0.0%)
   Samuel Egli                       3 (0.0%)
   Alison Wang                       3 (0.0%)
   Ralph Siemsen                     2 (0.0%)
   Biwen Li                          2 (0.0%)
   Ricardo Ribalda Delgado           2 (0.0%)
   Andrej Rosano                     2 (0.0%)
   titron                            2 (0.0%)
   Akio Hirayama                     2 (0.0%)
   Luka Kovacic                      2 (0.0%)
   Thierry Reding                    2 (0.0%)
   Andrius Štikonas                  1 (0.0%)
   Guillaume GARDET                  1 (0.0%)
   Alistair Francis                  1 (0.0%)
   Rasmus Villemoes                  1 (0.0%)
   Nuno Gonçalves                    1 (0.0%)
   Max Kellermann                    1 (0.0%)
   Andreas Färber                    1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Uwe Kleine-König                  2338 (6.1%)
   Heinrich Schuchardt               1027 (2.7%)
   Horatiu Vultur                    455 (1.2%)
   Holger Brunck                     431 (1.1%)
   Tom Rini                          418 (1.1%)
   Patrice Chotard                   211 (0.6%)
   Bartosz Golaszewski               193 (0.5%)
   Ilko Iliev                        192 (0.5%)
   Bernhard Messerklinger            77 (0.2%)
   Ryan Harkin                       67 (0.2%)
   Oleksandr Zhadan                  60 (0.2%)
   Ludwig Zenz                       46 (0.1%)
   Sébastien Szymanski               21 (0.1%)
   Chris Webb                        19 (0.0%)
   Derald D. Woods                   16 (0.0%)
   Ye Li                             12 (0.0%)
   Weijie Gao                        9 (0.0%)
   Joe Hershberger                   8 (0.0%)
   Joris Offouga                     7 (0.0%)
   Vladimir Oltean                   5 (0.0%)
   Martin Vystrčil                   4 (0.0%)
   Robert P. J. Day                  3 (0.0%)
   Sudeep Holla                      1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   YouMin Chen                       55 (16.4%)
   Stefan Roese                      36 (10.7%)
   Patrice Chotard                   23 (6.9%)
   Michal Simek                      20 (6.0%)
   Tom Warren                        16 (4.8%)
   Tom Rini                          14 (4.2%)
   Holger Brunck                     13 (3.9%)
   Igor Opaniuk                      12 (3.6%)
   Matthias Brugger                  10 (3.0%)
   Bin Meng                          8 (2.4%)
   Priyanka Jain                     7 (2.1%)
   Loic Pallardy                     7 (2.1%)
   Kever Yang                        7 (2.1%)
   Lokesh Vutla                      7 (2.1%)
   Andreas Dannenberg                7 (2.1%)
   Jagan Teki                        6 (1.8%)
   Matwey V. Kornilov                5 (1.5%)
   Christophe Kerello                4 (1.2%)
   Neil Armstrong                    4 (1.2%)
   Heinrich Schuchardt               3 (0.9%)
   Benjamin Gaignard                 3 (0.9%)
   Anup Patel                        3 (0.9%)
   Vignesh Raghavendra               3 (0.9%)
   Sam Protsenko                     3 (0.9%)
   Grygorii Strashko                 3 (0.9%)
   Tudor Ambarus                     3 (0.9%)
   Keerthy                           3 (0.9%)
   Peng Fan                          3 (0.9%)
   Patrick Delaunay                  3 (0.9%)
   Vladimir Oltean                   2 (0.6%)
   Zhao Qiang                        2 (0.6%)
   Valentin Longchamp                2 (0.6%)
   Biwen Li                          2 (0.6%)
   Dominik Sliwa                     2 (0.6%)
   Andrei Gherzan                    2 (0.6%)
   Markus Klotzbuecher               2 (0.6%)
   Nishanth Menon                    1 (0.3%)
   Minkyu Kang                       1 (0.3%)
   Ken Ma                            1 (0.3%)
   Bossen WU                         1 (0.3%)
   Nicolas Le Bayon                  1 (0.3%)
   Kevin Hilman                      1 (0.3%)
   Guillaume La Roque                1 (0.3%)
   Bhuvanchandra DV                  1 (0.3%)
   Max Krummenacher                  1 (0.3%)
   Xiaoliang Yang                    1 (0.3%)
   Mingkai Hu                        1 (0.3%)
   Changming Huang                   1 (0.3%)
   Catalin Horghidan                 1 (0.3%)
   Kuldeep Singh                     1 (0.3%)
   Sergey Kubushyn                   1 (0.3%)
   Michael Durrant                   1 (0.3%)
   Parthiban Nallathambi             1 (0.3%)
   Mark Jonas                        1 (0.3%)
   Stefan Agner                      1 (0.3%)
   Ashish Kumar                      1 (0.3%)
   Suman Anna                        1 (0.3%)
   Marcel Ziswiler                   1 (0.3%)
   Andre Przywara                    1 (0.3%)
   Jean-Jacques Hiblot               1 (0.3%)
   Masahiro Yamada                   1 (0.3%)
   Faiz Abbas                        1 (0.3%)
   Fabien Dessenne                   1 (0.3%)
   Eugeniu Rosca                     1 (0.3%)
   Lukasz Majewski                   1 (0.3%)
   Marek Vasut                       1 (0.3%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Bin Meng                          185 (20.4%)
   Kever Yang                        130 (14.3%)
   Prabhakar Kushwaha                108 (11.9%)
   Simon Glass                       53 (5.8%)
   Peng Fan                          40 (4.4%)
   Jagan Teki                        35 (3.9%)
   Lokesh Vutla                      32 (3.5%)
   Oleksandr Suvorov                 31 (3.4%)
   Stefan Roese                      26 (2.9%)
   Anup Patel                        21 (2.3%)
   Tom Rini                          19 (2.1%)
   Heinrich Schuchardt               17 (1.9%)
   Simon Goldschmidt                 17 (1.9%)
   Igor Opaniuk                      15 (1.7%)
   Sam Protsenko                     15 (1.7%)
   Priyanka Jain                     11 (1.2%)
   Marek Vasut                       10 (1.1%)
   Heiko Schocher                    10 (1.1%)
   Lukasz Majewski                   9 (1.0%)
   Chris Packham                     8 (0.9%)
   Andy Shevchenko                   8 (0.9%)
   Alex Marginean                    8 (0.9%)
   Patrice Chotard                   7 (0.8%)
   Patrick Delaunay                  6 (0.7%)
   Alistair Strachan                 6 (0.7%)
   Rick Chen                         6 (0.7%)
   Ramon Fried                       6 (0.7%)
   Manivannan Sadhasivam             6 (0.7%)
   Martyn Welch                      5 (0.6%)
   Jernej Skrabec                    5 (0.6%)
   Lukas Auer                        5 (0.6%)
   Fabio Estevam                     4 (0.4%)
   Cédric Le Goater                  4 (0.4%)
   Horia Geantă                      4 (0.4%)
   Park, Aiden                       4 (0.4%)
   Eugeniu Rosca                     3 (0.3%)
   Alexander Graf                    3 (0.3%)
   Jean-Jacques Hiblot               2 (0.2%)
   Joe Hershberger                   2 (0.2%)
   Philipp Tomsich                   2 (0.2%)
   Philippe Schenker                 2 (0.2%)
   Daniel Schwierzeck                2 (0.2%)
   Matthias Brugger                  1 (0.1%)
   Grygorii Strashko                 1 (0.1%)
   Vladimir Oltean                   1 (0.1%)
   Nishanth Menon                    1 (0.1%)
   Andre Przywara                    1 (0.1%)
   Ryan Harkin                       1 (0.1%)
   Frieder Schrempf                  1 (0.1%)
   Linus Walleij                     1 (0.1%)
   Padmarao Begari                   1 (0.1%)
   Jun Nie                           1 (0.1%)
   Stefano Babic                     1 (0.1%)
   Andy Yan                          1 (0.1%)
   Alistair Francis                  1 (0.1%)
   Stephen Warren                    1 (0.1%)
   David Abdurachmanov               1 (0.1%)
   Andrew F. Davis                   1 (0.1%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Bin Meng                          43 (35.5%)
   Anup Patel                        7 (5.8%)
   Heiko Schocher                    6 (5.0%)
   Jernej Skrabec                    5 (4.1%)
   Corentin Labbe                    5 (4.1%)
   Steffen Dirkwinkel                5 (4.1%)
   Adam Ford                         5 (4.1%)
   Mark Kettenis                     4 (3.3%)
   Heinrich Schuchardt               3 (2.5%)
   Joris Offouga                     3 (2.5%)
   Felix Brack                       3 (2.5%)
   Pierre-Jean Texier                3 (2.5%)
   Igor Opaniuk                      2 (1.7%)
   Chris Packham                     2 (1.7%)
   Alex Marginean                    2 (1.7%)
   Patrick Delaunay                  2 (1.7%)
   Michal Simek                      2 (1.7%)
   Chris Webb                        2 (1.7%)
   Frank Wunderlich                  2 (1.7%)
   Marek Vasut                       1 (0.8%)
   Fabio Estevam                     1 (0.8%)
   Eugeniu Rosca                     1 (0.8%)
   Vladimir Oltean                   1 (0.8%)
   Andre Przywara                    1 (0.8%)
   Frieder Schrempf                  1 (0.8%)
   Padmarao Begari                   1 (0.8%)
   Stephen Warren                    1 (0.8%)
   David Abdurachmanov               1 (0.8%)
   Matwey V. Kornilov                1 (0.8%)
   Ludwig Zenz                       1 (0.8%)
   Fancy Fang                        1 (0.8%)
   Sagar Shrikant Kadam              1 (0.8%)
   Eugen Hristev                     1 (0.8%)
   Suniel Mahesh                     1 (0.8%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Park, Aiden                       12 (9.9%)
   Lukas Auer                        11 (9.1%)
   Andre Przywara                    10 (8.3%)
   Simon Glass                       8 (6.6%)
   Ramon Fried                       7 (5.8%)
   Pierre-Jean Texier                6 (5.0%)
   Yangbo Lu                         5 (4.1%)
   Anup Patel                        4 (3.3%)
   Marek Vasut                       4 (3.3%)
   Neil Armstrong                    4 (3.3%)
   Heinrich Schuchardt               3 (2.5%)
   Patrick Delaunay                  3 (2.5%)
   Sagar Shrikant Kadam              3 (2.5%)
   Jagan Teki                        3 (2.5%)
   Bhargav Shah                      3 (2.5%)
   Heiko Schocher                    2 (1.7%)
   Alex Marginean                    2 (1.7%)
   Peng Fan                          2 (1.7%)
   Stefan Roese                      2 (1.7%)
   Sam Protsenko                     2 (1.7%)
   Bartosz Golaszewski               2 (1.7%)
   Weijie Gao                        2 (1.7%)
   Ryder Lee                         2 (1.7%)
   AKASHI Takahiro                   2 (1.7%)
   Nick Xie                          2 (1.7%)
   Adam Ford                         1 (0.8%)
   Matwey V. Kornilov                1 (0.8%)
   Kever Yang                        1 (0.8%)
   Simon Goldschmidt                 1 (0.8%)
   Marcel Ziswiler                   1 (0.8%)
   Bernhard Messerklinger            1 (0.8%)
   Ye Li                             1 (0.8%)
   Marek Behún                       1 (0.8%)
   Fabian Vogt                       1 (0.8%)
   Urja Rannikko                     1 (0.8%)
   Baruch Siach                      1 (0.8%)
   Anatolij Gustschin                1 (0.8%)
   Julius Werner                     1 (0.8%)
   Chuanhua Han                      1 (0.8%)
   Niel Fourie                       1 (0.8%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Fermín Serna                      5 (17.9%)
   Ramon Fried                       4 (14.3%)
   Simon Glass                       2 (7.1%)
   Heinrich Schuchardt               2 (7.1%)
   Jagan Teki                        2 (7.1%)
   Sam Protsenko                     2 (7.1%)
   Fabio Estevam                     2 (7.1%)
   Marek Vasut                       1 (3.6%)
   Kever Yang                        1 (3.6%)
   Michal Simek                      1 (3.6%)
   Tom Rini                          1 (3.6%)
   Pontus Fuchs                      1 (3.6%)
   Andre Heider                      1 (3.6%)
   Wolfgang Grandegger               1 (3.6%)
   Ard Biesheuvel                    1 (3.6%)
   Michael Trimarchi                 1 (3.6%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Heinrich Schuchardt               7 (25.0%)
   liucheng (G)                      5 (17.9%)
   Jagan Teki                        3 (10.7%)
   Eugeniu Rosca                     3 (10.7%)
   Anatolij Gustschin                2 (7.1%)
   Bin Meng                          2 (7.1%)
   Tom Rini                          1 (3.6%)
   Simon Goldschmidt                 1 (3.6%)
   Suniel Mahesh                     1 (3.6%)
   Thierry Reding                    1 (3.6%)
   Roman Stratiienko                 1 (3.6%)
   Luca Ceresoli                     1 (3.6%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         607 (30.2%)
   Google, Inc.                      253 (12.6%)
   NXP                               216 (10.8%)
   Rockchip                          144 (7.2%)
   ST Microelectronics               140 (7.0%)
   Texas Instruments                 133 (6.6%)
   DENX Software Engineering         130 (6.5%)
   Amarula Solutions                 96 (4.8%)
   Linaro                            53 (2.6%)
   BayLibre SAS                      37 (1.8%)
   Intel                             33 (1.6%)
   Konsulko Group                    30 (1.5%)
   Socionext Inc.                    28 (1.4%)
   ARM                               16 (0.8%)
   Pepperl+Fuchs                     13 (0.6%)
   Bootlin                           12 (0.6%)
   SUSE                              11 (0.5%)
   Toradex                           11 (0.5%)
   AMD                               6 (0.3%)
   Xilinx                            6 (0.3%)
   Collabora Ltd.                    5 (0.2%)
   Huawei Technologies               5 (0.2%)
   IBM                               4 (0.2%)
   NVidia                            4 (0.2%)
   National Instruments              3 (0.1%)
   Samsung                           3 (0.1%)
   Pengutronix                       2 (0.1%)
   Ronetix                           2 (0.1%)
   LWN.net                           1 (0.0%)
   Marvell                           1 (0.0%)
   Renesas Electronics               1 (0.0%)
   Siemens                           1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         35820 (28.2%)
   Google, Inc.                      15764 (12.4%)
   DENX Software Engineering         13966 (11.0%)
   NXP                               13113 (10.3%)
   Amarula Solutions                 7993 (6.3%)
   Texas Instruments                 7484 (5.9%)
   Rockchip                          7183 (5.7%)
   ST Microelectronics               5440 (4.3%)
   Linaro                            4849 (3.8%)
   BayLibre SAS                      4685 (3.7%)
   Pengutronix                       2338 (1.8%)
   Konsulko Group                    2261 (1.8%)
   Intel                             1677 (1.3%)
   Socionext Inc.                    1257 (1.0%)
   Pepperl+Fuchs                     1008 (0.8%)
   ARM                               669 (0.5%)
   Collabora Ltd.                    271 (0.2%)
   Toradex                           246 (0.2%)
   Ronetix                           198 (0.2%)
   IBM                               174 (0.1%)
   SUSE                              128 (0.1%)
   Xilinx                            114 (0.1%)
   Bootlin                           96 (0.1%)
   LWN.net                           59 (0.0%)
   NVidia                            27 (0.0%)
   Marvell                           19 (0.0%)
   AMD                               18 (0.0%)
   Huawei Technologies               16 (0.0%)
   Samsung                           14 (0.0%)
   National Instruments              12 (0.0%)
   Siemens                           3 (0.0%)
   Renesas Electronics               2 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Rockchip                          62 (18.5%)
   (Unknown)                         53 (15.8%)
   ST Microelectronics               43 (12.8%)
   DENX Software Engineering         38 (11.3%)
   Texas Instruments                 27 (8.1%)
   NXP                               20 (6.0%)
   Xilinx                            20 (6.0%)
   NVidia                            16 (4.8%)
   Konsulko Group                    14 (4.2%)
   Toradex                           11 (3.3%)
   SUSE                              10 (3.0%)
   Amarula Solutions                 6 (1.8%)
   BayLibre SAS                      6 (1.8%)
   Linaro                            3 (0.9%)
   Socionext Inc.                    1 (0.3%)
   ARM                               1 (0.3%)
   Marvell                           1 (0.3%)
   Samsung                           1 (0.3%)
   Bosch                             1 (0.3%)
   Sergey Kubushyn                   1 (0.3%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         96 (49.7%)
   NXP                               20 (10.4%)
   Texas Instruments                 11 (5.7%)
   Linaro                            7 (3.6%)
   DENX Software Engineering         6 (3.1%)
   ST Microelectronics               5 (2.6%)
   SUSE                              4 (2.1%)
   BayLibre SAS                      4 (2.1%)
   Intel                             4 (2.1%)
   NVidia                            3 (1.6%)
   Toradex                           3 (1.6%)
   Amarula Solutions                 3 (1.6%)
   Socionext Inc.                    3 (1.6%)
   ARM                               3 (1.6%)
   Rockchip                          2 (1.0%)
   Google, Inc.                      2 (1.0%)
   Collabora Ltd.                    2 (1.0%)
   Xilinx                            1 (0.5%)
   Konsulko Group                    1 (0.5%)
   Marvell                           1 (0.5%)
   Samsung                           1 (0.5%)
   Pengutronix                       1 (0.5%)
   Pepperl+Fuchs                     1 (0.5%)
   Ronetix                           1 (0.5%)
   IBM                               1 (0.5%)
   Bootlin                           1 (0.5%)
   LWN.net                           1 (0.5%)
   AMD                               1 (0.5%)
   Huawei Technologies               1 (0.5%)
   National Instruments              1 (0.5%)
   Siemens                           1 (0.5%)
   Renesas Electronics               1 (0.5%)
   ================================  =====
