:orphan:

Release Statistics for U-Boot v1.3.4
====================================

* Processed 511 csets from 86 developers

* 46 employers found

* A total of 52636 lines added, 31679 removed (delta 20957)

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

   ================================  =====
   Name                              Count
   ================================  =====
   Wolfgang Denk                     56 (11.0%)
   Stefan Roese                      34 (6.7%)
   Haavard Skinnemoen                33 (6.5%)
   Kumar Gala                        27 (5.3%)
   Stelian Pop                       27 (5.3%)
   Nobuhiro Iwamatsu                 21 (4.1%)
   Wolfgang Grandegger               19 (3.7%)
   Jean-Christophe PLAGNIOL-VILLARD  18 (3.5%)
   TsiChung Liew                     18 (3.5%)
   Sergei Poselenov                  17 (3.3%)
   Becky Bruce                       15 (2.9%)
   Shinya Kuribayashi                12 (2.3%)
   Andy Fleming                      11 (2.2%)
   Remy Bohmer                       10 (2.0%)
   Hugo Villeneuve                   10 (2.0%)
   Andre Schwarz                     8 (1.6%)
   Paul Gortmaker                    8 (1.6%)
   Michal Simek                      7 (1.4%)
   Yuri Tikhonov                     7 (1.4%)
   Scott Wood                        6 (1.2%)
   Kim Phillips                      6 (1.2%)
   Gerald Van Baren                  6 (1.2%)
   Anatolij Gustschin                5 (1.0%)
   Marcel Ziswiler                   5 (1.0%)
   Christian Eggers                  5 (1.0%)
   York Sun                          5 (1.0%)
   Magnus Lilja                      4 (0.8%)
   Matvejchikov Ilya                 4 (0.8%)
   Kyungmin Park                     4 (0.8%)
   Rafal Jaworowski                  4 (0.8%)
   Detlev Zundel                     4 (0.8%)
   Jason McMullan                    4 (0.8%)
   Anton Vorontsov                   4 (0.8%)
   Grant Erickson                    4 (0.8%)
   Ben Warren                        3 (0.6%)
   Gururaja Hebbar K R               3 (0.6%)
   Steven A. Falco                   3 (0.6%)
   Kenneth Johansson                 3 (0.6%)
   Mark Jackson                      3 (0.6%)
   Harald Welte                      3 (0.6%)
   Gary Jennejohn                    3 (0.6%)
   Stuart Wood                       3 (0.6%)
   Tor Krill                         3 (0.6%)
   Dirk Behme                        2 (0.4%)
   Peter Tyser                       2 (0.4%)
   Sergey Lapin                      2 (0.4%)
   John Rigby                        2 (0.4%)
   Timur Tabi                        2 (0.4%)
   Sebastian Siewior                 2 (0.4%)
   Andrew Klossner                   2 (0.4%)
   Martha Marx                       2 (0.4%)
   Larry Johnson                     2 (0.4%)
   Marian Balakowicz                 2 (0.4%)
   Sascha Laue                       2 (0.4%)
   Vasiliy Leoenenko                 2 (0.4%)
   David Brownell                    2 (0.4%)
   Jens Gehrlein                     1 (0.2%)
   Steve Sakoman                     1 (0.2%)
   Roy Zang                          1 (0.2%)
   David Saada                       1 (0.2%)
   Yoshihiro Shimoda                 1 (0.2%)
   Markus Klotzbuecher               1 (0.2%)
   Hunter, Jon                       1 (0.2%)
   Guennadi Liakhovetski             1 (0.2%)
   Frank Svendsbøe                   1 (0.2%)
   Stefano Babic                     1 (0.2%)
   Heiko Schocher                    1 (0.2%)
   Adrian Filipi                     1 (0.2%)
   Wolfgang Ocker                    1 (0.2%)
   Ricardo Ribalda                   1 (0.2%)
   Niklaus Giger                     1 (0.2%)
   Juergen Kilb                      1 (0.2%)
   Robin Getz                        1 (0.2%)
   Jon Loeliger                      1 (0.2%)
   Dave Liu                          1 (0.2%)
   Daniel Hellstrom                  1 (0.2%)
   Joakim Tjernlund                  1 (0.2%)
   Jason Jin                         1 (0.2%)
   Patrice Vilchez                   1 (0.2%)
   Esben Haabendal                   1 (0.2%)
   Philip Balister                   1 (0.2%)
   Peter Ma                          1 (0.2%)
   David Gibson                      1 (0.2%)
   Matthias Fuchs                    1 (0.2%)
   Hans-Christian Egtvedt            1 (0.2%)
   Ron Madrid                        1 (0.2%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Wolfgang Denk                     22067 (35.6%)
   Stefan Roese                      6880 (11.1%)
   Stelian Pop                       3760 (6.1%)
   Haavard Skinnemoen                2754 (4.4%)
   Andre Schwarz                     2398 (3.9%)
   Nobuhiro Iwamatsu                 2064 (3.3%)
   Wolfgang Grandegger               2042 (3.3%)
   Shinya Kuribayashi                1721 (2.8%)
   Sergei Poselenov                  1706 (2.7%)
   Yoshihiro Shimoda                 1589 (2.6%)
   Adrian Filipi                     1320 (2.1%)
   Kumar Gala                        1196 (1.9%)
   Grant Erickson                    1196 (1.9%)
   Hugo Villeneuve                   1193 (1.9%)
   Tor Krill                         990 (1.6%)
   Michal Simek                      795 (1.3%)
   Becky Bruce                       786 (1.3%)
   Gary Jennejohn                    690 (1.1%)
   Gerald Van Baren                  642 (1.0%)
   Anton Vorontsov                   602 (1.0%)
   Jean-Christophe PLAGNIOL-VILLARD  441 (0.7%)
   Timur Tabi                        407 (0.7%)
   Martha Marx                       389 (0.6%)
   Kenneth Johansson                 382 (0.6%)
   Hans-Christian Egtvedt            360 (0.6%)
   York Sun                          344 (0.6%)
   Remy Bohmer                       304 (0.5%)
   Kim Phillips                      254 (0.4%)
   Andy Fleming                      191 (0.3%)
   Jason McMullan                    167 (0.3%)
   Scott Wood                        158 (0.3%)
   Yuri Tikhonov                     157 (0.3%)
   Ben Warren                        139 (0.2%)
   John Rigby                        133 (0.2%)
   Paul Gortmaker                    129 (0.2%)
   Stuart Wood                       108 (0.2%)
   Rafal Jaworowski                  94 (0.2%)
   Matthias Fuchs                    93 (0.1%)
   Marian Balakowicz                 89 (0.1%)
   Larry Johnson                     86 (0.1%)
   Matvejchikov Ilya                 85 (0.1%)
   Marcel Ziswiler                   81 (0.1%)
   Christian Eggers                  81 (0.1%)
   Jon Loeliger                      75 (0.1%)
   Peter Ma                          64 (0.1%)
   Harald Welte                      59 (0.1%)
   TsiChung Liew                     58 (0.1%)
   David Gibson                      55 (0.1%)
   David Saada                       53 (0.1%)
   Anatolij Gustschin                52 (0.1%)
   Magnus Lilja                      52 (0.1%)
   Sascha Laue                       52 (0.1%)
   Vasiliy Leoenenko                 36 (0.1%)
   Jens Gehrlein                     34 (0.1%)
   Jason Jin                         32 (0.1%)
   Ron Madrid                        31 (0.0%)
   Sergey Lapin                      30 (0.0%)
   Andrew Klossner                   29 (0.0%)
   Hunter, Jon                       25 (0.0%)
   Heiko Schocher                    24 (0.0%)
   Kyungmin Park                     22 (0.0%)
   Mark Jackson                      22 (0.0%)
   Steven A. Falco                   21 (0.0%)
   Markus Klotzbuecher               18 (0.0%)
   Dirk Behme                        16 (0.0%)
   Patrice Vilchez                   16 (0.0%)
   Detlev Zundel                     15 (0.0%)
   Joakim Tjernlund                  15 (0.0%)
   David Brownell                    13 (0.0%)
   Gururaja Hebbar K R               12 (0.0%)
   Sebastian Siewior                 8 (0.0%)
   Dave Liu                          8 (0.0%)
   Peter Tyser                       7 (0.0%)
   Ricardo Ribalda                   5 (0.0%)
   Esben Haabendal                   5 (0.0%)
   Steve Sakoman                     4 (0.0%)
   Roy Zang                          4 (0.0%)
   Guennadi Liakhovetski             3 (0.0%)
   Daniel Hellstrom                  3 (0.0%)
   Stefano Babic                     2 (0.0%)
   Niklaus Giger                     2 (0.0%)
   Juergen Kilb                      2 (0.0%)
   Robin Getz                        2 (0.0%)
   Philip Balister                   2 (0.0%)
   Frank Svendsbøe                   1 (0.0%)
   Wolfgang Ocker                    1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Stefan Roese                      3095 (9.8%)
   Adrian Filipi                     1320 (4.2%)
   Michal Simek                      676 (2.1%)
   Gerald Van Baren                  569 (1.8%)
   Matthias Fuchs                    93 (0.3%)
   Kumar Gala                        79 (0.2%)
   Jon Loeliger                      75 (0.2%)
   Kenneth Johansson                 53 (0.2%)
   Harald Welte                      25 (0.1%)
   David Gibson                      11 (0.0%)
   Peter Tyser                       6 (0.0%)
   Kyungmin Park                     5 (0.0%)
   Heiko Schocher                    2 (0.0%)
   Dirk Behme                        2 (0.0%)
   Gururaja Hebbar K R               2 (0.0%)
   Steve Sakoman                     2 (0.0%)
   Robin Getz                        2 (0.0%)
   Guennadi Liakhovetski             1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Jean-Christophe PLAGNIOL-VILLARD  30 (22.6%)
   Ben Warren                        21 (15.8%)
   Kim Phillips                      8 (6.0%)
   Andy Fleming                      7 (5.3%)
   Stefan Roese                      6 (4.5%)
   Ilya Yanok                        6 (4.5%)
   Markus Klotzbuecher               5 (3.8%)
   Scott Wood                        5 (3.8%)
   Rafal Czubak                      4 (3.0%)
   Martin Krause                     4 (3.0%)
   Thomas Waehner                    4 (3.0%)
   Shinya Kuribayashi                4 (3.0%)
   Haavard Skinnemoen                4 (3.0%)
   Kurt Mahan                        3 (2.3%)
   Wolfgang Denk                     3 (2.3%)
   Alexey Korolev                    2 (1.5%)
   Dirk Behme                        1 (0.8%)
   Steve Sakoman                     1 (0.8%)
   Manikandan Pillai                 1 (0.8%)
   Ricardo Ribalda Delgado           1 (0.8%)
   Grant Likely                      1 (0.8%)
   Manuel Sahm                       1 (0.8%)
   John Roberts                      1 (0.8%)
   Philip Balister, OpenSDR          1 (0.8%)
   Werner Almesberger                1 (0.8%)
   Francesco Albanese                1 (0.8%)
   Juergen Kilb                      1 (0.8%)
   Philip Balister                   1 (0.8%)
   Dave Liu                          1 (0.8%)
   Jens Gehrlein                     1 (0.8%)
   Timur Tabi                        1 (0.8%)
   Sergei Poselenov                  1 (0.8%)
   Nobuhiro Iwamatsu                 1 (0.8%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Guennadi Liakhovetski             1 (100.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Haavard Skinnemoen                1 (100.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Gururaja Hebbar K R               1 (100.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Haavard Skinnemoen                1 (100.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   DENX Software Engineering         124 (24.3%)
   Freescale                         96 (18.8%)
   (Unknown)                         50 (9.8%)
   Atmel                             35 (6.8%)
   Stelian Pop                       27 (5.3%)
   EmCraft Systems                   24 (4.7%)
   jcrosoft                          18 (3.5%)
   Renesas Electronics               17 (3.3%)
   Lyrtech                           10 (2.0%)
   Oce Technologies                  10 (2.0%)
   Wind River                        8 (1.6%)
   Matrix Vision                     8 (1.6%)
   Xilinx                            7 (1.4%)
   Custom IDEAS                      6 (1.2%)
   Semihalf Embedded Systems         6 (1.2%)
   Nobuhiro Iwamatsu                 5 (1.0%)
   MontaVista                        4 (0.8%)
   NetApp                            4 (0.8%)
   Nuovation System Designs          4 (0.8%)
   Samsung                           4 (0.8%)
   Excito Elektronik                 3 (0.6%)
   Harris Corporation                3 (0.6%)
   Lab X Technologies                3 (0.6%)
   Mercury IMC Ltd.                  3 (0.6%)
   Sanyo LSI Technology India        3 (0.6%)
   South Pole AB                     3 (0.6%)
   ACM                               2 (0.4%)
   Xerox                             2 (0.4%)
   Liebherr                          2 (0.4%)
   linutronix                        2 (0.4%)
   Silicon Turnkey Express           2 (0.4%)
   Extreme Engineering Solutions     2 (0.4%)
   Analog Devices                    1 (0.2%)
   ECI Telecom                       1 (0.2%)
   ESD Electronics                   1 (0.2%)
   EuroTech                          1 (0.2%)
   Gaisler Research                  1 (0.2%)
   Mediama Technologies              1 (0.2%)
   Netstal-Maschinen                 1 (0.2%)
   Reccoware Systems                 1 (0.2%)
   Sakoman Inc.                      1 (0.2%)
   Texas Instruments                 1 (0.2%)
   TQ Systems                        1 (0.2%)
   Transmode Systems                 1 (0.2%)
   Dirk Behme                        1 (0.2%)
   Sheldon Instruments               1 (0.2%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   DENX Software Engineering         31112 (50.1%)
   Stelian Pop                       3760 (6.1%)
   Freescale                         3646 (5.9%)
   Renesas Electronics               3616 (5.8%)
   Atmel                             3130 (5.0%)
   (Unknown)                         3055 (4.9%)
   Matrix Vision                     2398 (3.9%)
   EmCraft Systems                   1863 (3.0%)
   EuroTech                          1320 (2.1%)
   Nuovation System Designs          1196 (1.9%)
   Lyrtech                           1193 (1.9%)
   Excito Elektronik                 990 (1.6%)
   Xilinx                            795 (1.3%)
   Custom IDEAS                      642 (1.0%)
   MontaVista                        602 (1.0%)
   jcrosoft                          441 (0.7%)
   Silicon Turnkey Express           389 (0.6%)
   South Pole AB                     382 (0.6%)
   Oce Technologies                  304 (0.5%)
   Semihalf Embedded Systems         183 (0.3%)
   NetApp                            167 (0.3%)
   Wind River                        129 (0.2%)
   Lab X Technologies                108 (0.2%)
   ESD Electronics                   93 (0.1%)
   ACM                               86 (0.1%)
   Mediama Technologies              64 (0.1%)
   ECI Telecom                       53 (0.1%)
   Liebherr                          52 (0.1%)
   Nobuhiro Iwamatsu                 37 (0.1%)
   TQ Systems                        34 (0.1%)
   Sheldon Instruments               31 (0.0%)
   Xerox                             29 (0.0%)
   Texas Instruments                 25 (0.0%)
   Samsung                           22 (0.0%)
   Mercury IMC Ltd.                  22 (0.0%)
   Harris Corporation                21 (0.0%)
   Transmode Systems                 15 (0.0%)
   Sanyo LSI Technology India        12 (0.0%)
   Dirk Behme                        9 (0.0%)
   linutronix                        8 (0.0%)
   Extreme Engineering Solutions     7 (0.0%)
   Sakoman Inc.                      4 (0.0%)
   Gaisler Research                  3 (0.0%)
   Analog Devices                    2 (0.0%)
   Netstal-Maschinen                 2 (0.0%)
   Reccoware Systems                 1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         31 (23.3%)
   jcrosoft                          30 (22.6%)
   Freescale                         25 (18.8%)
   DENX Software Engineering         14 (10.5%)
   TQ Systems                        9 (6.8%)
   EmCraft Systems                   7 (5.3%)
   Atmel                             4 (3.0%)
   Semihalf Embedded Systems         4 (3.0%)
   Nobuhiro Iwamatsu                 1 (0.8%)
   Texas Instruments                 1 (0.8%)
   Sakoman Inc.                      1 (0.8%)
   Feig Electronic                   1 (0.8%)
   Openmoko                          1 (0.8%)
   OpenSDR                           1 (0.8%)
   Powerwave Technologies            1 (0.8%)
   Secretlab                         1 (0.8%)
   Universidad Autonoma de Madrid    1 (0.8%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         18 (20.2%)
   Freescale                         13 (14.6%)
   DENX Software Engineering         10 (11.2%)
   Atmel                             3 (3.4%)
   EmCraft Systems                   2 (2.2%)
   Semihalf Embedded Systems         2 (2.2%)
   Renesas Electronics               2 (2.2%)
   jcrosoft                          1 (1.1%)
   TQ Systems                        1 (1.1%)
   Nobuhiro Iwamatsu                 1 (1.1%)
   Texas Instruments                 1 (1.1%)
   Sakoman Inc.                      1 (1.1%)
   Stelian Pop                       1 (1.1%)
   Matrix Vision                     1 (1.1%)
   EuroTech                          1 (1.1%)
   Nuovation System Designs          1 (1.1%)
   Lyrtech                           1 (1.1%)
   Excito Elektronik                 1 (1.1%)
   Xilinx                            1 (1.1%)
   Custom IDEAS                      1 (1.1%)
   MontaVista                        1 (1.1%)
   Silicon Turnkey Express           1 (1.1%)
   South Pole AB                     1 (1.1%)
   Oce Technologies                  1 (1.1%)
   NetApp                            1 (1.1%)
   Wind River                        1 (1.1%)
   Lab X Technologies                1 (1.1%)
   ESD Electronics                   1 (1.1%)
   ACM                               1 (1.1%)
   Mediama Technologies              1 (1.1%)
   ECI Telecom                       1 (1.1%)
   Liebherr                          1 (1.1%)
   Sheldon Instruments               1 (1.1%)
   Xerox                             1 (1.1%)
   Samsung                           1 (1.1%)
   Mercury IMC Ltd.                  1 (1.1%)
   Harris Corporation                1 (1.1%)
   Transmode Systems                 1 (1.1%)
   Sanyo LSI Technology India        1 (1.1%)
   Dirk Behme                        1 (1.1%)
   linutronix                        1 (1.1%)
   Extreme Engineering Solutions     1 (1.1%)
   Gaisler Research                  1 (1.1%)
   Analog Devices                    1 (1.1%)
   Netstal-Maschinen                 1 (1.1%)
   Reccoware Systems                 1 (1.1%)
   ================================  =====
