:orphan:

Release Statistics for U-Boot v2018.11
======================================

* Processed 1105 changesets from 130 developers

* 31 employers found

* A total of 78339 lines added, 18402 removed (delta 59937)

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

   ================================  =====
   Name                              Count
   ================================  =====
   Simon Glass                       120 (10.9%)
   Heinrich Schuchardt               87 (7.9%)
   Adam Ford                         51 (4.6%)
   Marek Vasut                       49 (4.4%)
   Bin Meng                          47 (4.3%)
   Peng Fan                          42 (3.8%)
   Eugen Hristev                     41 (3.7%)
   Michal Simek                      38 (3.4%)
   Lokesh Vutla                      31 (2.8%)
   Mario Six                         30 (2.7%)
   Akashi Takahiro                   29 (2.6%)
   Jens Wiklander                    23 (2.1%)
   Miquel Raynal                     22 (2.0%)
   Stefan Roese                      19 (1.7%)
   Alexey Brodkin                    17 (1.5%)
   Tom Rini                          16 (1.4%)
   Fabio Estevam                     15 (1.4%)
   Otavio Salvador                   15 (1.4%)
   Ramon Fried                       14 (1.3%)
   Boris Brezillon                   13 (1.2%)
   Patrick Delaunay                  13 (1.2%)
   Patrice Chotard                   13 (1.2%)
   Andreas Dannenberg                13 (1.2%)
   Joe Hershberger                   10 (0.9%)
   Masahiro Yamada                   10 (0.9%)
   Ofer Heifetz                      10 (0.9%)
   Hiroyuki Yokoyama                 9 (0.8%)
   Alexander Graf                    8 (0.7%)
   Liviu Dudau                       8 (0.7%)
   Jagdish Gediya                    8 (0.7%)
   Yinbo Zhu                         8 (0.7%)
   Jagan Teki                        7 (0.6%)
   Chris Packham                     7 (0.6%)
   Pankaj Bansal                     7 (0.6%)
   Breno Matheus Lima                7 (0.6%)
   Peng Ma                           7 (0.6%)
   Konstantin Porotchkin             7 (0.6%)
   Daniel Schwierzeck                6 (0.5%)
   Martin Fuzzey                     6 (0.5%)
   Baruch Siach                      6 (0.5%)
   Siva Durga Prasad Paladugu        6 (0.5%)
   Marek Behún                       6 (0.5%)
   Ley Foon Tan                      6 (0.5%)
   Tien Fong Chee                    6 (0.5%)
   Anatolij Gustschin                5 (0.5%)
   Marcel Ziswiler                   5 (0.5%)
   Vladimir Zapolskiy                5 (0.5%)
   Janine Hagemann                   5 (0.5%)
   Tuomas Tynkkynen                  5 (0.5%)
   Georgii Staroselskii              5 (0.5%)
   Lukasz Majewski                   4 (0.4%)
   Simon Goldschmidt                 4 (0.4%)
   Icenowy Zheng                     4 (0.4%)
   Rui Miguel Silva                  4 (0.4%)
   Stephen Warren                    4 (0.4%)
   Kever Yang                        4 (0.4%)
   Heiko Stuebner                    4 (0.4%)
   Rajan Vaja                        4 (0.4%)
   Maxime Ripard                     4 (0.4%)
   Laurentiu Tudor                   4 (0.4%)
   Quentin Schulz                    4 (0.4%)
   Codrin Ciubotariu                 4 (0.4%)
   Dalon Westergreen                 4 (0.4%)
   Andy Shevchenko                   3 (0.3%)
   Keerthy                           3 (0.3%)
   Andre Przywara                    3 (0.3%)
   Priyanka Jain                     3 (0.3%)
   Jeremy Gebben                     3 (0.3%)
   Priit Laes                        3 (0.3%)
   Vasily Khoruzhick                 3 (0.3%)
   Loic Devulder                     3 (0.3%)
   Vikas Manocha                     3 (0.3%)
   Pramod Kumar                      3 (0.3%)
   Sekhar Nori                       3 (0.3%)
   Philippe Reynes                   3 (0.3%)
   Angelo Dureghello                 3 (0.3%)
   Heiko Schocher                    2 (0.2%)
   Sam Protsenko                     2 (0.2%)
   Dirk Meul                         2 (0.2%)
   Cédric Le Goater                  2 (0.2%)
   Ian Ray                           2 (0.2%)
   Ye Li                             2 (0.2%)
   Ashish Kumar                      2 (0.2%)
   Andrew F. Davis                   2 (0.2%)
   Nicholas Faustini                 2 (0.2%)
   Neil Armstrong                    2 (0.2%)
   Sébastien Szymanski               2 (0.2%)
   Yousaf Kaukab                     2 (0.2%)
   Neil Stainton                     2 (0.2%)
   Christian Gmeiner                 2 (0.2%)
   Ran Wang                          2 (0.2%)
   Peter Pan                         2 (0.2%)
   Thomas Fitzsimmons                2 (0.2%)
   Jun Nie                           1 (0.1%)
   Lars Povlsen                      1 (0.1%)
   Christoph Niedermaier             1 (0.1%)
   Paul Davey                        1 (0.1%)
   Andrei Stefanescu                 1 (0.1%)
   Hannes Schmelzer                  1 (0.1%)
   Hector Palacios                   1 (0.1%)
   Bernhard Messerklinger            1 (0.1%)
   Xiaoliang Yang                    1 (0.1%)
   Dan Cimpoca                       1 (0.1%)
   Fabien Lahoudere                  1 (0.1%)
   Duncan Hare                       1 (0.1%)
   Yevgeny Popovych                  1 (0.1%)
   Trent Piepho                      1 (0.1%)
   Daniel Gröber                     1 (0.1%)
   Andreas Färber                    1 (0.1%)
   Ooi, Joyce                        1 (0.1%)
   Atsushi Nemoto                    1 (0.1%)
   Rick Chen                         1 (0.1%)
   Rasmus Villemoes                  1 (0.1%)
   Alex Kiernan                      1 (0.1%)
   Zhao Qiang                        1 (0.1%)
   Prabhakar Kushwaha                1 (0.1%)
   Nipun Gupta                       1 (0.1%)
   Luis Araneda                      1 (0.1%)
   Frieder Schrempf                  1 (0.1%)
   Brian Norris                      1 (0.1%)
   Ezequiel Garcia                   1 (0.1%)
   Rabeeh Khoury                     1 (0.1%)
   David Sniatkiwicz                 1 (0.1%)
   Victor Axelrod                    1 (0.1%)
   Jon Nettleton                     1 (0.1%)
   Evgeni Dobrev                     1 (0.1%)
   Michael Heimpold                  1 (0.1%)
   Mark Tomlinson                    1 (0.1%)
   Grazvydas Ignotas                 1 (0.1%)
   Matt Weber                        1 (0.1%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Simon Glass                       8404 (10.0%)
   Peng Fan                          8366 (9.9%)
   Jagan Teki                        7158 (8.5%)
   Mario Six                         7127 (8.5%)
   Heinrich Schuchardt               6089 (7.2%)
   Lokesh Vutla                      5129 (6.1%)
   Jens Wiklander                    3954 (4.7%)
   Adam Ford                         3157 (3.7%)
   Akashi Takahiro                   2640 (3.1%)
   Michal Simek                      2281 (2.7%)
   Boris Brezillon                   2221 (2.6%)
   Stefan Roese                      2133 (2.5%)
   Marek Vasut                       2011 (2.4%)
   Peter Pan                         1832 (2.2%)
   Andreas Dannenberg                1803 (2.1%)
   Miquel Raynal                     1788 (2.1%)
   Liviu Dudau                       1636 (1.9%)
   Bin Meng                          1427 (1.7%)
   Masahiro Yamada                   864 (1.0%)
   Loic Devulder                     818 (1.0%)
   Alexey Brodkin                    751 (0.9%)
   Neil Armstrong                    734 (0.9%)
   Maxime Ripard                     715 (0.8%)
   Eugen Hristev                     682 (0.8%)
   Tien Fong Chee                    645 (0.8%)
   Joe Hershberger                   636 (0.8%)
   Patrice Chotard                   488 (0.6%)
   Chris Packham                     472 (0.6%)
   Tom Rini                          465 (0.6%)
   Fabio Estevam                     451 (0.5%)
   Quentin Schulz                    385 (0.5%)
   Tuomas Tynkkynen                  348 (0.4%)
   Jeremy Gebben                     339 (0.4%)
   Jagdish Gediya                    335 (0.4%)
   Georgii Staroselskii              293 (0.3%)
   Pankaj Bansal                     281 (0.3%)
   Marek Behún                       276 (0.3%)
   Otavio Salvador                   272 (0.3%)
   Anatolij Gustschin                244 (0.3%)
   Patrick Delaunay                  234 (0.3%)
   Ramon Fried                       233 (0.3%)
   Philippe Reynes                   218 (0.3%)
   Ofer Heifetz                      193 (0.2%)
   Daniel Schwierzeck                192 (0.2%)
   Hiroyuki Yokoyama                 190 (0.2%)
   Codrin Ciubotariu                 189 (0.2%)
   Janine Hagemann                   179 (0.2%)
   Peng Ma                           156 (0.2%)
   Ley Foon Tan                      153 (0.2%)
   Yinbo Zhu                         152 (0.2%)
   Frieder Schrempf                  146 (0.2%)
   Ashish Kumar                      141 (0.2%)
   Konstantin Porotchkin             121 (0.1%)
   Siva Durga Prasad Paladugu        119 (0.1%)
   Alexander Graf                    116 (0.1%)
   Laurentiu Tudor                   111 (0.1%)
   Sekhar Nori                       109 (0.1%)
   Dirk Meul                         107 (0.1%)
   Kever Yang                        100 (0.1%)
   Thomas Fitzsimmons                87 (0.1%)
   Rajan Vaja                        78 (0.1%)
   Andre Przywara                    75 (0.1%)
   Breno Matheus Lima                68 (0.1%)
   Simon Goldschmidt                 67 (0.1%)
   Martin Fuzzey                     64 (0.1%)
   Rui Miguel Silva                  63 (0.1%)
   Heiko Stuebner                    56 (0.1%)
   Sébastien Szymanski               56 (0.1%)
   Keerthy                           50 (0.1%)
   Andrew F. Davis                   49 (0.1%)
   Yousaf Kaukab                     49 (0.1%)
   Vladimir Zapolskiy                48 (0.1%)
   Nipun Gupta                       46 (0.1%)
   Baruch Siach                      43 (0.1%)
   Angelo Dureghello                 36 (0.0%)
   Stephen Warren                    33 (0.0%)
   Duncan Hare                       32 (0.0%)
   Ye Li                             30 (0.0%)
   Brian Norris                      28 (0.0%)
   Victor Axelrod                    27 (0.0%)
   Marcel Ziswiler                   26 (0.0%)
   Icenowy Zheng                     26 (0.0%)
   Nicholas Faustini                 25 (0.0%)
   Rabeeh Khoury                     23 (0.0%)
   Vasily Khoruzhick                 21 (0.0%)
   Ran Wang                          20 (0.0%)
   Trent Piepho                      20 (0.0%)
   Ian Ray                           19 (0.0%)
   Pramod Kumar                      18 (0.0%)
   Xiaoliang Yang                    18 (0.0%)
   Grazvydas Ignotas                 18 (0.0%)
   Priyanka Jain                     14 (0.0%)
   Vikas Manocha                     13 (0.0%)
   Ezequiel Garcia                   13 (0.0%)
   Dalon Westergreen                 11 (0.0%)
   Cédric Le Goater                  11 (0.0%)
   Heiko Schocher                    10 (0.0%)
   Jon Nettleton                     10 (0.0%)
   Lukasz Majewski                   9 (0.0%)
   Christoph Niedermaier             8 (0.0%)
   Priit Laes                        7 (0.0%)
   Christian Gmeiner                 7 (0.0%)
   Prabhakar Kushwaha                7 (0.0%)
   Neil Stainton                     6 (0.0%)
   Andy Shevchenko                   5 (0.0%)
   Sam Protsenko                     4 (0.0%)
   Hannes Schmelzer                  4 (0.0%)
   Andreas Färber                    4 (0.0%)
   Michael Heimpold                  4 (0.0%)
   Mark Tomlinson                    4 (0.0%)
   Paul Davey                        3 (0.0%)
   Dan Cimpoca                       3 (0.0%)
   Daniel Gröber                     3 (0.0%)
   Ooi, Joyce                        3 (0.0%)
   Rasmus Villemoes                  3 (0.0%)
   David Sniatkiwicz                 3 (0.0%)
   Matt Weber                        3 (0.0%)
   Jun Nie                           2 (0.0%)
   Alex Kiernan                      2 (0.0%)
   Zhao Qiang                        2 (0.0%)
   Luis Araneda                      2 (0.0%)
   Lars Povlsen                      1 (0.0%)
   Andrei Stefanescu                 1 (0.0%)
   Hector Palacios                   1 (0.0%)
   Bernhard Messerklinger            1 (0.0%)
   Fabien Lahoudere                  1 (0.0%)
   Yevgeny Popovych                  1 (0.0%)
   Atsushi Nemoto                    1 (0.0%)
   Rick Chen                         1 (0.0%)
   Evgeni Dobrev                     1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Masahiro Yamada                   667 (3.6%)
   Jagan Teki                        479 (2.6%)
   Tuomas Tynkkynen                  342 (1.9%)
   Ashish Kumar                      135 (0.7%)
   Tom Rini                          132 (0.7%)
   Simon Goldschmidt                 54 (0.3%)
   Dirk Meul                         52 (0.3%)
   Peng Ma                           29 (0.2%)
   Chris Packham                     20 (0.1%)
   Hiroyuki Yokoyama                 19 (0.1%)
   Daniel Schwierzeck                15 (0.1%)
   Vikas Manocha                     10 (0.1%)
   Breno Matheus Lima                5 (0.0%)
   Lukasz Majewski                   4 (0.0%)
   Sam Protsenko                     4 (0.0%)
   Andy Shevchenko                   2 (0.0%)
   Grazvydas Ignotas                 1 (0.0%)
   Daniel Gröber                     1 (0.0%)
   Luis Araneda                      1 (0.0%)
   Lars Povlsen                      1 (0.0%)
   Evgeni Dobrev                     1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Alexander Graf                    116 (40.8%)
   Stefan Roese                      35 (12.3%)
   Lokesh Vutla                      13 (4.6%)
   Tom Rini                          12 (4.2%)
   Chris Packham                     11 (3.9%)
   Miquel Raynal                     11 (3.9%)
   Otavio Salvador                   9 (3.2%)
   Michal Simek                      7 (2.5%)
   Fabio Berton                      5 (1.8%)
   Bin Meng                          5 (1.8%)
   Andreas Dannenberg                5 (1.8%)
   Simon Glass                       5 (1.8%)
   Bryan O'Donoghue                  4 (1.4%)
   Nishanth Menon                    4 (1.4%)
   Eugen Hristev                     4 (1.4%)
   Fabien Lahoudere                  3 (1.1%)
   Patrick Delaunay                  3 (1.1%)
   Icenowy Zheng                     3 (1.1%)
   Boris Brezillon                   3 (1.1%)
   Daniel Schwierzeck                2 (0.7%)
   Richard Weinberger                2 (0.7%)
   Peter Howard                      2 (0.7%)
   Vignesh R                         2 (0.7%)
   Baruch Siach                      2 (0.7%)
   Anatolij Gustschin                2 (0.7%)
   Neil Armstrong                    2 (0.7%)
   Masahiro Yamada                   1 (0.4%)
   Jagan Teki                        1 (0.4%)
   Minkyu Kang                       1 (0.4%)
   Suresh Gupta                      1 (0.4%)
   Yogesh Gaur                       1 (0.4%)
   Jacek Anaszewski                  1 (0.4%)
   Sean Nyekjær                      1 (0.4%)
   Chin Liang See                    1 (0.4%)
   Marcel Ziswiler                   1 (0.4%)
   Ofer Heifetz                      1 (0.4%)
   Marek Vasut                       1 (0.4%)
   Peng Fan                          1 (0.4%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Simon Glass                       132 (27.6%)
   Tom Rini                          52 (10.9%)
   Bin Meng                          43 (9.0%)
   York Sun                          39 (8.1%)
   Anatolij Gustschin                33 (6.9%)
   Jagan Teki                        25 (5.2%)
   Lukas Auer                        17 (3.5%)
   Igal Liberman                     16 (3.3%)
   Philipp Tomsich                   14 (2.9%)
   Stefan Roese                      13 (2.7%)
   Boris Brezillon                   13 (2.7%)
   Heiko Schocher                    8 (1.7%)
   Fabio Estevam                     8 (1.7%)
   Heinrich Schuchardt               8 (1.7%)
   Lukasz Majewski                   6 (1.3%)
   Andy Shevchenko                   5 (1.0%)
   Rick Chen                         5 (1.0%)
   Miquel Raynal                     4 (0.8%)
   Peng Fan                          4 (0.8%)
   Lokesh Vutla                      3 (0.6%)
   Andre Przywara                    3 (0.6%)
   Alexander Graf                    2 (0.4%)
   Eugen Hristev                     2 (0.4%)
   Daniel Schwierzeck                2 (0.4%)
   Marek Vasut                       2 (0.4%)
   Simon Goldschmidt                 2 (0.4%)
   Igor Opaniuk                      2 (0.4%)
   Chris Packham                     1 (0.2%)
   Michal Simek                      1 (0.2%)
   Ofer Heifetz                      1 (0.2%)
   Vikas Manocha                     1 (0.2%)
   Jean-Jacques Hiblot               1 (0.2%)
   Michael Trimarchi                 1 (0.2%)
   Stefano Babic                     1 (0.2%)
   David Wu                          1 (0.2%)
   Philipp Tomisch                   1 (0.2%)
   Mark Kettenis                     1 (0.2%)
   Florian Fainelli                  1 (0.2%)
   Hannes Schmelzer                  1 (0.2%)
   Ye Li                             1 (0.2%)
   Stephen Warren                    1 (0.2%)
   Ley Foon Tan                      1 (0.2%)
   Konstantin Porotchkin             1 (0.2%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Bin Meng                          5 (14.3%)
   Igor Opaniuk                      5 (14.3%)
   Derald D. Woods                   3 (8.6%)
   Stefan Roese                      2 (5.7%)
   Hannes Schmelzer                  2 (5.7%)
   Adam Ford                         2 (5.7%)
   Simon Glass                       1 (2.9%)
   York Sun                          1 (2.9%)
   Heiko Schocher                    1 (2.9%)
   Heinrich Schuchardt               1 (2.9%)
   Chris Packham                     1 (2.9%)
   Michal Simek                      1 (2.9%)
   Ye Li                             1 (2.9%)
   Sean Nyekjær                      1 (2.9%)
   VlaoMao                           1 (2.9%)
   Vagrant Cascadian                 1 (2.9%)
   Peter Robinson                    1 (2.9%)
   Rajat Srivastava                  1 (2.9%)
   Ladislav Michl                    1 (2.9%)
   Willy Tarreau                     1 (2.9%)
   Marek Behún                       1 (2.9%)
   Patrice Chotard                   1 (2.9%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Boris Brezillon                   5 (14.3%)
   Jens Wiklander                    5 (14.3%)
   Bin Meng                          2 (5.7%)
   Adam Ford                         2 (5.7%)
   Heinrich Schuchardt               2 (5.7%)
   Michal Simek                      2 (5.7%)
   Jagan Teki                        2 (5.7%)
   Andy Shevchenko                   2 (5.7%)
   Ashish Kumar                      2 (5.7%)
   Stefan Roese                      1 (2.9%)
   Simon Glass                       1 (2.9%)
   Lokesh Vutla                      1 (2.9%)
   Masahiro Yamada                   1 (2.9%)
   Yevgeny Popovych                  1 (2.9%)
   Bernhard Messerklinger            1 (2.9%)
   Mark Tomlinson                    1 (2.9%)
   Paul Davey                        1 (2.9%)
   Vasily Khoruzhick                 1 (2.9%)
   Kever Yang                        1 (2.9%)
   Joe Hershberger                   1 (2.9%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Tom Rini                          5 (29.4%)
   Jagan Teki                        2 (11.8%)
   Stefan Roese                      2 (11.8%)
   Simon Glass                       1 (5.9%)
   Hannes Schmelzer                  1 (5.9%)
   Sean Nyekjær                      1 (5.9%)
   Peter Robinson                    1 (5.9%)
   Lars Povlsen                      1 (5.9%)
   Tim Harvey                        1 (5.9%)
   Tran Tien Dat                     1 (5.9%)
   Yousaf Kaukab                     1 (5.9%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Boris Brezillon                   5 (29.4%)
   Heinrich Schuchardt               4 (23.5%)
   Fabio Estevam                     2 (11.8%)
   Bin Meng                          1 (5.9%)
   Andy Shevchenko                   1 (5.9%)
   Kever Yang                        1 (5.9%)
   Joe Hershberger                   1 (5.9%)
   Daniel Schwierzeck                1 (5.9%)
   Andreas Färber                    1 (5.9%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         409 (37.0%)
   Google, Inc.                      120 (10.9%)
   NXP                               100 (9.0%)
   DENX Software Engineering         79 (7.1%)
   Linaro                            59 (5.3%)
   Texas Instruments                 52 (4.7%)
   AMD                               38 (3.4%)
   Bootlin                           30 (2.7%)
   Guntermann & Drunck               30 (2.7%)
   ST Microelectronics               29 (2.6%)
   Marvell                           19 (1.7%)
   Intel                             16 (1.4%)
   Konsulko Group                    16 (1.4%)
   O.S. Systems                      15 (1.4%)
   ARM                               11 (1.0%)
   National Instruments              10 (0.9%)
   Socionext Inc.                    10 (0.9%)
   Xilinx                            10 (0.9%)
   Renesas Electronics               9 (0.8%)
   Amarula Solutions                 7 (0.6%)
   SUSE                              6 (0.5%)
   Phytec                            5 (0.5%)
   Toradex                           5 (0.5%)
   NVidia                            4 (0.4%)
   Pepperl+Fuchs                     4 (0.4%)
   Rockchip                          4 (0.4%)
   General Electric                  3 (0.3%)
   BayLibre SAS                      2 (0.2%)
   Collabora Ltd.                    1 (0.1%)
   Digi International                1 (0.1%)
   Grazvydas Ignotas                 1 (0.1%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         20211 (24.0%)
   NXP                               9766 (11.6%)
   Google, Inc.                      8404 (10.0%)
   Amarula Solutions                 7158 (8.5%)
   Texas Instruments                 7140 (8.5%)
   Guntermann & Drunck               7127 (8.5%)
   Linaro                            6663 (7.9%)
   DENX Software Engineering         4407 (5.2%)
   Bootlin                           2888 (3.4%)
   AMD                               2281 (2.7%)
   ARM                               1711 (2.0%)
   SUSE                              871 (1.0%)
   Socionext Inc.                    864 (1.0%)
   Intel                             806 (1.0%)
   ST Microelectronics               735 (0.9%)
   BayLibre SAS                      734 (0.9%)
   National Instruments              636 (0.8%)
   Konsulko Group                    465 (0.6%)
   Marvell                           344 (0.4%)
   O.S. Systems                      272 (0.3%)
   Xilinx                            197 (0.2%)
   Renesas Electronics               190 (0.2%)
   Phytec                            179 (0.2%)
   Rockchip                          100 (0.1%)
   Pepperl+Fuchs                     67 (0.1%)
   NVidia                            33 (0.0%)
   Toradex                           26 (0.0%)
   General Electric                  22 (0.0%)
   Grazvydas Ignotas                 18 (0.0%)
   Collabora Ltd.                    1 (0.0%)
   Digi International                1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   SUSE                              116 (40.8%)
   DENX Software Engineering         37 (13.0%)
   (Unknown)                         33 (11.6%)
   Texas Instruments                 24 (8.5%)
   Bootlin                           14 (4.9%)
   O.S. Systems                      14 (4.9%)
   Konsulko Group                    12 (4.2%)
   Xilinx                            7 (2.5%)
   Google, Inc.                      5 (1.8%)
   Linaro                            4 (1.4%)
   NXP                               3 (1.1%)
   ST Microelectronics               3 (1.1%)
   Collabora Ltd.                    3 (1.1%)
   BayLibre SAS                      2 (0.7%)
   Samsung                           2 (0.7%)
   Amarula Solutions                 1 (0.4%)
   Socionext Inc.                    1 (0.4%)
   Intel                             1 (0.4%)
   Marvell                           1 (0.4%)
   Toradex                           1 (0.4%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         58 (44.3%)
   NXP                               17 (13.0%)
   DENX Software Engineering         5 (3.8%)
   Texas Instruments                 5 (3.8%)
   Linaro                            5 (3.8%)
   Intel                             4 (3.1%)
   Marvell                           4 (3.1%)
   SUSE                              3 (2.3%)
   Bootlin                           3 (2.3%)
   ST Microelectronics               3 (2.3%)
   Xilinx                            2 (1.5%)
   ARM                               2 (1.5%)
   General Electric                  2 (1.5%)
   O.S. Systems                      1 (0.8%)
   Konsulko Group                    1 (0.8%)
   Google, Inc.                      1 (0.8%)
   Collabora Ltd.                    1 (0.8%)
   BayLibre SAS                      1 (0.8%)
   Amarula Solutions                 1 (0.8%)
   Socionext Inc.                    1 (0.8%)
   Toradex                           1 (0.8%)
   Guntermann & Drunck               1 (0.8%)
   AMD                               1 (0.8%)
   National Instruments              1 (0.8%)
   Renesas Electronics               1 (0.8%)
   Phytec                            1 (0.8%)
   Rockchip                          1 (0.8%)
   Pepperl+Fuchs                     1 (0.8%)
   NVidia                            1 (0.8%)
   Grazvydas Ignotas                 1 (0.8%)
   Digi International                1 (0.8%)
   ================================  =====
