:orphan:

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

* Processed 1193 csets from 182 developers

* 28 employers found

* A total of 76038 lines added, 22237 removed (delta 53801)

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

   ================================  =====
   Name                              Count
   ================================  =====
   Heinrich Schuchardt               94 (7.9%)
   Simon Glass                       90 (7.5%)
   Michal Simek                      64 (5.4%)
   Marek Vasut                       55 (4.6%)
   Jagan Teki                        45 (3.8%)
   Simon Goldschmidt                 32 (2.7%)
   Chris Packham                     29 (2.4%)
   Adam Ford                         26 (2.2%)
   Horatiu Vultur                    26 (2.2%)
   Fabio Estevam                     24 (2.0%)
   Vignesh R                         23 (1.9%)
   Abel Vesa                         21 (1.8%)
   Tom Rini                          18 (1.5%)
   Patrick Delaunay                  18 (1.5%)
   AKASHI Takahiro                   18 (1.5%)
   Krzysztof Kozlowski               17 (1.4%)
   Tim Harvey                        17 (1.4%)
   Philippe Reynes                   16 (1.3%)
   Stefan Roese                      14 (1.2%)
   Andrew F. Davis                   14 (1.2%)
   Siva Durga Prasad Paladugu        14 (1.2%)
   Mian Yousaf Kaukab                13 (1.1%)
   Lars Povlsen                      13 (1.1%)
   Baruch Siach                      12 (1.0%)
   Peng Fan                          12 (1.0%)
   Stefan Agner                      12 (1.0%)
   David Wu                          10 (0.8%)
   Rajesh Bhagat                     10 (0.8%)
   Anup Patel                        10 (0.8%)
   Marek Behún                       10 (0.8%)
   Jean-Jacques Hiblot               9 (0.8%)
   Martyn Welch                      9 (0.8%)
   Hiroyuki Yokoyama                 9 (0.8%)
   Weijie Gao                        9 (0.8%)
   Lukasz Majewski                   8 (0.7%)
   Philipp Tomsich                   8 (0.7%)
   Masahiro Yamada                   8 (0.7%)
   Bryan O'Donoghue                  8 (0.7%)
   Andy Shevchenko                   8 (0.7%)
   Peng Ma                           8 (0.7%)
   Ramon Fried                       8 (0.7%)
   Neil Armstrong                    7 (0.6%)
   Alexander Graf                    7 (0.6%)
   Daniel Schwierzeck                7 (0.6%)
   Bin Meng                          7 (0.6%)
   Ismael Luceno Cortes              7 (0.6%)
   Lukas Auer                        7 (0.6%)
   Tien Fong Chee                    7 (0.6%)
   Breno Matheus Lima                7 (0.6%)
   Boris Brezillon                   7 (0.6%)
   Enric Balletbo i Serra            7 (0.6%)
   Hannes Schmelzer                  6 (0.5%)
   Alexey Brodkin                    6 (0.5%)
   Andre Przywara                    6 (0.5%)
   Peter Robinson                    6 (0.5%)
   Priyanka Jain                     6 (0.5%)
   Shawn Guo                         6 (0.5%)
   Maxime Jourdan                    6 (0.5%)
   Heiko Schocher                    5 (0.4%)
   Pankaj Bansal                     5 (0.4%)
   Atish Patra                       5 (0.4%)
   Ye Li                             5 (0.4%)
   Rick Chen                         5 (0.4%)
   Lokesh Vutla                      4 (0.3%)
   Faiz Abbas                        4 (0.3%)
   Meenakshi Aggarwal                4 (0.3%)
   Marcin Niestroj                   4 (0.3%)
   Laurentiu Tudor                   4 (0.3%)
   Manivannan Sadhasivam             4 (0.3%)
   Priit Laes                        4 (0.3%)
   Gregory CLEMENT                   4 (0.3%)
   Eugen Hristev                     3 (0.3%)
   Shyam Saini                       3 (0.3%)
   Ley Foon Tan                      3 (0.3%)
   Eugeniu Rosca                     3 (0.3%)
   York Sun                          3 (0.3%)
   Felix Brack                       3 (0.3%)
   Tristan Bastian                   3 (0.3%)
   Marcel Ziswiler                   3 (0.3%)
   Pankit Garg                       3 (0.3%)
   Chen-Yu Tsai                      3 (0.3%)
   Patrick Bruenn                    3 (0.3%)
   Xiaowei Bao                       3 (0.3%)
   Andrejs Cainikovs                 2 (0.2%)
   Matthias Brugger                  2 (0.2%)
   Keerthy                           2 (0.2%)
   Minkyu Kang                       2 (0.2%)
   Vagrant Cascadian                 2 (0.2%)
   Stephen Warren                    2 (0.2%)
   Derald D. Woods                   2 (0.2%)
   Igor Opaniuk                      2 (0.2%)
   Roman Kapl                        2 (0.2%)
   Max Krummenacher                  2 (0.2%)
   Luis Araneda                      2 (0.2%)
   Olaf Mandel                       2 (0.2%)
   Sam Protsenko                     2 (0.2%)
   Fabien Parent                     2 (0.2%)
   Stefan Theil                      2 (0.2%)
   Valentin-catalin Neacsu           2 (0.2%)
   Mike Looijmans                    2 (0.2%)
   Joakim Tjernlund                  2 (0.2%)
   Hou Zhiqiang                      2 (0.2%)
   Ezequiel Garcia                   2 (0.2%)
   Thomas Petazzoni                  1 (0.1%)
   默默                                1 (0.1%)
   Chris Spencer                     1 (0.1%)
   Michael Trimarchi                 1 (0.1%)
   Kever Yang                        1 (0.1%)
   BOUGH CHEN                        1 (0.1%)
   Jernej Skrabec                    1 (0.1%)
   Eugeniy Paltsev                   1 (0.1%)
   Sébastien Szymanski               1 (0.1%)
   Dalon Westergreen                 1 (0.1%)
   Sean Nyekjaer                     1 (0.1%)
   Alison Wang                       1 (0.1%)
   Prabhakar Kushwaha                1 (0.1%)
   Pramod Kumar                      1 (0.1%)
   Ioana Ciocoi Radulescu            1 (0.1%)
   Soeren Moch                       1 (0.1%)
   Anand Moon                        1 (0.1%)
   Dinh Nguyen                       1 (0.1%)
   Jordan Hand                       1 (0.1%)
   Ondrej Jirman                     1 (0.1%)
   Stefan Mavrodiev                  1 (0.1%)
   Alexander Dahl                    1 (0.1%)
   Yunfeng Ding                      1 (0.1%)
   David Rivshin                     1 (0.1%)
   Julien Béraud                     1 (0.1%)
   Jan Kiszka                        1 (0.1%)
   Gerard Salvatella                 1 (0.1%)
   Jonathan Hunter                   1 (0.1%)
   Gervais, Francois                 1 (0.1%)
   Bin Liu                           1 (0.1%)
   Kurban Mallachiev                 1 (0.1%)
   Zhao Qiang                        1 (0.1%)
   Wen He                            1 (0.1%)
   Udit Agarwal                      1 (0.1%)
   Vabhav Sharma                     1 (0.1%)
   Yinbo Zhu                         1 (0.1%)
   Ang, Chee Hong                    1 (0.1%)
   Venkatesh Yadav Abbarapu          1 (0.1%)
   Shubhrajyoti Datta                1 (0.1%)
   Amit Kucheria                     1 (0.1%)
   Mounika Grace Akula               1 (0.1%)
   Jonathan Gray                     1 (0.1%)
   Adam Heinrich                     1 (0.1%)
   Leif Lindholm                     1 (0.1%)
   Tomas Novotny                     1 (0.1%)
   Bernhard Messerklinger            1 (0.1%)
   Hauke Mehrtens                    1 (0.1%)
   Andreas Dannenberg                1 (0.1%)
   Vladimir Vid                      1 (0.1%)
   Marty E. Plummer                  1 (0.1%)
   Mark Kettenis                     1 (0.1%)
   Jorge Ramire-Ortiz                1 (0.1%)
   Jorge Ramirez-Ortiz               1 (0.1%)
   Jerome Brunet                     1 (0.1%)
   Mario Six                         1 (0.1%)
   Greg Czerniak                     1 (0.1%)
   Angelo Dureghello                 1 (0.1%)
   Robert P. J. Day                  1 (0.1%)
   Sean Nyekjær                      1 (0.1%)
   Carlo Caione                      1 (0.1%)
   Aditya Prayoga                    1 (0.1%)
   Andreas Pretzsch                  1 (0.1%)
   Thomas RIENOESSL                  1 (0.1%)
   Anton Gerasimov                   1 (0.1%)
   Luca Ceresoli                     1 (0.1%)
   T Karthik Reddy                   1 (0.1%)
   Michael Tretter                   1 (0.1%)
   Quentin Schulz                    1 (0.1%)
   Aleksandr Aleksandrov             1 (0.1%)
   Frank Wunderlich                  1 (0.1%)
   Patrick Wildt                     1 (0.1%)
   Florinel Iordache                 1 (0.1%)
   Álvaro Fernández Rojas            1 (0.1%)
   Josef Lusticky                    1 (0.1%)
   Patrice Chotard                   1 (0.1%)
   Tomasz Gorochowik                 1 (0.1%)
   Sekhar Nori                       1 (0.1%)
   Christian GMEINER                 1 (0.1%)
   Yan Liu                           1 (0.1%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Simon Glass                       10585 (11.8%)
   David Wu                          9172 (10.2%)
   Vignesh R                         6854 (7.7%)
   Neil Armstrong                    5440 (6.1%)
   Horatiu Vultur                    5136 (5.7%)
   Jagan Teki                        4056 (4.5%)
   AKASHI Takahiro                   3838 (4.3%)
   Abel Vesa                         2983 (3.3%)
   Heinrich Schuchardt               1925 (2.2%)
   Weijie Gao                        1757 (2.0%)
   Chris Packham                     1670 (1.9%)
   Enric Balletbo i Serra            1647 (1.8%)
   Pankaj Bansal                     1588 (1.8%)
   Anup Patel                        1477 (1.6%)
   Michal Simek                      1438 (1.6%)
   Simon Goldschmidt                 1408 (1.6%)
   Patrick Delaunay                  1337 (1.5%)
   Lars Povlsen                      1304 (1.5%)
   Adam Ford                         1260 (1.4%)
   Priyanka Jain                     1244 (1.4%)
   Leif Lindholm                     1183 (1.3%)
   Breno Matheus Lima                1047 (1.2%)
   Martyn Welch                      1039 (1.2%)
   Fabio Estevam                     943 (1.1%)
   Marek Vasut                       940 (1.0%)
   Gregory CLEMENT                   916 (1.0%)
   Heiko Schocher                    908 (1.0%)
   Siva Durga Prasad Paladugu        778 (0.9%)
   Rajesh Bhagat                     769 (0.9%)
   Marek Behún                       683 (0.8%)
   Stefan Roese                      681 (0.8%)
   Tim Harvey                        671 (0.7%)
   Pankit Garg                       650 (0.7%)
   Shawn Guo                         573 (0.6%)
   Boris Brezillon                   563 (0.6%)
   Bryan O'Donoghue                  538 (0.6%)
   Hannes Schmelzer                  501 (0.6%)
   Jorge Ramirez-Ortiz               480 (0.5%)
   Tom Rini                          479 (0.5%)
   Lukasz Majewski                   440 (0.5%)
   Peng Fan                          384 (0.4%)
   Philippe Reynes                   359 (0.4%)
   Atish Patra                       350 (0.4%)
   Stefan Agner                      321 (0.4%)
   Vladimir Vid                      313 (0.3%)
   Marty E. Plummer                  304 (0.3%)
   Tien Fong Chee                    299 (0.3%)
   Aleksandr Aleksandrov             299 (0.3%)
   Andrew F. Davis                   298 (0.3%)
   Chen-Yu Tsai                      286 (0.3%)
   Marcin Niestroj                   274 (0.3%)
   Peter Robinson                    253 (0.3%)
   Eugeniy Paltsev                   251 (0.3%)
   Krzysztof Kozlowski               217 (0.2%)
   Daniel Schwierzeck                212 (0.2%)
   Philipp Tomsich                   197 (0.2%)
   Peng Ma                           195 (0.2%)
   Masahiro Yamada                   158 (0.2%)
   Ramon Fried                       146 (0.2%)
   Faiz Abbas                        146 (0.2%)
   Roman Kapl                        140 (0.2%)
   Andre Przywara                    132 (0.1%)
   Andy Shevchenko                   130 (0.1%)
   Jerome Brunet                     123 (0.1%)
   Hiroyuki Yokoyama                 122 (0.1%)
   Manivannan Sadhasivam             121 (0.1%)
   Derald D. Woods                   119 (0.1%)
   Meenakshi Aggarwal                112 (0.1%)
   Jean-Jacques Hiblot               109 (0.1%)
   Eugeniu Rosca                     102 (0.1%)
   Mian Yousaf Kaukab                100 (0.1%)
   Alexander Graf                    95 (0.1%)
   Lukas Auer                        90 (0.1%)
   Baruch Siach                      87 (0.1%)
   Maxime Jourdan                    85 (0.1%)
   Patrick Bruenn                    74 (0.1%)
   Gerard Salvatella                 74 (0.1%)
   Udit Agarwal                      71 (0.1%)
   Ezequiel Garcia                   65 (0.1%)
   Jordan Hand                       65 (0.1%)
   Álvaro Fernández Rojas            62 (0.1%)
   Alison Wang                       58 (0.1%)
   Bernhard Messerklinger            55 (0.1%)
   Lokesh Vutla                      54 (0.1%)
   Ye Li                             53 (0.1%)
   Ismael Luceno Cortes              52 (0.1%)
   Bin Meng                          44 (0.0%)
   Angelo Dureghello                 43 (0.0%)
   Valentin-catalin Neacsu           39 (0.0%)
   Jernej Skrabec                    37 (0.0%)
   Xiaowei Bao                       36 (0.0%)
   Matthias Brugger                  36 (0.0%)
   Alexey Brodkin                    31 (0.0%)
   Priit Laes                        31 (0.0%)
   Ley Foon Tan                      30 (0.0%)
   Carlo Caione                      29 (0.0%)
   Eugen Hristev                     28 (0.0%)
   Jonathan Hunter                   28 (0.0%)
   Mike Looijmans                    27 (0.0%)
   Laurentiu Tudor                   26 (0.0%)
   Florinel Iordache                 25 (0.0%)
   Max Krummenacher                  24 (0.0%)
   Shyam Saini                       23 (0.0%)
   Frank Wunderlich                  23 (0.0%)
   York Sun                          22 (0.0%)
   Sam Protsenko                     21 (0.0%)
   T Karthik Reddy                   20 (0.0%)
   Felix Brack                       19 (0.0%)
   Andreas Dannenberg                18 (0.0%)
   Rick Chen                         15 (0.0%)
   默默                                15 (0.0%)
   Stefan Mavrodiev                  15 (0.0%)
   Shubhrajyoti Datta                15 (0.0%)
   Aditya Prayoga                    15 (0.0%)
   Jorge Ramire-Ortiz                14 (0.0%)
   Marcel Ziswiler                   13 (0.0%)
   Andrejs Cainikovs                 13 (0.0%)
   Fabien Parent                     13 (0.0%)
   Keerthy                           12 (0.0%)
   Michael Tretter                   12 (0.0%)
   Christian GMEINER                 12 (0.0%)
   Luis Araneda                      11 (0.0%)
   Bin Liu                           11 (0.0%)
   Ang, Chee Hong                    11 (0.0%)
   Igor Opaniuk                      9 (0.0%)
   Joakim Tjernlund                  8 (0.0%)
   Wen He                            8 (0.0%)
   Tomasz Gorochowik                 8 (0.0%)
   Stefan Theil                      7 (0.0%)
   Sébastien Szymanski               7 (0.0%)
   Hou Zhiqiang                      6 (0.0%)
   Soeren Moch                       6 (0.0%)
   Yunfeng Ding                      5 (0.0%)
   Jonathan Gray                     5 (0.0%)
   Patrice Chotard                   5 (0.0%)
   Kurban Mallachiev                 4 (0.0%)
   Tristan Bastian                   3 (0.0%)
   Minkyu Kang                       3 (0.0%)
   Stephen Warren                    3 (0.0%)
   Dalon Westergreen                 3 (0.0%)
   Ioana Ciocoi Radulescu            3 (0.0%)
   Mario Six                         3 (0.0%)
   Sean Nyekjær                      3 (0.0%)
   Quentin Schulz                    3 (0.0%)
   Vagrant Cascadian                 2 (0.0%)
   Olaf Mandel                       2 (0.0%)
   Thomas Petazzoni                  2 (0.0%)
   Michael Trimarchi                 2 (0.0%)
   BOUGH CHEN                        2 (0.0%)
   Sean Nyekjaer                     2 (0.0%)
   Pramod Kumar                      2 (0.0%)
   Dinh Nguyen                       2 (0.0%)
   Gervais, Francois                 2 (0.0%)
   Vabhav Sharma                     2 (0.0%)
   Mounika Grace Akula               2 (0.0%)
   Hauke Mehrtens                    2 (0.0%)
   Andreas Pretzsch                  2 (0.0%)
   Thomas RIENOESSL                  2 (0.0%)
   Sekhar Nori                       2 (0.0%)
   Chris Spencer                     1 (0.0%)
   Kever Yang                        1 (0.0%)
   Prabhakar Kushwaha                1 (0.0%)
   Anand Moon                        1 (0.0%)
   Ondrej Jirman                     1 (0.0%)
   Alexander Dahl                    1 (0.0%)
   David Rivshin                     1 (0.0%)
   Julien Béraud                     1 (0.0%)
   Jan Kiszka                        1 (0.0%)
   Zhao Qiang                        1 (0.0%)
   Yinbo Zhu                         1 (0.0%)
   Venkatesh Yadav Abbarapu          1 (0.0%)
   Amit Kucheria                     1 (0.0%)
   Adam Heinrich                     1 (0.0%)
   Tomas Novotny                     1 (0.0%)
   Mark Kettenis                     1 (0.0%)
   Greg Czerniak                     1 (0.0%)
   Robert P. J. Day                  1 (0.0%)
   Anton Gerasimov                   1 (0.0%)
   Luca Ceresoli                     1 (0.0%)
   Patrick Wildt                     1 (0.0%)
   Josef Lusticky                    1 (0.0%)
   Yan Liu                           1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   David Wu                          4036 (18.1%)
   Michal Simek                      461 (2.1%)
   Eugeniy Paltsev                   251 (1.1%)
   Peter Robinson                    187 (0.8%)
   Tom Rini                          148 (0.7%)
   Eugeniu Rosca                     100 (0.4%)
   Tien Fong Chee                    39 (0.2%)
   Shubhrajyoti Datta                15 (0.1%)
   Baruch Siach                      14 (0.1%)
   Derald D. Woods                   13 (0.1%)
   Jean-Jacques Hiblot               11 (0.0%)
   Alexey Brodkin                    10 (0.0%)
   Keerthy                           10 (0.0%)
   Eugen Hristev                     9 (0.0%)
   Daniel Schwierzeck                8 (0.0%)
   Andreas Dannenberg                8 (0.0%)
   Lukas Auer                        7 (0.0%)
   Ang, Chee Hong                    5 (0.0%)
   Patrice Chotard                   5 (0.0%)
   Minkyu Kang                       2 (0.0%)
   Vabhav Sharma                     2 (0.0%)
   Quentin Schulz                    1 (0.0%)
   BOUGH CHEN                        1 (0.0%)
   Hauke Mehrtens                    1 (0.0%)
   Yinbo Zhu                         1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Alexander Graf                    49 (19.4%)
   Stefan Roese                      29 (11.5%)
   Michal Simek                      28 (11.1%)
   Minkyu Kang                       16 (6.3%)
   Tom Warren                        11 (4.4%)
   Tom Rini                          9 (3.6%)
   Marek Vasut                       9 (3.6%)
   Neil Armstrong                    9 (3.6%)
   Prabhakar Kushwaha                7 (2.8%)
   Jagan Teki                        7 (2.8%)
   Mark Lee                          5 (2.0%)
   Atish Patra                       5 (2.0%)
   Pankit Garg                       5 (2.0%)
   Anup Patel                        5 (2.0%)
   Sriram Dash                       4 (1.6%)
   Maxime Jourdan                    4 (1.6%)
   Otavio Salvador                   3 (1.2%)
   Andre Przywara                    3 (1.2%)
   Rajesh Bhagat                     3 (1.2%)
   Wasim Khan                        2 (0.8%)
   Wolfram Sang                      2 (0.8%)
   Ruchika Gupta                     2 (0.8%)
   Bin Meng                          2 (0.8%)
   Matthias Brugger                  2 (0.8%)
   Jorge Ramire-Ortiz                2 (0.8%)
   Peng Ma                           2 (0.8%)
   Alexey Brodkin                    1 (0.4%)
   Vabhav Sharma                     1 (0.4%)
   Yinbo Zhu                         1 (0.4%)
   Shengzhou Liu                     1 (0.4%)
   Paul Walmsley                     1 (0.4%)
   Philippe Schenker                 1 (0.4%)
   Yogesh Gaur                       1 (0.4%)
   Chuanhua Han                      1 (0.4%)
   Udit Kumar                        1 (0.4%)
   Olof Johansson                    1 (0.4%)
   Rob Clark                         1 (0.4%)
   Lionel Debieve                    1 (0.4%)
   Kevin Hilman                      1 (0.4%)
   Nitin Garg                        1 (0.4%)
   Wojciech Tatarski                 1 (0.4%)
   Ryder Lee                         1 (0.4%)
   Michael Trimarchi                 1 (0.4%)
   Marcel Ziswiler                   1 (0.4%)
   Álvaro Fernández Rojas            1 (0.4%)
   Stefan Agner                      1 (0.4%)
   Udit Agarwal                      1 (0.4%)
   Meenakshi Aggarwal                1 (0.4%)
   Siva Durga Prasad Paladugu        1 (0.4%)
   Heinrich Schuchardt               1 (0.4%)
   Vignesh R                         1 (0.4%)
   AKASHI Takahiro                   1 (0.4%)
   Simon Glass                       1 (0.4%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Simon Glass                       87 (14.1%)
   Bin Meng                          58 (9.4%)
   Tom Rini                          42 (6.8%)
   Philipp Tomsich                   42 (6.8%)
   Prabhakar Kushwaha                41 (6.7%)
   Jagan Teki                        34 (5.5%)
   Lukasz Majewski                   27 (4.4%)
   Heiko Schocher                    25 (4.1%)
   Stefan Roese                      23 (3.7%)
   Fabio Estevam                     23 (3.7%)
   York Sun                          21 (3.4%)
   Peng Fan                          20 (3.2%)
   Alexander Graf                    17 (2.8%)
   Daniel Schwierzeck                16 (2.6%)
   Heinrich Schuchardt               15 (2.4%)
   Anatolij Gustschin                15 (2.4%)
   Andre Przywara                    13 (2.1%)
   Kever Yang                        13 (2.1%)
   Lukas Auer                        10 (1.6%)
   Lokesh Vutla                      10 (1.6%)
   Marek Vasut                       9 (1.5%)
   Andy Shevchenko                   6 (1.0%)
   Simon Goldschmidt                 6 (1.0%)
   Minkyu Kang                       5 (0.8%)
   Stefano Babic                     3 (0.5%)
   Horia Geanta                      3 (0.5%)
   Bharat Bhushan                    3 (0.5%)
   Otavio Salvador                   2 (0.3%)
   Stefan Agner                      2 (0.3%)
   Ashish Kumar                      2 (0.3%)
   Utkarsh Gupta                     2 (0.3%)
   Miquel Raynal                     2 (0.3%)
   Stephen Warren                    2 (0.3%)
   Ye Li                             2 (0.3%)
   Masahiro Yamada                   2 (0.3%)
   Bryan O'Donoghue                  2 (0.3%)
   Chris Packham                     2 (0.3%)
   Michal Simek                      1 (0.2%)
   Matthias Brugger                  1 (0.2%)
   Marcel Ziswiler                   1 (0.2%)
   AKASHI Takahiro                   1 (0.2%)
   Mario Six                         1 (0.2%)
   Dinh Nguyen                       1 (0.2%)
   Fugang Duan                       1 (0.2%)
   Christian Gmeiner                 1 (0.2%)
   Liviu Dudau                       1 (0.2%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Jagan Teki                        17 (15.3%)
   Stefan Roese                      13 (11.7%)
   Simon Goldschmidt                 13 (11.7%)
   Horatiu Vultur                    12 (10.8%)
   Anand Moon                        9 (8.1%)
   Bin Meng                          5 (4.5%)
   Fabio Estevam                     4 (3.6%)
   Simon Glass                       3 (2.7%)
   Michal Simek                      3 (2.7%)
   Heinrich Schuchardt               2 (1.8%)
   Vignesh R                         2 (1.8%)
   Derald D. Woods                   2 (1.8%)
   Jörg Krause                       2 (1.8%)
   Ezequiel Garcia                   2 (1.8%)
   Shyam Saini                       2 (1.8%)
   Tim Harvey                        2 (1.8%)
   Lukasz Majewski                   1 (0.9%)
   Daniel Schwierzeck                1 (0.9%)
   Stephen Warren                    1 (0.9%)
   Mario Six                         1 (0.9%)
   Vagrant Cascadian                 1 (0.9%)
   Fabio Berton                      1 (0.9%)
   Leigh Brown                       1 (0.9%)
   Marcelo Macedo                    1 (0.9%)
   Martin Fuzzey                     1 (0.9%)
   Ferry Toth                        1 (0.9%)
   Vasily Khoruzhick                 1 (0.9%)
   Dennis Gilmore                    1 (0.9%)
   Chris Spencer                     1 (0.9%)
   Andrejs Cainikovs                 1 (0.9%)
   Stefan Mavrodiev                  1 (0.9%)
   Frank Wunderlich                  1 (0.9%)
   Breno Matheus Lima                1 (0.9%)
   Adam Ford                         1 (0.9%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Vignesh R                         55 (49.5%)
   Krzysztof Kozlowski               9 (8.1%)
   Adam Ford                         6 (5.4%)
   Fabio Estevam                     4 (3.6%)
   Lukas Auer                        4 (3.6%)
   Jagan Teki                        3 (2.7%)
   Simon Goldschmidt                 3 (2.7%)
   Tom Rini                          3 (2.7%)
   Baruch Siach                      3 (2.7%)
   Daniel Schwierzeck                2 (1.8%)
   David Wu                          2 (1.8%)
   Jean-Jacques Hiblot               2 (1.8%)
   Hannes Schmelzer                  2 (1.8%)
   Abel Vesa                         2 (1.8%)
   Stefan Roese                      1 (0.9%)
   Bin Meng                          1 (0.9%)
   Simon Glass                       1 (0.9%)
   Alexander Graf                    1 (0.9%)
   Andy Shevchenko                   1 (0.9%)
   Chris Packham                     1 (0.9%)
   Michael Trimarchi                 1 (0.9%)
   Joakim Tjernlund                  1 (0.9%)
   Aditya Prayoga                    1 (0.9%)
   Martyn Welch                      1 (0.9%)
   Weijie Gao                        1 (0.9%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Alexander Graf                    3 (14.3%)
   Leigh Brown                       2 (9.5%)
   Lukas Auer                        1 (4.8%)
   Michal Simek                      1 (4.8%)
   Heinrich Schuchardt               1 (4.8%)
   Stephen Warren                    1 (4.8%)
   Vagrant Cascadian                 1 (4.8%)
   Frank Wunderlich                  1 (4.8%)
   Breno Matheus Lima                1 (4.8%)
   Kever Yang                        1 (4.8%)
   Otavio Salvador                   1 (4.8%)
   Siva Durga Prasad Paladugu        1 (4.8%)
   Pablo Sebastián Greco             1 (4.8%)
   Влад Мао                          1 (4.8%)
   Ofer Heifetz                      1 (4.8%)
   Sven Auhagen                      1 (4.8%)
   Daniel Evans                      1 (4.8%)
   Richard Purdie                    1 (4.8%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Alexander Graf                    3 (14.3%)
   Chris Packham                     3 (14.3%)
   Heinrich Schuchardt               2 (9.5%)
   Fabio Estevam                     2 (9.5%)
   Simon Goldschmidt                 2 (9.5%)
   Baruch Siach                      2 (9.5%)
   Masahiro Yamada                   2 (9.5%)
   Jagan Teki                        1 (4.8%)
   Bin Meng                          1 (4.8%)
   Martyn Welch                      1 (4.8%)
   Derald D. Woods                   1 (4.8%)
   Bryan O'Donoghue                  1 (4.8%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         477 (40.0%)
   NXP                               107 (9.0%)
   Google, Inc.                      90 (7.5%)
   DENX Software Engineering         82 (6.9%)
   AMD                               64 (5.4%)
   Texas Instruments                 60 (5.0%)
   Amarula Solutions                 49 (4.1%)
   Linaro                            40 (3.4%)
   Pepperl+Fuchs                     32 (2.7%)
   Intel                             20 (1.7%)
   ST Microelectronics               19 (1.6%)
   BayLibre SAS                      18 (1.5%)
   Konsulko Group                    18 (1.5%)
   Toradex                           18 (1.5%)
   Xilinx                            18 (1.5%)
   Collabora Ltd.                    16 (1.3%)
   SUSE                              15 (1.3%)
   Rockchip                          11 (0.9%)
   Renesas Electronics               9 (0.8%)
   Socionext Inc.                    8 (0.7%)
   ARM                               6 (0.5%)
   Bootlin                           6 (0.5%)
   NVidia                            3 (0.3%)
   Debian.org                        2 (0.2%)
   Samsung                           2 (0.2%)
   Guntermann & Drunck               1 (0.1%)
   Pengutronix                       1 (0.1%)
   Siemens                           1 (0.1%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         24100 (26.9%)
   Google, Inc.                      10585 (11.8%)
   NXP                               9333 (10.4%)
   Rockchip                          9173 (10.2%)
   Texas Instruments                 7505 (8.4%)
   Linaro                            6275 (7.0%)
   BayLibre SAS                      5704 (6.4%)
   Amarula Solutions                 4081 (4.6%)
   DENX Software Engineering         2969 (3.3%)
   Collabora Ltd.                    1891 (2.1%)
   AMD                               1438 (1.6%)
   Pepperl+Fuchs                     1408 (1.6%)
   ST Microelectronics               1342 (1.5%)
   Bootlin                           921 (1.0%)
   Xilinx                            816 (0.9%)
   Konsulko Group                    479 (0.5%)
   Intel                             473 (0.5%)
   Toradex                           432 (0.5%)
   Socionext Inc.                    158 (0.2%)
   SUSE                              136 (0.2%)
   ARM                               132 (0.1%)
   Renesas Electronics               122 (0.1%)
   NVidia                            31 (0.0%)
   Pengutronix                       12 (0.0%)
   Samsung                           3 (0.0%)
   Guntermann & Drunck               3 (0.0%)
   Debian.org                        2 (0.0%)
   Siemens                           1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   SUSE                              51 (20.2%)
   (Unknown)                         35 (13.9%)
   NXP                               34 (13.5%)
   DENX Software Engineering         29 (11.5%)
   Xilinx                            29 (11.5%)
   BayLibre SAS                      16 (6.3%)
   Samsung                           16 (6.3%)
   NVidia                            11 (4.4%)
   Konsulko Group                    9 (3.6%)
   Amarula Solutions                 8 (3.2%)
   Toradex                           3 (1.2%)
   ARM                               3 (1.2%)
   O.S. Systems                      3 (1.2%)
   Google, Inc.                      1 (0.4%)
   Texas Instruments                 1 (0.4%)
   Linaro                            1 (0.4%)
   ST Microelectronics               1 (0.4%)
   IBM                               1 (0.4%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         86 (47.0%)
   NXP                               27 (14.8%)
   Texas Instruments                 10 (5.5%)
   Linaro                            7 (3.8%)
   BayLibre SAS                      6 (3.3%)
   Xilinx                            5 (2.7%)
   Intel                             5 (2.7%)
   DENX Software Engineering         4 (2.2%)
   Toradex                           4 (2.2%)
   Amarula Solutions                 3 (1.6%)
   Collabora Ltd.                    3 (1.6%)
   Bootlin                           3 (1.6%)
   SUSE                              2 (1.1%)
   NVidia                            2 (1.1%)
   ST Microelectronics               2 (1.1%)
   Rockchip                          2 (1.1%)
   Samsung                           1 (0.5%)
   Konsulko Group                    1 (0.5%)
   ARM                               1 (0.5%)
   Google, Inc.                      1 (0.5%)
   AMD                               1 (0.5%)
   Pepperl+Fuchs                     1 (0.5%)
   Socionext Inc.                    1 (0.5%)
   Renesas Electronics               1 (0.5%)
   Pengutronix                       1 (0.5%)
   Guntermann & Drunck               1 (0.5%)
   Debian.org                        1 (0.5%)
   Siemens                           1 (0.5%)
   ================================  =====
