:orphan:

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

* Processed 1585 csets from 169 developers

* 36 employers found

* A total of 99448 lines added, 166603 removed (delta -67155)

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

   ================================  =====
   Name                              Count
   ================================  =====
   Simon Glass                       225 (14.2%)
   Masahiro Yamada                   158 (10.0%)
   Hans de Goede                     140 (8.8%)
   Bin Meng                          67 (4.2%)
   Michal Simek                      52 (3.3%)
   Alexey Brodkin                    39 (2.5%)
   Nikita Kiryanov                   39 (2.5%)
   Fabio Estevam                     36 (2.3%)
   Bo Shen                           33 (2.1%)
   Przemyslaw Marczak                31 (2.0%)
   Stephen Warren                    27 (1.7%)
   Hannes Petermaier                 25 (1.6%)
   Peng Fan                          25 (1.6%)
   Marcel Ziswiler                   23 (1.5%)
   Matthias Fuchs                    23 (1.5%)
   Stefan Roese                      22 (1.4%)
   Tom Rini                          21 (1.3%)
   Heiko Schocher                    20 (1.3%)
   Siarhei Siamashka                 18 (1.1%)
   Diego Santa Cruz                  18 (1.1%)
   York Sun                          16 (1.0%)
   Akshay Saraswat                   16 (1.0%)
   Albert ARIBAUD (3ADEV)            15 (0.9%)
   Paul Burton                       15 (0.9%)
   Andreas Bießmann                  14 (0.9%)
   Marek Vasut                       14 (0.9%)
   Nobuhiro Iwamatsu                 14 (0.9%)
   Linus Walleij                     13 (0.8%)
   Wu, Josh                          13 (0.8%)
   Ruchika Gupta                     13 (0.8%)
   Axel Lin                          11 (0.7%)
   Daniel Schwierzeck                11 (0.7%)
   Codrin Ciubotariu                 11 (0.7%)
   Peter Tyser                       10 (0.6%)
   Nishanth Menon                    10 (0.6%)
   Guilherme Maciel Ferreira         10 (0.6%)
   Sjoerd Simons                     9 (0.6%)
   gaurav rana                       9 (0.6%)
   Christian Gmeiner                 9 (0.6%)
   Luka Perkov                       9 (0.6%)
   Ajay Kumar                        8 (0.5%)
   Rob Herring                       8 (0.5%)
   Chen-Yu Tsai                      8 (0.5%)
   Alison Wang                       8 (0.5%)
   Vladimir Barinov                  8 (0.5%)
   Tang Yuantian                     7 (0.4%)
   Łukasz Majewski                   6 (0.4%)
   Siva Durga Prasad Paladugu        6 (0.4%)
   Stefano Babic                     6 (0.4%)
   Minghuan Lian                     6 (0.4%)
   Joonyoung Shim                    6 (0.4%)
   Valentin Longchamp                6 (0.4%)
   Albert ARIBAUD                    5 (0.3%)
   Ian Campbell                      5 (0.3%)
   Bhupesh Sharma                    5 (0.3%)
   Otavio Salvador                   5 (0.3%)
   Igor Guryanov                     5 (0.3%)
   Felipe Balbi                      5 (0.3%)
   Jan Kiszka                        4 (0.3%)
   Iain Paton                        4 (0.3%)
   Angelo Dureghello                 4 (0.3%)
   Joe Hershberger                   4 (0.3%)
   Paul Kocialkowski                 4 (0.3%)
   Sonic Zhang                       4 (0.3%)
   Dileep Katta                      4 (0.3%)
   Jaehoon Chung                     4 (0.3%)
   Michael Walle                     4 (0.3%)
   Ye.Li                             4 (0.3%)
   DrEagle                           4 (0.3%)
   Pavel Machek                      3 (0.2%)
   Stefan Agner                      3 (0.2%)
   David Feng                        3 (0.2%)
   Boris Brezillon                   3 (0.2%)
   Matt Reimer                       3 (0.2%)
   Sinan Akman                       3 (0.2%)
   Graeme Russ                       3 (0.2%)
   Shengzhou Liu                     3 (0.2%)
   James Doublesin                   3 (0.2%)
   Georgi Botev                      3 (0.2%)
   Anatolij Gustschin                2 (0.1%)
   Andrej Rosano                     2 (0.1%)
   Chris Kuethe                      2 (0.1%)
   Ulises Cardenas                   2 (0.1%)
   Inha Song                         2 (0.1%)
   Luca Ellero                       2 (0.1%)
   Thierry Reding                    2 (0.1%)
   Maxin B. John                     2 (0.1%)
   Gilles Gameiro                    2 (0.1%)
   Kim Phillips                      2 (0.1%)
   Aleksei Mamlin                    2 (0.1%)
   Marcus Cooper                     2 (0.1%)
   Adam Sampson                      2 (0.1%)
   Ajay Bhargav                      2 (0.1%)
   Soeren Moch                       2 (0.1%)
   Enric Balletbo i Serra            2 (0.1%)
   Arnab Basu                        2 (0.1%)
   Lubomir Popov                     2 (0.1%)
   Eric Nelson                       2 (0.1%)
   Vitaly Andrianov                  2 (0.1%)
   Lokesh Vutla                      2 (0.1%)
   Anton Habegger                    2 (0.1%)
   Andrew Gabbasov                   2 (0.1%)
   Anthoine Bourgeois                2 (0.1%)
   Grazvydas Ignotas                 1 (0.1%)
   Mario Schuknecht                  1 (0.1%)
   Guillaume GARDET                  1 (0.1%)
   David Dueck                       1 (0.1%)
   Lucas Stach                       1 (0.1%)
   Ravi Babu                         1 (0.1%)
   Brian McFarland                   1 (0.1%)
   Karsten Merker                    1 (0.1%)
   Michal Marek                      1 (0.1%)
   Sebastian Siewior                 1 (0.1%)
   Roger Meier                       1 (0.1%)
   Sekhar Nori                       1 (0.1%)
   Praveen Rao                       1 (0.1%)
   Angela Stegmaier                  1 (0.1%)
   Volodymyr Riazantsev              1 (0.1%)
   Dirk Behme                        1 (0.1%)
   Jens Lucius                       1 (0.1%)
   Gábor Nyers                       1 (0.1%)
   Chen Gang                         1 (0.1%)
   Ash Charles                       1 (0.1%)
   Michal Sojka                      1 (0.1%)
   Chris Packham                     1 (0.1%)
   vijay rai                         1 (0.1%)
   Nikolaos Pasaloukos               1 (0.1%)
   Ying Zhang                        1 (0.1%)
   Shaveta Leekha                    1 (0.1%)
   Doug Anderson                     1 (0.1%)
   Michael Scott                     1 (0.1%)
   Xiubo Li                          1 (0.1%)
   chenhui zhao                      1 (0.1%)
   J. German Rivera                  1 (0.1%)
   Stuart Yoder                      1 (0.1%)
   Kuldip Giroh                      1 (0.1%)
   Pantelis Antoniou                 1 (0.1%)
   Waldemar Brodkorb                 1 (0.1%)
   Vladimir Zapolskiy                1 (0.1%)
   Steve Kipisz                      1 (0.1%)
   Egli, Samuel                      1 (0.1%)
   Michal Suchanek                   1 (0.1%)
   Scott Wood                        1 (0.1%)
   Philippe De Muyter                1 (0.1%)
   Yoshinori Sato                    1 (0.1%)
   Claudiu Manoil                    1 (0.1%)
   Dennis Gilmore                    1 (0.1%)
   Martin Dorwig                     1 (0.1%)
   Pieter Voorthuijsen               1 (0.1%)
   Pali Rohár                        1 (0.1%)
   Sebastien Ronsse                  1 (0.1%)
   Priit Laes                        1 (0.1%)
   Zoltan HERPAI                     1 (0.1%)
   Thomas Langer                     1 (0.1%)
   Alexandre Coffignal               1 (0.1%)
   Rene Griessl                      1 (0.1%)
   Alex Sadovsky                     1 (0.1%)
   Shaohui Xie                       1 (0.1%)
   harninder rai                     1 (0.1%)
   Aneesh Bansal                     1 (0.1%)
   Tudor Laurentiu                   1 (0.1%)
   Chunhe Lan                        1 (0.1%)
   Po Liu                            1 (0.1%)
   Evgeni Dobrev                     1 (0.1%)
   Bill Pringlemeir                  1 (0.1%)
   Wolfgang Denk                     1 (0.1%)
   Cooper Jr., Franklin              1 (0.1%)
   Matwey V. Kornilov                1 (0.1%)
   Daniel Mack                       1 (0.1%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Matthias Fuchs                    89003 (35.4%)
   Masahiro Yamada                   61978 (24.7%)
   Stefan Roese                      19579 (7.8%)
   Simon Glass                       13611 (5.4%)
   Bin Meng                          10014 (4.0%)
   Hans de Goede                     6470 (2.6%)
   Albert ARIBAUD (3ADEV)            4474 (1.8%)
   Vladimir Barinov                  3047 (1.2%)
   Nobuhiro Iwamatsu                 2794 (1.1%)
   Alexey Brodkin                    2022 (0.8%)
   gaurav rana                       1937 (0.8%)
   Stephen Warren                    1767 (0.7%)
   Nikita Kiryanov                   1651 (0.7%)
   Bo Shen                           1562 (0.6%)
   Gilles Gameiro                    1545 (0.6%)
   Marek Vasut                       1445 (0.6%)
   Siarhei Siamashka                 1395 (0.6%)
   Michal Simek                      1259 (0.5%)
   Anton Habegger                    1246 (0.5%)
   Codrin Ciubotariu                 1191 (0.5%)
   Angelo Dureghello                 1165 (0.5%)
   Ruchika Gupta                     1143 (0.5%)
   Akshay Saraswat                   1115 (0.4%)
   Hannes Petermaier                 905 (0.4%)
   Guilherme Maciel Ferreira         863 (0.3%)
   Linus Walleij                     829 (0.3%)
   Boris Brezillon                   785 (0.3%)
   Minghuan Lian                     741 (0.3%)
   Paul Burton                       706 (0.3%)
   Andrej Rosano                     692 (0.3%)
   Peng Fan                          648 (0.3%)
   Daniel Schwierzeck                601 (0.2%)
   Peter Tyser                       594 (0.2%)
   J. German Rivera                  592 (0.2%)
   Diego Santa Cruz                  575 (0.2%)
   Andreas Bießmann                  522 (0.2%)
   Ulises Cardenas                   493 (0.2%)
   Evgeni Dobrev                     469 (0.2%)
   York Sun                          460 (0.2%)
   Wu, Josh                          441 (0.2%)
   Przemyslaw Marczak                415 (0.2%)
   Shaveta Leekha                    393 (0.2%)
   Otavio Salvador                   381 (0.2%)
   Dennis Gilmore                    341 (0.1%)
   Heiko Schocher                    317 (0.1%)
   Alison Wang                       290 (0.1%)
   Nishanth Menon                    284 (0.1%)
   Marcel Ziswiler                   270 (0.1%)
   James Doublesin                   241 (0.1%)
   Fabio Estevam                     238 (0.1%)
   Christian Gmeiner                 232 (0.1%)
   Jan Kiszka                        223 (0.1%)
   Tang Yuantian                     222 (0.1%)
   Felipe Balbi                      213 (0.1%)
   Albert ARIBAUD                    201 (0.1%)
   Bhupesh Sharma                    190 (0.1%)
   Michael Walle                     164 (0.1%)
   Martin Dorwig                     163 (0.1%)
   Shaohui Xie                       161 (0.1%)
   Graeme Russ                       157 (0.1%)
   Lubomir Popov                     154 (0.1%)
   Roger Meier                       150 (0.1%)
   Sjoerd Simons                     149 (0.1%)
   Grazvydas Ignotas                 141 (0.1%)
   Anthoine Bourgeois                140 (0.1%)
   Rob Herring                       133 (0.1%)
   Ajay Kumar                        122 (0.0%)
   Daniel Mack                       122 (0.0%)
   Xiubo Li                          119 (0.0%)
   Valentin Longchamp                113 (0.0%)
   Dileep Katta                      113 (0.0%)
   Tom Rini                          110 (0.0%)
   Chen-Yu Tsai                      110 (0.0%)
   Thomas Langer                     110 (0.0%)
   Doug Anderson                     95 (0.0%)
   Igor Guryanov                     87 (0.0%)
   Joonyoung Shim                    82 (0.0%)
   Siva Durga Prasad Paladugu        79 (0.0%)
   DrEagle                           74 (0.0%)
   David Feng                        71 (0.0%)
   Łukasz Majewski                   70 (0.0%)
   Shengzhou Liu                     69 (0.0%)
   Anatolij Gustschin                69 (0.0%)
   Kim Phillips                      64 (0.0%)
   Axel Lin                          59 (0.0%)
   Philippe De Muyter                58 (0.0%)
   Jaehoon Chung                     57 (0.0%)
   Karsten Merker                    47 (0.0%)
   Paul Kocialkowski                 45 (0.0%)
   vijay rai                         45 (0.0%)
   Lokesh Vutla                      44 (0.0%)
   Zoltan HERPAI                     44 (0.0%)
   Pantelis Antoniou                 43 (0.0%)
   Vitaly Andrianov                  38 (0.0%)
   Luka Perkov                       37 (0.0%)
   Joe Hershberger                   37 (0.0%)
   Ye.Li                             32 (0.0%)
   Marcus Cooper                     32 (0.0%)
   Iain Paton                        31 (0.0%)
   Enric Balletbo i Serra            31 (0.0%)
   Yoshinori Sato                    30 (0.0%)
   Soeren Moch                       29 (0.0%)
   chenhui zhao                      28 (0.0%)
   Arnab Basu                        27 (0.0%)
   Pavel Machek                      24 (0.0%)
   Stefano Babic                     23 (0.0%)
   Brian McFarland                   22 (0.0%)
   Ian Campbell                      21 (0.0%)
   Chen Gang                         21 (0.0%)
   Ash Charles                       21 (0.0%)
   Stefan Agner                      20 (0.0%)
   Aleksei Mamlin                    20 (0.0%)
   Inha Song                         19 (0.0%)
   Priit Laes                        19 (0.0%)
   Dirk Behme                        18 (0.0%)
   Matwey V. Kornilov                18 (0.0%)
   Andrew Gabbasov                   17 (0.0%)
   Wolfgang Denk                     17 (0.0%)
   Jens Lucius                       16 (0.0%)
   Sonic Zhang                       15 (0.0%)
   Gábor Nyers                       15 (0.0%)
   Michael Scott                     15 (0.0%)
   Michal Suchanek                   15 (0.0%)
   Michal Sojka                      14 (0.0%)
   Rene Griessl                      14 (0.0%)
   Cooper Jr., Franklin              14 (0.0%)
   Praveen Rao                       13 (0.0%)
   Eric Nelson                       12 (0.0%)
   Po Liu                            12 (0.0%)
   Adam Sampson                      11 (0.0%)
   Sinan Akman                       10 (0.0%)
   Ajay Bhargav                      10 (0.0%)
   Maxin B. John                     9 (0.0%)
   Michal Marek                      9 (0.0%)
   Volodymyr Riazantsev              9 (0.0%)
   Ravi Babu                         8 (0.0%)
   Angela Stegmaier                  8 (0.0%)
   Thierry Reding                    7 (0.0%)
   Georgi Botev                      6 (0.0%)
   David Dueck                       6 (0.0%)
   Alexandre Coffignal               6 (0.0%)
   Steve Kipisz                      5 (0.0%)
   Matt Reimer                       4 (0.0%)
   Mario Schuknecht                  4 (0.0%)
   Egli, Samuel                      4 (0.0%)
   Kuldip Giroh                      3 (0.0%)
   Waldemar Brodkorb                 3 (0.0%)
   Vladimir Zapolskiy                3 (0.0%)
   Scott Wood                        3 (0.0%)
   Chunhe Lan                        3 (0.0%)
   Bill Pringlemeir                  3 (0.0%)
   Chris Kuethe                      2 (0.0%)
   Luca Ellero                       2 (0.0%)
   Guillaume GARDET                  2 (0.0%)
   Lucas Stach                       2 (0.0%)
   Sebastian Siewior                 2 (0.0%)
   Ying Zhang                        2 (0.0%)
   Claudiu Manoil                    2 (0.0%)
   Pieter Voorthuijsen               2 (0.0%)
   Alex Sadovsky                     2 (0.0%)
   harninder rai                     2 (0.0%)
   Aneesh Bansal                     2 (0.0%)
   Sekhar Nori                       1 (0.0%)
   Chris Packham                     1 (0.0%)
   Nikolaos Pasaloukos               1 (0.0%)
   Stuart Yoder                      1 (0.0%)
   Pali Rohár                        1 (0.0%)
   Sebastien Ronsse                  1 (0.0%)
   Tudor Laurentiu                   1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Matthias Fuchs                    88963 (53.4%)
   Masahiro Yamada                   54187 (32.5%)
   Peter Tyser                       339 (0.2%)
   Paul Burton                       231 (0.1%)
   Daniel Schwierzeck                193 (0.1%)
   Grazvydas Ignotas                 105 (0.1%)
   Thomas Langer                     102 (0.1%)
   Anthoine Bourgeois                88 (0.1%)
   Wu, Josh                          81 (0.0%)
   James Doublesin                   62 (0.0%)
   vijay rai                         45 (0.0%)
   Rob Herring                       37 (0.0%)
   Vitaly Andrianov                  19 (0.0%)
   Tom Rini                          18 (0.0%)
   Doug Anderson                     18 (0.0%)
   Joe Hershberger                   18 (0.0%)
   Ye.Li                             17 (0.0%)
   Stefano Babic                     9 (0.0%)
   Axel Lin                          7 (0.0%)
   Enric Balletbo i Serra            3 (0.0%)
   Bill Pringlemeir                  3 (0.0%)
   Sebastian Siewior                 1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Hans de Goede                     49 (22.1%)
   Minkyu Kang                       41 (18.5%)
   Tom Warren                        33 (14.9%)
   Nobuhiro Iwamatsu                 11 (5.0%)
   Simon Glass                       7 (3.2%)
   Andreas Bießmann                  6 (2.7%)
   Michal Simek                      6 (2.7%)
   Alexey Brodkin                    6 (2.7%)
   Tom Rini                          4 (1.8%)
   Joe Hershberger                   4 (1.8%)
   Kimoon Kim                        4 (1.8%)
   Ruchika Gupta                     4 (1.8%)
   Boris BREZILLON                   3 (1.4%)
   Ian Campbell                      3 (1.4%)
   Igor Guryanov                     3 (1.4%)
   Felipe Balbi                      3 (1.4%)
   Igor Grinberg                     2 (0.9%)
   Pantelis Antoniou                 2 (0.9%)
   York Sun                          2 (0.9%)
   Masahiro Yamada                   1 (0.5%)
   Paul Burton                       1 (0.5%)
   Rob Herring                       1 (0.5%)
   Michal Marek                      1 (0.5%)
   Angela Stegmaier                  1 (0.5%)
   Andy Shevchenko                   1 (0.5%)
   Nikhil Badola                     1 (0.5%)
   Nitin Garg                        1 (0.5%)
   Abhilash Kesavan                  1 (0.5%)
   Valentine Barshak                 1 (0.5%)
   Lijun Pan                         1 (0.5%)
   Ranjani Vaidyanathan              1 (0.5%)
   Damien Gotfroi                    1 (0.5%)
   Poonam Aggrwal                    1 (0.5%)
   Varun Sethi                       1 (0.5%)
   Laurentiu Tudor                   1 (0.5%)
   Mingkai.Hu                        1 (0.5%)
   Antonios Vamporakis               1 (0.5%)
   Lokesh Vutla                      1 (0.5%)
   Marcel Ziswiler                   1 (0.5%)
   Siva Durga Prasad Paladugu        1 (0.5%)
   Xiubo Li                          1 (0.5%)
   Nishanth Menon                    1 (0.5%)
   Bhupesh Sharma                    1 (0.5%)
   Linus Walleij                     1 (0.5%)
   Alison Wang                       1 (0.5%)
   Shaveta Leekha                    1 (0.5%)
   Akshay Saraswat                   1 (0.5%)
   Stephen Warren                    1 (0.5%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Simon Glass                       93 (31.7%)
   York Sun                          58 (19.8%)
   Bin Meng                          32 (10.9%)
   Tom Rini                          26 (8.9%)
   Masahiro Yamada                   19 (6.5%)
   Luka Perkov                       14 (4.8%)
   Stefan Roese                      9 (3.1%)
   Jagannadha Sutradharudu Teki      8 (2.7%)
   Łukasz Majewski                   7 (2.4%)
   Stephen Warren                    6 (2.0%)
   Steve Rae                         3 (1.0%)
   Hans de Goede                     2 (0.7%)
   Alexey Brodkin                    2 (0.7%)
   Roger Meier                       2 (0.7%)
   Marek Vasut                       2 (0.7%)
   Joe Hershberger                   1 (0.3%)
   Ruchika Gupta                     1 (0.3%)
   Boris BREZILLON                   1 (0.3%)
   Linus Walleij                     1 (0.3%)
   Peter Crosthwaite                 1 (0.3%)
   Nathan Rossi                      1 (0.3%)
   Guido Martínez                    1 (0.3%)
   Volodymyr Riazantsev              1 (0.3%)
   Fabio Estevam                     1 (0.3%)
   Przemyslaw Marczak                1 (0.3%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Simon Glass                       31 (26.5%)
   Bo Shen                           14 (12.0%)
   Wu, Josh                          13 (11.1%)
   Matt Porter                       11 (9.4%)
   Bin Meng                          8 (6.8%)
   Heiko Schocher                    6 (5.1%)
   Stephen Warren                    4 (3.4%)
   Tom Rini                          2 (1.7%)
   Łukasz Majewski                   2 (1.7%)
   Alexey Brodkin                    2 (1.7%)
   Michal Simek                      2 (1.7%)
   Nishanth Menon                    2 (1.7%)
   Chris Kuethe                      2 (1.7%)
   Stefan Roese                      1 (0.9%)
   Steve Rae                         1 (0.9%)
   Hans de Goede                     1 (0.9%)
   Guido Martínez                    1 (0.9%)
   Fabio Estevam                     1 (0.9%)
   Felipe Balbi                      1 (0.9%)
   Marcel Ziswiler                   1 (0.9%)
   Daniel Schwierzeck                1 (0.9%)
   Stefano Babic                     1 (0.9%)
   Vagrant Cascadian                 1 (0.9%)
   Michal Vokáč                      1 (0.9%)
   Mugunthan V N                     1 (0.9%)
   Thierry Reding                    1 (0.9%)
   Jaehoon Chung                     1 (0.9%)
   Zoltan HERPAI                     1 (0.9%)
   Chen-Yu Tsai                      1 (0.9%)
   Jan Kiszka                        1 (0.9%)
   Nikita Kiryanov                   1 (0.9%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Nikita Kiryanov                   32 (27.4%)
   Simon Glass                       15 (12.8%)
   Akshay Saraswat                   11 (9.4%)
   Nishanth Menon                    8 (6.8%)
   Ajay Kumar                        8 (6.8%)
   Peter Tyser                       5 (4.3%)
   Masahiro Yamada                   4 (3.4%)
   Przemyslaw Marczak                4 (3.4%)
   Hans de Goede                     3 (2.6%)
   James Doublesin                   3 (2.6%)
   Andrej Rosano                     3 (2.6%)
   Tom Rini                          2 (1.7%)
   Fabio Estevam                     2 (1.7%)
   Pantelis Antoniou                 2 (1.7%)
   Vitaly Andrianov                  2 (1.7%)
   Andrew Gabbasov                   2 (1.7%)
   Bo Shen                           1 (0.9%)
   Andreas Bießmann                  1 (0.9%)
   Guillaume GARDET                  1 (0.9%)
   Lucas Stach                       1 (0.9%)
   Inha Song                         1 (0.9%)
   Michal Sojka                      1 (0.9%)
   Praveen Rao                       1 (0.9%)
   Michael Scott                     1 (0.9%)
   Daniel Mack                       1 (0.9%)
   Sjoerd Simons                     1 (0.9%)
   Peng Fan                          1 (0.9%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Stephen Warren                    4 (16.7%)
   York Sun                          3 (12.5%)
   Albert ARIBAUD                    3 (12.5%)
   Masahiro Yamada                   2 (8.3%)
   Tom Rini                          2 (8.3%)
   Stefan Roese                      1 (4.2%)
   Jan Kiszka                        1 (4.2%)
   Chee-Yang Chau                    1 (4.2%)
   Matthew Gerlach                   1 (4.2%)
   Matt Ranostay                     1 (4.2%)
   Valdis Kletnieks                  1 (4.2%)
   Vivek Chengalvala                 1 (4.2%)
   Scott Wood                        1 (4.2%)
   Graeme Russ                       1 (4.2%)
   Siarhei Siamashka                 1 (4.2%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Simon Glass                       7 (29.2%)
   Masahiro Yamada                   6 (25.0%)
   Tom Rini                          2 (8.3%)
   Stephen Warren                    1 (4.2%)
   Nishanth Menon                    1 (4.2%)
   Hans de Goede                     1 (4.2%)
   Fabio Estevam                     1 (4.2%)
   Pantelis Antoniou                 1 (4.2%)
   Michal Simek                      1 (4.2%)
   Michal Marek                      1 (4.2%)
   Enric Balletbo i Serra            1 (4.2%)
   Kim Phillips                      1 (4.2%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         422 (26.6%)
   Google, Inc.                      226 (14.3%)
   Socionext Inc.                    158 (10.0%)
   Freescale                         152 (9.6%)
   Red Hat                           140 (8.8%)
   Samsung                           73 (4.6%)
   DENX Software Engineering         68 (4.3%)
   AMD                               52 (3.3%)
   Atmel                             46 (2.9%)
   CompuLab                          39 (2.5%)
   Texas Instruments                 28 (1.8%)
   NVidia                            24 (1.5%)
   ESD Electronics                   23 (1.5%)
   Konsulko Group                    22 (1.4%)
   Linaro                            18 (1.1%)
   MIPS                              15 (0.9%)
   Renesas Electronics               13 (0.8%)
   Collabora Ltd.                    10 (0.6%)
   Extreme Engineering Solutions     10 (0.6%)
   Keymile                           6 (0.4%)
   Siemens                           6 (0.4%)
   Xilinx                            6 (0.4%)
   O.S. Systems                      5 (0.3%)
   Analog Devices                    4 (0.3%)
   National Instruments              4 (0.3%)
   Ronetix                           3 (0.2%)
   Boundary Devices                  2 (0.1%)
   ENEA AB                           2 (0.1%)
   Citrix                            1 (0.1%)
   Bosch                             1 (0.1%)
   Debian.org                        1 (0.1%)
   linutronix                        1 (0.1%)
   Macq Electronique                 1 (0.1%)
   Novell                            1 (0.1%)
   Nobuhiro Iwamatsu                 1 (0.1%)
   Grazvydas Ignotas                 1 (0.1%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   ESD Electronics                   89003 (35.4%)
   Socionext Inc.                    61978 (24.7%)
   (Unknown)                         35047 (13.9%)
   DENX Software Engineering         21474 (8.5%)
   Google, Inc.                      13706 (5.5%)
   Freescale                         7971 (3.2%)
   Red Hat                           6470 (2.6%)
   Renesas Electronics               2782 (1.1%)
   Atmel                             2003 (0.8%)
   Samsung                           1880 (0.7%)
   CompuLab                          1651 (0.7%)
   NVidia                            1369 (0.5%)
   AMD                               1259 (0.5%)
   Linaro                            957 (0.4%)
   Texas Instruments                 869 (0.3%)
   MIPS                              706 (0.3%)
   Extreme Engineering Solutions     594 (0.2%)
   O.S. Systems                      381 (0.2%)
   Siemens                           377 (0.1%)
   Collabora Ltd.                    174 (0.1%)
   Konsulko Group                    153 (0.1%)
   Grazvydas Ignotas                 141 (0.1%)
   Keymile                           113 (0.0%)
   Xilinx                            79 (0.0%)
   Macq Electronique                 58 (0.0%)
   Debian.org                        47 (0.0%)
   National Instruments              37 (0.0%)
   Bosch                             18 (0.0%)
   Analog Devices                    15 (0.0%)
   Boundary Devices                  12 (0.0%)
   Nobuhiro Iwamatsu                 12 (0.0%)
   ENEA AB                           9 (0.0%)
   Novell                            9 (0.0%)
   Ronetix                           6 (0.0%)
   linutronix                        2 (0.0%)
   Citrix                            1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Red Hat                           49 (22.1%)
   Samsung                           47 (21.2%)
   NVidia                            34 (15.3%)
   (Unknown)                         24 (10.8%)
   Freescale                         18 (8.1%)
   Nobuhiro Iwamatsu                 11 (5.0%)
   Google, Inc.                      7 (3.2%)
   Texas Instruments                 7 (3.2%)
   Xilinx                            7 (3.2%)
   Konsulko Group                    5 (2.3%)
   National Instruments              4 (1.8%)
   Free Electrons                    3 (1.4%)
   CompuLab                          2 (0.9%)
   Socionext Inc.                    1 (0.5%)
   Linaro                            1 (0.5%)
   Novell                            1 (0.5%)
   Intel                             1 (0.5%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         78 (45.1%)
   Freescale                         30 (17.3%)
   Texas Instruments                 11 (6.4%)
   Samsung                           7 (4.0%)
   DENX Software Engineering         7 (4.0%)
   Linaro                            3 (1.7%)
   Siemens                           3 (1.7%)
   NVidia                            2 (1.2%)
   Google, Inc.                      2 (1.2%)
   Konsulko Group                    2 (1.2%)
   Atmel                             2 (1.2%)
   Collabora Ltd.                    2 (1.2%)
   Red Hat                           1 (0.6%)
   Nobuhiro Iwamatsu                 1 (0.6%)
   Xilinx                            1 (0.6%)
   National Instruments              1 (0.6%)
   CompuLab                          1 (0.6%)
   Socionext Inc.                    1 (0.6%)
   Novell                            1 (0.6%)
   ESD Electronics                   1 (0.6%)
   Renesas Electronics               1 (0.6%)
   AMD                               1 (0.6%)
   MIPS                              1 (0.6%)
   Extreme Engineering Solutions     1 (0.6%)
   O.S. Systems                      1 (0.6%)
   Grazvydas Ignotas                 1 (0.6%)
   Keymile                           1 (0.6%)
   Macq Electronique                 1 (0.6%)
   Debian.org                        1 (0.6%)
   Bosch                             1 (0.6%)
   Analog Devices                    1 (0.6%)
   Boundary Devices                  1 (0.6%)
   ENEA AB                           1 (0.6%)
   Ronetix                           1 (0.6%)
   linutronix                        1 (0.6%)
   Citrix                            1 (0.6%)
   ================================  =====
