:orphan:

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

* Processed 464 csets from 69 developers

* 33 employers found

* A total of 102552 lines added, 74330 removed (delta 28222)

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

   ================================  =====
   Name                              Count
   ================================  =====
   Mike Frysinger                    37 (8.0%)
   Kumar Gala                        33 (7.1%)
   Jean-Christophe PLAGNIOL-VILLARD  30 (6.5%)
   Heiko Schocher                    27 (5.8%)
   Wolfgang Denk                     26 (5.6%)
   Becky Bruce                       25 (5.4%)
   Stefan Roese                      22 (4.7%)
   Peter Tyser                       21 (4.5%)
   Matthias Fuchs                    16 (3.4%)
   Nobuhiro Iwamatsu                 15 (3.2%)
   Dave Liu                          14 (3.0%)
   Haiying Wang                      13 (2.8%)
   Kyungmin Park                     12 (2.6%)
   Ben Warren                        10 (2.2%)
   TsiChung Liew                     10 (2.2%)
   Scott Wood                        9 (1.9%)
   Richard Retanubun                 8 (1.7%)
   Anton Vorontsov                   8 (1.7%)
   Remy Böhmer                       7 (1.5%)
   Ilya Yanok                        7 (1.5%)
   Trent Piepho                      6 (1.3%)
   Ed Swarthout                      6 (1.3%)
   Bartlomiej Sieka                  6 (1.3%)
   Michal Simek                      5 (1.1%)
   Niklaus Giger                     5 (1.1%)
   Piotr Ziecik                      5 (1.1%)
   Haavard Skinnemoen                5 (1.1%)
   Graeme Russ                       4 (0.9%)
   Anatolij Gustschin                4 (0.9%)
   Gary Jennejohn                    4 (0.9%)
   Stelian Pop                       4 (0.9%)
   Roy Zang                          3 (0.6%)
   Paul Gortmaker                    3 (0.6%)
   Jon Loeliger                      3 (0.6%)
   Ilko Iliev                        3 (0.6%)
   Adam Graham                       3 (0.6%)
   Peter Korsgaard                   2 (0.4%)
   Nicolas Ferre                     2 (0.4%)
   Timur Tabi                        2 (0.4%)
   Yuri Tikhonov                     2 (0.4%)
   Andy Fleming                      2 (0.4%)
   Michael Trimarchi                 2 (0.4%)
   Dave Mitchell                     2 (0.4%)
   Roman Mashak                      2 (0.4%)
   Jason Jin                         2 (0.4%)
   Ricardo Ribalda                   2 (0.4%)
   Dirk Eibach                       2 (0.4%)
   Liu Yu                            2 (0.4%)
   Kieran Bingham                    1 (0.2%)
   Shinya Kuribayashi                1 (0.2%)
   Martin Michlmayr                  1 (0.2%)
   Sergei Poselenov                  1 (0.2%)
   Sonic Zhang                       1 (0.2%)
   Jerry Van Baren                   1 (0.2%)
   Stefan Althoefer                  1 (0.2%)
   Daniel Hellstrom                  1 (0.2%)
   Jens Scharsig                     1 (0.2%)
   Steven A. Falco                   1 (0.2%)
   Dirk Behme                        1 (0.2%)
   Howard Gregory                    1 (0.2%)
   Selvamuthukumar                   1 (0.2%)
   Clive Stubbings                   1 (0.2%)
   Sergey Lapin                      1 (0.2%)
   Tomohiro Masubuchi                1 (0.2%)
   Alessandro Rubini                 1 (0.2%)
   David Gibson                      1 (0.2%)
   Karl Beldan                       1 (0.2%)
   Georg Schardt                     1 (0.2%)
   Ben Maan                          1 (0.2%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Jean-Christophe PLAGNIOL-VILLARD  56116 (49.1%)
   Kyungmin Park                     15163 (13.3%)
   TsiChung Liew                     11218 (9.8%)
   Wolfgang Denk                     6977 (6.1%)
   Peter Tyser                       3736 (3.3%)
   Kumar Gala                        1824 (1.6%)
   Gary Jennejohn                    1805 (1.6%)
   Heiko Schocher                    1569 (1.4%)
   Matthias Fuchs                    1405 (1.2%)
   Mike Frysinger                    1229 (1.1%)
   Remy Böhmer                       1013 (0.9%)
   Michal Simek                      935 (0.8%)
   Becky Bruce                       882 (0.8%)
   Richard Retanubun                 870 (0.8%)
   Ricardo Ribalda                   842 (0.7%)
   Haiying Wang                      823 (0.7%)
   Dirk Eibach                       723 (0.6%)
   Ilya Yanok                        643 (0.6%)
   Bartlomiej Sieka                  599 (0.5%)
   Sergey Lapin                      592 (0.5%)
   Michael Trimarchi                 474 (0.4%)
   Adam Graham                       458 (0.4%)
   Niklaus Giger                     425 (0.4%)
   Stefan Roese                      363 (0.3%)
   Nobuhiro Iwamatsu                 282 (0.2%)
   Scott Wood                        269 (0.2%)
   Selvamuthukumar                   260 (0.2%)
   Piotr Ziecik                      258 (0.2%)
   Georg Schardt                     252 (0.2%)
   Anton Vorontsov                   234 (0.2%)
   Timur Tabi                        232 (0.2%)
   Dave Liu                          228 (0.2%)
   Haavard Skinnemoen                198 (0.2%)
   Ben Warren                        190 (0.2%)
   Nicolas Ferre                     171 (0.1%)
   Dave Mitchell                     130 (0.1%)
   Trent Piepho                      107 (0.1%)
   Jason Jin                         105 (0.1%)
   Liu Yu                            94 (0.1%)
   Jon Loeliger                      88 (0.1%)
   Stelian Pop                       77 (0.1%)
   Alessandro Rubini                 69 (0.1%)
   Dirk Behme                        67 (0.1%)
   Graeme Russ                       65 (0.1%)
   Tomohiro Masubuchi                45 (0.0%)
   Andy Fleming                      33 (0.0%)
   Ben Maan                          32 (0.0%)
   Ed Swarthout                      31 (0.0%)
   Roman Mashak                      24 (0.0%)
   Kieran Bingham                    19 (0.0%)
   Paul Gortmaker                    17 (0.0%)
   Anatolij Gustschin                15 (0.0%)
   Ilko Iliev                        15 (0.0%)
   Yuri Tikhonov                     14 (0.0%)
   Steven A. Falco                   12 (0.0%)
   Shinya Kuribayashi                11 (0.0%)
   Jens Scharsig                     11 (0.0%)
   Roy Zang                          10 (0.0%)
   Sergei Poselenov                  10 (0.0%)
   Karl Beldan                       8 (0.0%)
   David Gibson                      7 (0.0%)
   Peter Korsgaard                   6 (0.0%)
   Howard Gregory                    6 (0.0%)
   Sonic Zhang                       3 (0.0%)
   Jerry Van Baren                   2 (0.0%)
   Daniel Hellstrom                  2 (0.0%)
   Martin Michlmayr                  1 (0.0%)
   Stefan Althoefer                  1 (0.0%)
   Clive Stubbings                   1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   TsiChung Liew                     3057 (4.1%)
   Michal Simek                      920 (1.2%)
   Matthias Fuchs                    795 (1.1%)
   Jean-Christophe PLAGNIOL-VILLARD  436 (0.6%)
   Mike Frysinger                    279 (0.4%)
   Timur Tabi                        170 (0.2%)
   Dave Liu                          161 (0.2%)
   Nobuhiro Iwamatsu                 127 (0.2%)
   Alessandro Rubini                 68 (0.1%)
   Jon Loeliger                      32 (0.0%)
   Roman Mashak                      22 (0.0%)
   Paul Gortmaker                    12 (0.0%)
   Steven A. Falco                   9 (0.0%)
   Andy Fleming                      8 (0.0%)
   Dirk Behme                        3 (0.0%)
   Ilko Iliev                        1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Stefan Roese                      47 (27.6%)
   Ben Warren                        15 (8.8%)
   Kim Phillips                      12 (7.1%)
   Andy Fleming                      11 (6.5%)
   Nobuhiro Iwamatsu                 10 (5.9%)
   Wolfgang Denk                     8 (4.7%)
   Shinya Kuribayashi                7 (4.1%)
   Markus Klotzbuecher               6 (3.5%)
   Remy Böhmer                       6 (3.5%)
   Anatolij Gustschin                5 (2.9%)
   Scott Wood                        5 (2.9%)
   Jean-Christophe PLAGNIOL-VILLARD  4 (2.4%)
   Alexey Neyman                     4 (2.4%)
   Rafal Czubak                      4 (2.4%)
   Kumar Gala                        4 (2.4%)
   Ricardo Ribalda Delgado           3 (1.8%)
   Victor Gallardo                   3 (1.8%)
   Jason Jin                         3 (1.8%)
   Mike Frysinger                    2 (1.2%)
   James Yang                        2 (1.2%)
   Yuri Tikhonov                     2 (1.2%)
   Dave Liu                          1 (0.6%)
   Vladimir Panfilov                 1 (0.6%)
   Gerald Van Baren                  1 (0.6%)
   Valeriy Glushkov                  1 (0.6%)
   Nick Spence                       1 (0.6%)
   Ilya Yanok                        1 (0.6%)
   Haiying Wang                      1 (0.6%)
   ================================  =====


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

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


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

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


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

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


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

   ================================  =====
   Name                              Count
   ================================  =====
   Scott Wood                        1 (33.3%)
   Alessandro Rubini                 1 (33.3%)
   Martin Michlmayr                  1 (33.3%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Scott Wood                        1 (33.3%)
   Alessandro Rubini                 1 (33.3%)
   Martin Michlmayr                  1 (33.3%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Freescale                         131 (28.2%)
   DENX Software Engineering         83 (17.9%)
   Analog Devices                    38 (8.2%)
   (Unknown)                         32 (6.9%)
   jcrosoft                          30 (6.5%)
   Extreme Engineering Solutions     21 (4.5%)
   ESD Electronics                   16 (3.4%)
   Samsung                           12 (2.6%)
   Semihalf Embedded Systems         11 (2.4%)
   EmCraft Systems                   10 (2.2%)
   Nobuhiro Iwamatsu                 9 (1.9%)
   MontaVista                        8 (1.7%)
   RuggedCom                         8 (1.7%)
   Atmel                             7 (1.5%)
   Oce Technologies                  7 (1.5%)
   Renesas Electronics               6 (1.3%)
   Xilinx                            5 (1.1%)
   Graeme Russ                       4 (0.9%)
   Stelian Pop                       4 (0.9%)
   AMCC                              3 (0.6%)
   Wind River                        3 (0.6%)
   Ronetix                           3 (0.6%)
   Guntermann & Drunck               2 (0.4%)
   Barco                             2 (0.4%)
   BuS Elektronik                    1 (0.2%)
   Custom IDEAS                      1 (0.2%)
   e-con Infotech                    1 (0.2%)
   Gaisler Research                  1 (0.2%)
   Harris Corporation                1 (0.2%)
   Netstal-Maschinen                 1 (0.2%)
   cTech                             1 (0.2%)
   Xentech Solutions                 1 (0.2%)
   Funky                             1 (0.2%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   jcrosoft                          56116 (49.1%)
   Freescale                         15950 (13.9%)
   Samsung                           15163 (13.3%)
   DENX Software Engineering         10729 (9.4%)
   Extreme Engineering Solutions     3736 (3.3%)
   (Unknown)                         2600 (2.3%)
   ESD Electronics                   1405 (1.2%)
   Analog Devices                    1232 (1.1%)
   Oce Technologies                  1013 (0.9%)
   Xilinx                            935 (0.8%)
   RuggedCom                         870 (0.8%)
   Semihalf Embedded Systems         857 (0.7%)
   Guntermann & Drunck               723 (0.6%)
   EmCraft Systems                   667 (0.6%)
   AMCC                              458 (0.4%)
   Atmel                             369 (0.3%)
   Netstal-Maschinen                 292 (0.3%)
   Renesas Electronics               260 (0.2%)
   e-con Infotech                    260 (0.2%)
   cTech                             252 (0.2%)
   MontaVista                        234 (0.2%)
   Stelian Pop                       77 (0.1%)
   Graeme Russ                       65 (0.1%)
   Funky                             45 (0.0%)
   Nobuhiro Iwamatsu                 22 (0.0%)
   Wind River                        17 (0.0%)
   Ronetix                           15 (0.0%)
   Harris Corporation                12 (0.0%)
   BuS Elektronik                    11 (0.0%)
   Barco                             6 (0.0%)
   Custom IDEAS                      2 (0.0%)
   Gaisler Research                  2 (0.0%)
   Xentech Solutions                 1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   DENX Software Engineering         66 (38.8%)
   Freescale                         40 (23.5%)
   (Unknown)                         23 (13.5%)
   Nobuhiro Iwamatsu                 10 (5.9%)
   EmCraft Systems                   8 (4.7%)
   Oce Technologies                  6 (3.5%)
   jcrosoft                          4 (2.4%)
   Semihalf Embedded Systems         4 (2.4%)
   AMCC                              3 (1.8%)
   Universidad Autonoma de Madrid    3 (1.8%)
   Analog Devices                    2 (1.2%)
   Custom IDEAS                      1 (0.6%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         16 (22.5%)
   Freescale                         15 (21.1%)
   DENX Software Engineering         5 (7.0%)
   EmCraft Systems                   3 (4.2%)
   Semihalf Embedded Systems         2 (2.8%)
   Analog Devices                    2 (2.8%)
   Atmel                             2 (2.8%)
   Nobuhiro Iwamatsu                 1 (1.4%)
   Oce Technologies                  1 (1.4%)
   jcrosoft                          1 (1.4%)
   AMCC                              1 (1.4%)
   Custom IDEAS                      1 (1.4%)
   Samsung                           1 (1.4%)
   Extreme Engineering Solutions     1 (1.4%)
   ESD Electronics                   1 (1.4%)
   Xilinx                            1 (1.4%)
   RuggedCom                         1 (1.4%)
   Guntermann & Drunck               1 (1.4%)
   Netstal-Maschinen                 1 (1.4%)
   Renesas Electronics               1 (1.4%)
   e-con Infotech                    1 (1.4%)
   cTech                             1 (1.4%)
   MontaVista                        1 (1.4%)
   Stelian Pop                       1 (1.4%)
   Graeme Russ                       1 (1.4%)
   Funky                             1 (1.4%)
   Wind River                        1 (1.4%)
   Ronetix                           1 (1.4%)
   Harris Corporation                1 (1.4%)
   BuS Elektronik                    1 (1.4%)
   Barco                             1 (1.4%)
   Gaisler Research                  1 (1.4%)
   Xentech Solutions                 1 (1.4%)
   ================================  =====
