:orphan:

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

* Processed 1149 csets from 140 developers

* 29 employers found

* A total of 99015 lines added, 19344 removed (delta 79671)

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

   ================================  =====
   Name                              Count
   ================================  =====
   Simon Glass                       136 (11.8%)
   Bin Meng                          88 (7.7%)
   Jean-Jacques Hiblot               62 (5.4%)
   Heinrich Schuchardt               48 (4.2%)
   Marek Vasut                       37 (3.2%)
   Álvaro Fernández Rojas            36 (3.1%)
   Michal Simek                      28 (2.4%)
   Lukas Auer                        28 (2.4%)
   Peng Fan                          26 (2.3%)
   Tom Rini                          21 (1.8%)
   Stefan Roese                      21 (1.8%)
   Patrice Chotard                   20 (1.7%)
   Adam Ford                         20 (1.7%)
   Rajesh Bhagat                     19 (1.7%)
   Mario Six                         18 (1.6%)
   Philipp Tomsich                   16 (1.4%)
   Ryder Lee                         16 (1.4%)
   Lukasz Majewski                   14 (1.2%)
   Andy Shevchenko                   14 (1.2%)
   Neil Armstrong                    14 (1.2%)
   Jagan Teki                        13 (1.1%)
   Lokesh Vutla                      13 (1.1%)
   Jerome Brunet                     13 (1.1%)
   Simon Goldschmidt                 13 (1.1%)
   Cédric Le Goater                  13 (1.1%)
   Christoph Muellner                11 (1.0%)
   Chris Packham                     11 (1.0%)
   Boris Brezillon                   11 (1.0%)
   Otavio Salvador                   10 (0.9%)
   Baruch Siach                      10 (0.9%)
   Peng Ma                           10 (0.9%)
   Christophe Leroy                  10 (0.9%)
   Philippe Reynes                   10 (0.9%)
   Masahiro Yamada                   9 (0.8%)
   Gregory CLEMENT                   9 (0.8%)
   Alexander Graf                    8 (0.7%)
   Ang, Chee Hong                    8 (0.7%)
   Olliver Schinagl                  8 (0.7%)
   Grygorii Strashko                 8 (0.7%)
   Ye Li                             7 (0.6%)
   Andre Przywara                    7 (0.6%)
   Kever Yang                        7 (0.6%)
   Aditya Prayoga                    7 (0.6%)
   Rick Chen                         7 (0.6%)
   Anup Patel                        7 (0.6%)
   AKASHI Takahiro                   7 (0.6%)
   Alexey Brodkin                    7 (0.6%)
   Vasily Khoruzhick                 7 (0.6%)
   Stefan Agner                      6 (0.5%)
   Daniel Schwierzeck                6 (0.5%)
   Paul Burton                       5 (0.4%)
   Patrick Delaunay                  5 (0.4%)
   Siva Durga Prasad Paladugu        5 (0.4%)
   Felix Brack                       5 (0.4%)
   Keerthy                           5 (0.4%)
   Priyanka Jain                     5 (0.4%)
   Pankit Garg                       5 (0.4%)
   Sven Schwermer                    5 (0.4%)
   Tuomas Tynkkynen                  5 (0.4%)
   Fabio Estevam                     4 (0.3%)
   Michael Heimpold                  4 (0.3%)
   Weijie Gao                        4 (0.3%)
   Benjamin Gaignard                 4 (0.3%)
   Yegor Yefremov                    4 (0.3%)
   Marcin Niestroj                   4 (0.3%)
   Fabrice Gasnier                   4 (0.3%)
   Sam Protsenko                     3 (0.3%)
   Guillaume GARDET                  3 (0.3%)
   Martin Fuzzey                     3 (0.3%)
   Denis Zalevskiy                   3 (0.3%)
   Anatolij Gustschin                3 (0.3%)
   Jonathan Gray                     3 (0.3%)
   Andrew F. Davis                   3 (0.3%)
   Vignesh R                         3 (0.3%)
   York Sun                          3 (0.3%)
   Manivannan Sadhasivam             3 (0.3%)
   Miquel Raynal                     3 (0.3%)
   Quentin Schulz                    3 (0.3%)
   Shawn Guo                         2 (0.2%)
   Soeren Moch                       2 (0.2%)
   Stefan Mavrodiev                  2 (0.2%)
   Gary Bisson                       2 (0.2%)
   Xiaoliang Yang                    2 (0.2%)
   Anand Moon                        2 (0.2%)
   Martyn Welch                      2 (0.2%)
   Sumit Garg                        2 (0.2%)
   Heiko Schocher                    2 (0.2%)
   Andreas Dannenberg                2 (0.2%)
   Thomas RIENOESSL                  2 (0.2%)
   Takeshi Kihara                    2 (0.2%)
   Hiroyuki Yokoyama                 2 (0.2%)
   Frank Wunderlich                  2 (0.2%)
   Carlo Caione                      2 (0.2%)
   Patrick Wildt                     2 (0.2%)
   Heiko Stuebner                    2 (0.2%)
   Richard Röjfors                   2 (0.2%)
   Trevor Woerner                    2 (0.2%)
   Icenowy Zheng                     2 (0.2%)
   Liviu Dudau                       2 (0.2%)
   Konrad Beckmann                   2 (0.2%)
   Vladimir Zapolskiy                2 (0.2%)
   Chris Spencer                     1 (0.1%)
   Alex Elder                        1 (0.1%)
   Tien Fong Chee                    1 (0.1%)
   Priit Laes                        1 (0.1%)
   Enric Balletbo i Serra            1 (0.1%)
   Nikolai Zhubr                     1 (0.1%)
   Harald Seiler                     1 (0.1%)
   Stefano Babic                     1 (0.1%)
   Parthiban Nallathambi             1 (0.1%)
   Yaniv Levinsky                    1 (0.1%)
   Martin Husemann                   1 (0.1%)
   Fabien Lahoudere                  1 (0.1%)
   Christian Gmeiner                 1 (0.1%)
   From: Karl Palsson                1 (0.1%)
   Cristian Ciocaltea                1 (0.1%)
   Seung-Woo Kim                     1 (0.1%)
   Loic Devulder                     1 (0.1%)
   Pierre-Jean Texier                1 (0.1%)
   Igor Opaniuk                      1 (0.1%)
   Petr Štetiar                      1 (0.1%)
   Sekhar Nori                       1 (0.1%)
   Klaus Goger                       1 (0.1%)
   Hannes Schmelzer                  1 (0.1%)
   Eugen Hristev                      1 (0.1%)
   Hou Zhiqiang                      1 (0.1%)
   Ashish Kumar                      1 (0.1%)
   Pramod Kumar                      1 (0.1%)
   Alison Wang                       1 (0.1%)
   Randy Li                          1 (0.1%)
   Jorge Ramirez-Ortiz               1 (0.1%)
   Vipul Kumar                       1 (0.1%)
   T Karthik Reddy                   1 (0.1%)
   Emmanuel Vadot                    1 (0.1%)
   Martin Lund                       1 (0.1%)
   Guochun Mao                       1 (0.1%)
   Michael Trimarchi                 1 (0.1%)
   Rabeeh Khoury                     1 (0.1%)
   Prasanthi Chellakumar             1 (0.1%)
   Jun Nie                           1 (0.1%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Ryder Lee                         9640 (9.2%)
   Simon Glass                       8148 (7.8%)
   Marek Vasut                       7684 (7.4%)
   Peng Fan                          7178 (6.9%)
   Bin Meng                          5545 (5.3%)
   Neil Armstrong                    4029 (3.9%)
   Álvaro Fernández Rojas            3615 (3.5%)
   Gregory CLEMENT                   3539 (3.4%)
   Paul Burton                       3514 (3.4%)
   Lokesh Vutla                      3242 (3.1%)
   Jean-Jacques Hiblot               2776 (2.7%)
   Manivannan Sadhasivam             2577 (2.5%)
   Rajesh Bhagat                     2282 (2.2%)
   Jerome Brunet                     2058 (2.0%)
   Cédric Le Goater                  1822 (1.7%)
   Weijie Gao                        1793 (1.7%)
   Mario Six                         1738 (1.7%)
   Stefan Roese                      1546 (1.5%)
   Tuomas Tynkkynen                  1502 (1.4%)
   Grygorii Strashko                 1473 (1.4%)
   Simon Goldschmidt                 1358 (1.3%)
   Adam Ford                         1349 (1.3%)
   Chris Packham                     1333 (1.3%)
   Heinrich Schuchardt               1290 (1.2%)
   Philipp Tomsich                   1241 (1.2%)
   Philippe Reynes                   1206 (1.2%)
   Otavio Salvador                   1179 (1.1%)
   Masahiro Yamada                   1112 (1.1%)
   Lukasz Majewski                   1110 (1.1%)
   Andre Przywara                    1021 (1.0%)
   Quentin Schulz                    1012 (1.0%)
   Priyanka Jain                     829 (0.8%)
   Patrice Chotard                   787 (0.8%)
   Rick Chen                         740 (0.7%)
   Felix Brack                       677 (0.6%)
   Lukas Auer                        625 (0.6%)
   Tom Rini                          618 (0.6%)
   Martin Fuzzey                     580 (0.6%)
   Christophe Leroy                  578 (0.6%)
   Benjamin Gaignard                 560 (0.5%)
   Pankit Garg                       520 (0.5%)
   Jagan Teki                        491 (0.5%)
   Ang, Chee Hong                    478 (0.5%)
   Yegor Yefremov                    460 (0.4%)
   Marcin Niestroj                   454 (0.4%)
   Vasily Khoruzhick                 398 (0.4%)
   Christoph Muellner                394 (0.4%)
   Rabeeh Khoury                     391 (0.4%)
   Andy Shevchenko                   385 (0.4%)
   Vignesh R                         369 (0.4%)
   Guochun Mao                       367 (0.4%)
   Anup Patel                        366 (0.4%)
   York Sun                          332 (0.3%)
   Alexey Brodkin                    298 (0.3%)
   Boris Brezillon                   240 (0.2%)
   Michal Simek                      200 (0.2%)
   Olliver Schinagl                  171 (0.2%)
   Fabrice Gasnier                   159 (0.2%)
   AKASHI Takahiro                   156 (0.1%)
   Loic Devulder                     151 (0.1%)
   Baruch Siach                      149 (0.1%)
   Jun Nie                           140 (0.1%)
   Daniel Schwierzeck                128 (0.1%)
   Alexander Graf                    127 (0.1%)
   Denis Zalevskiy                   127 (0.1%)
   Miquel Raynal                     124 (0.1%)
   Sven Schwermer                    117 (0.1%)
   Prasanthi Chellakumar             114 (0.1%)
   Fabien Lahoudere                  111 (0.1%)
   Siva Durga Prasad Paladugu        106 (0.1%)
   Aditya Prayoga                    99 (0.1%)
   Ye Li                             95 (0.1%)
   Peng Ma                           91 (0.1%)
   Heiko Stuebner                    83 (0.1%)
   Patrick Delaunay                  74 (0.1%)
   Andreas Dannenberg                56 (0.1%)
   Vipul Kumar                       54 (0.1%)
   Kever Yang                        53 (0.1%)
   Anatolij Gustschin                50 (0.0%)
   Vladimir Zapolskiy                50 (0.0%)
   Icenowy Zheng                     49 (0.0%)
   Randy Li                          49 (0.0%)
   Heiko Schocher                    42 (0.0%)
   Fabio Estevam                     29 (0.0%)
   Xiaoliang Yang                    28 (0.0%)
   Sumit Garg                        28 (0.0%)
   Liviu Dudau                       28 (0.0%)
   Parthiban Nallathambi             27 (0.0%)
   Pramod Kumar                      27 (0.0%)
   Andrew F. Davis                   24 (0.0%)
   Stefan Agner                      22 (0.0%)
   Keerthy                           20 (0.0%)
   T Karthik Reddy                   19 (0.0%)
   Gary Bisson                       18 (0.0%)
   Takeshi Kihara                    15 (0.0%)
   Jonathan Gray                     14 (0.0%)
   Patrick Wildt                     14 (0.0%)
   Carlo Caione                      13 (0.0%)
   Seung-Woo Kim                     12 (0.0%)
   Hannes Schmelzer                  12 (0.0%)
   Frank Wunderlich                  11 (0.0%)
   Stefano Babic                     10 (0.0%)
   From: Karl Palsson                10 (0.0%)
   Eugen Hristev                      10 (0.0%)
   Sam Protsenko                     9 (0.0%)
   Shawn Guo                         9 (0.0%)
   Stefan Mavrodiev                  8 (0.0%)
   Hiroyuki Yokoyama                 8 (0.0%)
   Konrad Beckmann                   8 (0.0%)
   Sekhar Nori                       8 (0.0%)
   Hou Zhiqiang                      7 (0.0%)
   Ashish Kumar                      7 (0.0%)
   Anand Moon                        6 (0.0%)
   Thomas RIENOESSL                  6 (0.0%)
   Michael Heimpold                  5 (0.0%)
   Guillaume GARDET                  5 (0.0%)
   Martyn Welch                      5 (0.0%)
   Trevor Woerner                    5 (0.0%)
   Yaniv Levinsky                    5 (0.0%)
   Cristian Ciocaltea                5 (0.0%)
   Petr Štetiar                      5 (0.0%)
   Klaus Goger                       5 (0.0%)
   Nikolai Zhubr                     4 (0.0%)
   Martin Lund                       4 (0.0%)
   Soeren Moch                       3 (0.0%)
   Chris Spencer                     3 (0.0%)
   Alex Elder                        3 (0.0%)
   Igor Opaniuk                      3 (0.0%)
   Richard Röjfors                   2 (0.0%)
   Priit Laes                        2 (0.0%)
   Christian Gmeiner                 2 (0.0%)
   Pierre-Jean Texier                2 (0.0%)
   Alison Wang                       2 (0.0%)
   Tien Fong Chee                    1 (0.0%)
   Enric Balletbo i Serra            1 (0.0%)
   Harald Seiler                     1 (0.0%)
   Martin Husemann                   1 (0.0%)
   Jorge Ramirez-Ortiz               1 (0.0%)
   Emmanuel Vadot                    1 (0.0%)
   Michael Trimarchi                 1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Tom Rini                          268 (1.4%)
   Jagan Teki                        129 (0.7%)
   Christophe Leroy                  128 (0.7%)
   Daniel Schwierzeck                104 (0.5%)
   Chris Packham                     91 (0.5%)
   Grygorii Strashko                 90 (0.5%)
   Vladimir Zapolskiy                10 (0.1%)
   Patrick Delaunay                  7 (0.0%)
   Sam Protsenko                     5 (0.0%)
   Jonathan Gray                     3 (0.0%)
   Shawn Guo                         3 (0.0%)
   From: Karl Palsson                2 (0.0%)
   Sekhar Nori                       1 (0.0%)
   Christian Gmeiner                 1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Alexander Graf                    59 (22.1%)
   Stefan Roese                      24 (9.0%)
   Neil Armstrong                    15 (5.6%)
   Pankit Garg                       12 (4.5%)
   Michal Simek                      9 (3.4%)
   Marek Vasut                       9 (3.4%)
   Bin Meng                          9 (3.4%)
   Priit Laes                        8 (3.0%)
   Tom Rini                          7 (2.6%)
   Ezequiel Garcia                   7 (2.6%)
   Vinitha V Pillai                  7 (2.6%)
   Andreas Dannenberg                7 (2.6%)
   Minkyu Kang                       6 (2.2%)
   Jagan Teki                        5 (1.9%)
   Daniel Schwierzeck                4 (1.5%)
   Jerome Brunet                     4 (1.5%)
   Jean-Jacques Hiblot               4 (1.5%)
   Simon Glass                       4 (1.5%)
   Ruchika Gupta                     3 (1.1%)
   Keerthy                           3 (1.1%)
   Fabien Lahoudere                  3 (1.1%)
   Philipp Tomsich                   3 (1.1%)
   Weijie Gao                        3 (1.1%)
   Rajesh Bhagat                     3 (1.1%)
   Grygorii Strashko                 2 (0.7%)
   Sriram Dash                       2 (0.7%)
   Schuyler Patton                   2 (0.7%)
   James Doublesin                   2 (0.7%)
   Hiroyuki Yokoyama                 2 (0.7%)
   York Sun                          2 (0.7%)
   Anatolij Gustschin                2 (0.7%)
   Heiko Stuebner                    2 (0.7%)
   Siva Durga Prasad Paladugu        2 (0.7%)
   Tuomas Tynkkynen                  2 (0.7%)
   Peng Fan                          2 (0.7%)
   Ryder Lee                         2 (0.7%)
   Shawn Guo                         1 (0.4%)
   Praneeth Bajjuri                  1 (0.4%)
   Javier Martínez Canillas          1 (0.4%)
   Jon Nettleton                     1 (0.4%)
   Robert Berger                     1 (0.4%)
   Josua Mayer                       1 (0.4%)
   Bao Xiaowei                       1 (0.4%)
   Meenakshi Aggarwal                1 (0.4%)
   Vabhav Sharma                     1 (0.4%)
   Rajat Srivastava                  1 (0.4%)
   Fabio Berton                      1 (0.4%)
   Oleksandr Tymoshenko              1 (0.4%)
   Wu Zou                            1 (0.4%)
   Christophe Kerello                1 (0.4%)
   Hou Zhiqiang                      1 (0.4%)
   Stefano Babic                     1 (0.4%)
   Vignesh R                         1 (0.4%)
   Icenowy Zheng                     1 (0.4%)
   Baruch Siach                      1 (0.4%)
   Lukas Auer                        1 (0.4%)
   Christoph Muellner                1 (0.4%)
   Vasily Khoruzhick                 1 (0.4%)
   Patrice Chotard                   1 (0.4%)
   Andre Przywara                    1 (0.4%)
   Lokesh Vutla                      1 (0.4%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Simon Glass                       197 (29.6%)
   Tom Rini                          86 (12.9%)
   Bin Meng                          47 (7.1%)
   York Sun                          40 (6.0%)
   Philipp Tomsich                   37 (5.6%)
   Lukas Auer                        27 (4.1%)
   Stefan Roese                      25 (3.8%)
   Anup Patel                        22 (3.3%)
   Heiko Schocher                    20 (3.0%)
   Jagan Teki                        18 (2.7%)
   Rick Chen                         18 (2.7%)
   Daniel Schwierzeck                14 (2.1%)
   Anatolij Gustschin                12 (1.8%)
   Joel Stanley                      12 (1.8%)
   Heinrich Schuchardt               10 (1.5%)
   Lukasz Majewski                   9 (1.4%)
   Alexander Graf                    6 (0.9%)
   Marek Vasut                       6 (0.9%)
   Dennis Gilmore                    6 (0.9%)
   Peng Fan                          5 (0.8%)
   Patrice Chotard                   4 (0.6%)
   Patrick Delaunay                  3 (0.5%)
   Stefan Agner                      3 (0.5%)
   Breno Lima                        3 (0.5%)
   Miquel Raynal                     3 (0.5%)
   Felix Brack                       3 (0.5%)
   Jean-Jacques Hiblot               2 (0.3%)
   Andre Przywara                    2 (0.3%)
   Lokesh Vutla                      2 (0.3%)
   Christian Gmeiner                 2 (0.3%)
   Joe Hershberger                   2 (0.3%)
   Jerome Brunet                     1 (0.2%)
   Weijie Gao                        1 (0.2%)
   Stefano Babic                     1 (0.2%)
   Sam Protsenko                     1 (0.2%)
   Richard Röjfors                   1 (0.2%)
   Faiz Abbas                        1 (0.2%)
   Palmer Dabbelt                    1 (0.2%)
   Jens Wiklander                    1 (0.2%)
   Stephen Warren                    1 (0.2%)
   Jack Mitchell                     1 (0.2%)
   Joakim Tjernlund                  1 (0.2%)
   Andy Yan                          1 (0.2%)
   Nishanth Menon                    1 (0.2%)
   Chen-Yu Tsai                      1 (0.2%)
   Igor Opaniuk                      1 (0.2%)
   Hannes Schmelzer                  1 (0.2%)
   Sumit Garg                        1 (0.2%)
   Boris Brezillon                   1 (0.2%)
   Simon Goldschmidt                 1 (0.2%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Heiko Schocher                    11 (14.1%)
   Matthias Brugger                  7 (9.0%)
   Bin Meng                          6 (7.7%)
   Dennis Gilmore                    6 (7.7%)
   Jerome Brunet                     4 (5.1%)
   Peter Robinson                    4 (5.1%)
   Maxime Ripard                     4 (5.1%)
   Klaus Goger                       4 (5.1%)
   Jagan Teki                        3 (3.8%)
   Felix Brack                       3 (3.8%)
   Priit Laes                        3 (3.8%)
   Baruch Siach                      2 (2.6%)
   Simon Glass                       1 (1.3%)
   Lukas Auer                        1 (1.3%)
   Stefan Roese                      1 (1.3%)
   Sam Protsenko                     1 (1.3%)
   Richard Röjfors                   1 (1.3%)
   Stephen Warren                    1 (1.3%)
   Jack Mitchell                     1 (1.3%)
   Igor Opaniuk                      1 (1.3%)
   Hannes Schmelzer                  1 (1.3%)
   Sumit Garg                        1 (1.3%)
   Ryder Lee                         1 (1.3%)
   Christoph Muellner                1 (1.3%)
   Vasily Khoruzhick                 1 (1.3%)
   Jonathan Gray                     1 (1.3%)
   Ricardo Salveti                   1 (1.3%)
   Marek Kraus                       1 (1.3%)
   Vagrant Cascadian                 1 (1.3%)
   Patrick.Delaunay                  1 (1.3%)
   Soeren Moch                       1 (1.3%)
   Frank Wunderlich                  1 (1.3%)
   Loic Devulder                     1 (1.3%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Boris Brezillon                   11 (14.1%)
   Ryder Lee                         7 (9.0%)
   Vasily Khoruzhick                 7 (9.0%)
   Aditya Prayoga                    6 (7.7%)
   Philipp Tomsich                   5 (6.4%)
   Anup Patel                        5 (6.4%)
   Alexander Graf                    5 (6.4%)
   Jean-Jacques Hiblot               5 (6.4%)
   Neil Armstrong                    4 (5.1%)
   Patrick Delaunay                  3 (3.8%)
   Bin Meng                          2 (2.6%)
   Jagan Teki                        2 (2.6%)
   Weijie Gao                        2 (2.6%)
   Fabio Estevam                     2 (2.6%)
   Kever Yang                        2 (2.6%)
   Manivannan Sadhasivam             2 (2.6%)
   Anatolij Gustschin                1 (1.3%)
   Heinrich Schuchardt               1 (1.3%)
   Andre Przywara                    1 (1.3%)
   Shawn Guo                         1 (1.3%)
   Icenowy Zheng                     1 (1.3%)
   Chris Packham                     1 (1.3%)
   From: Karl Palsson                1 (1.3%)
   Randy Li                          1 (1.3%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Heinrich Schuchardt               3 (10.3%)
   Jean-Jacques Hiblot               2 (6.9%)
   Jagan Teki                        1 (3.4%)
   Priit Laes                        1 (3.4%)
   Baruch Siach                      1 (3.4%)
   Simon Glass                       1 (3.4%)
   Lukas Auer                        1 (3.4%)
   Stefan Roese                      1 (3.4%)
   Sam Protsenko                     1 (3.4%)
   Igor Opaniuk                      1 (3.4%)
   Jonathan Gray                     1 (3.4%)
   Ricardo Salveti                   1 (3.4%)
   Loic Devulder                     1 (3.4%)
   Marek Vasut                       1 (3.4%)
   Patrice Chotard                   1 (3.4%)
   Joakim Tjernlund                  1 (3.4%)
   Alex Kiernan                      1 (3.4%)
   Siarhei Siamashka                 1 (3.4%)
   Assaf Agmon                       1 (3.4%)
   Liam O'Shaughnessy                1 (3.4%)
   Dominik Adamski                   1 (3.4%)
   Roosen Henri                      1 (3.4%)
   Jakob Unterwurzacher              1 (3.4%)
   Chris Spencer                     1 (3.4%)
   AKASHI Takahiro                   1 (3.4%)
   Andy Shevchenko                   1 (3.4%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Alexander Graf                    6 (20.7%)
   Heinrich Schuchardt               3 (10.3%)
   Jean-Jacques Hiblot               3 (10.3%)
   Bin Meng                          3 (10.3%)
   Fabio Estevam                     2 (6.9%)
   Tom Rini                          2 (6.9%)
   Lokesh Vutla                      2 (6.9%)
   Philipp Tomsich                   1 (3.4%)
   Shawn Guo                         1 (3.4%)
   Christoph Muellner                1 (3.4%)
   Lukasz Majewski                   1 (3.4%)
   Simon Goldschmidt                 1 (3.4%)
   Christophe Leroy                  1 (3.4%)
   Guillaume GARDET                  1 (3.4%)
   Adam Ford                         1 (3.4%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         473 (41.2%)
   Google, Inc.                      136 (11.8%)
   Texas Instruments                 97 (8.4%)
   NXP                               81 (7.0%)
   DENX Software Engineering         80 (7.0%)
   BayLibre SAS                      29 (2.5%)
   ST Microelectronics               29 (2.5%)
   AMD                               28 (2.4%)
   Linaro                            24 (2.1%)
   Intel                             23 (2.0%)
   Konsulko Group                    21 (1.8%)
   Guntermann & Drunck               18 (1.6%)
   Bootlin                           15 (1.3%)
   Amarula Solutions                 14 (1.2%)
   Pepperl+Fuchs                     13 (1.1%)
   O.S. Systems                      10 (0.9%)
   ARM                               9 (0.8%)
   Socionext Inc.                    9 (0.8%)
   Rockchip                          7 (0.6%)
   Xilinx                            7 (0.6%)
   Toradex                           6 (0.5%)
   MIPS                              5 (0.4%)
   Renesas Electronics               4 (0.3%)
   Collabora Ltd.                    3 (0.3%)
   General Electric                  3 (0.3%)
   Boundary Devices                  2 (0.2%)
   CompuLab                          1 (0.1%)
   Samsung                           1 (0.1%)
   SUSE                              1 (0.1%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         38226 (36.6%)
   NXP                               11398 (10.9%)
   DENX Software Engineering         10470 (10.0%)
   Google, Inc.                      8148 (7.8%)
   Texas Instruments                 7968 (7.6%)
   BayLibre SAS                      6100 (5.8%)
   Bootlin                           4675 (4.5%)
   MIPS                              3514 (3.4%)
   Linaro                            3483 (3.3%)
   Guntermann & Drunck               1738 (1.7%)
   Pepperl+Fuchs                     1358 (1.3%)
   O.S. Systems                      1179 (1.1%)
   Socionext Inc.                    1112 (1.1%)
   ARM                               1049 (1.0%)
   ST Microelectronics               1020 (1.0%)
   Intel                             864 (0.8%)
   Konsulko Group                    618 (0.6%)
   Amarula Solutions                 492 (0.5%)
   AMD                               200 (0.2%)
   Xilinx                            179 (0.2%)
   SUSE                              151 (0.1%)
   General Electric                  127 (0.1%)
   Collabora Ltd.                    116 (0.1%)
   Rockchip                          53 (0.1%)
   Renesas Electronics               23 (0.0%)
   Toradex                           22 (0.0%)
   Boundary Devices                  18 (0.0%)
   Samsung                           12 (0.0%)
   CompuLab                          5 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   SUSE                              59 (22.1%)
   (Unknown)                         55 (20.6%)
   NXP                               36 (13.5%)
   DENX Software Engineering         27 (10.1%)
   Texas Instruments                 23 (8.6%)
   BayLibre SAS                      19 (7.1%)
   Collabora Ltd.                    10 (3.7%)
   Xilinx                            9 (3.4%)
   Konsulko Group                    7 (2.6%)
   Samsung                           6 (2.2%)
   Amarula Solutions                 5 (1.9%)
   Google, Inc.                      4 (1.5%)
   ST Microelectronics               2 (0.7%)
   Renesas Electronics               2 (0.7%)
   Linaro                            1 (0.4%)
   O.S. Systems                      1 (0.4%)
   ARM                               1 (0.4%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         65 (46.1%)
   NXP                               12 (8.5%)
   Linaro                            9 (6.4%)
   DENX Software Engineering         8 (5.7%)
   Texas Instruments                 8 (5.7%)
   BayLibre SAS                      3 (2.1%)
   Collabora Ltd.                    3 (2.1%)
   Xilinx                            3 (2.1%)
   ST Microelectronics               3 (2.1%)
   Bootlin                           3 (2.1%)
   Intel                             3 (2.1%)
   Amarula Solutions                 2 (1.4%)
   Renesas Electronics               2 (1.4%)
   ARM                               2 (1.4%)
   SUSE                              1 (0.7%)
   Konsulko Group                    1 (0.7%)
   Samsung                           1 (0.7%)
   Google, Inc.                      1 (0.7%)
   O.S. Systems                      1 (0.7%)
   MIPS                              1 (0.7%)
   Guntermann & Drunck               1 (0.7%)
   Pepperl+Fuchs                     1 (0.7%)
   Socionext Inc.                    1 (0.7%)
   AMD                               1 (0.7%)
   General Electric                  1 (0.7%)
   Rockchip                          1 (0.7%)
   Toradex                           1 (0.7%)
   Boundary Devices                  1 (0.7%)
   CompuLab                          1 (0.7%)
   ================================  =====
