:orphan:

Release Statistics for U-Boot v2010.06
======================================

* Processed 402 csets from 100 developers

* 31 employers found

* A total of 42673 lines added, 22618 removed (delta 20055)

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

   ================================  =====
   Name                              Count
   ================================  =====
   Thomas Chou                       28 (7.0%)
   Graeme Russ                       26 (6.5%)
   Wolfgang Denk                     23 (5.7%)
   Peter Tyser                       22 (5.5%)
   Stefano Babic                     19 (4.7%)
   Kumar Gala                        16 (4.0%)
   Frans Meulenbroeks                16 (4.0%)
   Anatolij Gustschin                14 (3.5%)
   Mike Frysinger                    14 (3.5%)
   TsiChung Liew                     13 (3.2%)
   Stefan Roese                      11 (2.7%)
   Vaibhav Hiremath                  10 (2.5%)
   Minkyu Kang                       9 (2.2%)
   Michal Simek                      9 (2.2%)
   Scott McNutt                      8 (2.0%)
   Dave Liu                          8 (2.0%)
   Kim Phillips                      7 (1.7%)
   Cyril Chemparathy                 7 (1.7%)
   Asen Dimov                        7 (1.7%)
   Detlev Zundel                     7 (1.7%)
   Sergei Shtylyov                   6 (1.5%)
   Timur Tabi                        6 (1.5%)
   Wolfgang Wegner                   6 (1.5%)
   Heiko Schocher                    4 (1.0%)
   Ron Madrid                        4 (1.0%)
   Albert Aribaud                    4 (1.0%)
   Naveen Krishna CH                 4 (1.0%)
   Poonam Aggrwal                    3 (0.7%)
   Sudhakar Rajashekhara             3 (0.7%)
   Prafulla Wadaskar                 3 (0.7%)
   Delio Brignoli                    2 (0.5%)
   Tom                               2 (0.5%)
   Matthias Kaehlcke                 2 (0.5%)
   Serge Ziryukin                    2 (0.5%)
   Matthias Fuchs                    2 (0.5%)
   Jerry Huang                       2 (0.5%)
   Andre Schwarz                     2 (0.5%)
   Larry Johnson                     2 (0.5%)
   Michael Zaidman                   2 (0.5%)
   Fabio Estevam                     2 (0.5%)
   John Rigby                        2 (0.5%)
   Richard Retanubun                 2 (0.5%)
   Ed Swarthout                      2 (0.5%)
   Kim B. Heino                      2 (0.5%)
   John Schmoller                    2 (0.5%)
   Becky Bruce                       1 (0.2%)
   Remy Bohmer                       1 (0.2%)
   Dipen Dudhat                      1 (0.2%)
   Felix Radensky                    1 (0.2%)
   Sandeep Gopalpet                  1 (0.2%)
   Peter Horton                      1 (0.2%)
   Guennadi Liakhovetski             1 (0.2%)
   Ilya Yanok                        1 (0.2%)
   Terry Lv                          1 (0.2%)
   Vitaly Kuzmichev                  1 (0.2%)
   Ben Warren                        1 (0.2%)
   Fillod Stephane                   1 (0.2%)
   Marek Vasut                       1 (0.2%)
   Grazvydas Ignotas                 1 (0.2%)
   George G. Davis                   1 (0.2%)
   Andrew Caldwell                   1 (0.2%)
   Andreas Bießmann                  1 (0.2%)
   Michael Weiss                     1 (0.2%)
   Mahavir Jain                      1 (0.2%)
   Horst Kronstorfer                 1 (0.2%)
   Nick Thompson                     1 (0.2%)
   York Sun                          1 (0.2%)
   Ender.Dai                         1 (0.2%)
   Trübenbach, Ralf                  1 (0.2%)
   Reinhard Arlt                     1 (0.2%)
   Norbert van Bolhuis               1 (0.2%)
   Magnus Lilja                      1 (0.2%)
   Valentin Yakovenkov               1 (0.2%)
   Eric Jarrige                      1 (0.2%)
   Andy Fleming                      1 (0.2%)
   Robin Getz                        1 (0.2%)
   Siddarth Gore                     1 (0.2%)
   Alexander Holler                  1 (0.2%)
   trix                              1 (0.2%)
   Lan Chunhe                        1 (0.2%)
   Roy Zang                          1 (0.2%)
   Srikanth Srinivasan               1 (0.2%)
   Rini van Zetten                   1 (0.2%)
   Arun Bhanu                        1 (0.2%)
   Jens Scharsig                     1 (0.2%)
   karl.beldan@gmail.com             1 (0.2%)
   Albin Tonnerre                    1 (0.2%)
   Brent Kandetzki                   1 (0.2%)
   Harald Krapfenbauer               1 (0.2%)
   Alessandro Rubini                 1 (0.2%)
   Achim Ehrlich                     1 (0.2%)
   Daniel Gorsulowski                1 (0.2%)
   Joonyoung Shim                    1 (0.2%)
   Vipin KUMAR                       1 (0.2%)
   Philippe De Muyter                1 (0.2%)
   Michael Durrant                   1 (0.2%)
   Florian Fainelli                  1 (0.2%)
   Nikolay Petukhov                  1 (0.2%)
   Renato Andreola                   1 (0.2%)
   Matthias Weisser                  1 (0.2%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Thomas Chou                       16355 (28.2%)
   Wolfgang Denk                     5566 (9.6%)
   Cyril Chemparathy                 4714 (8.1%)
   Graeme Russ                       3048 (5.3%)
   Vaibhav Hiremath                  2844 (4.9%)
   Stefan Roese                      2607 (4.5%)
   Anatolij Gustschin                2373 (4.1%)
   Minkyu Kang                       1632 (2.8%)
   Albert Aribaud                    1534 (2.6%)
   Wolfgang Wegner                   1375 (2.4%)
   Peter Tyser                       1363 (2.4%)
   Detlev Zundel                     1323 (2.3%)
   Stefano Babic                     1270 (2.2%)
   Tom                               1165 (2.0%)
   Andre Schwarz                     1095 (1.9%)
   TsiChung Liew                     1038 (1.8%)
   trix                              974 (1.7%)
   Scott McNutt                      863 (1.5%)
   Asen Dimov                        859 (1.5%)
   Siddarth Gore                     652 (1.1%)
   Frans Meulenbroeks                515 (0.9%)
   Timur Tabi                        421 (0.7%)
   Mike Frysinger                    399 (0.7%)
   Kumar Gala                        389 (0.7%)
   Sudhakar Rajashekhara             363 (0.6%)
   Heiko Schocher                    355 (0.6%)
   Nikolay Petukhov                  301 (0.5%)
   Brent Kandetzki                   294 (0.5%)
   Renato Andreola                   282 (0.5%)
   Michal Simek                      225 (0.4%)
   Michael Zaidman                   216 (0.4%)
   Naveen Krishna CH                 164 (0.3%)
   Reinhard Arlt                     159 (0.3%)
   Dave Liu                          87 (0.2%)
   Kim Phillips                      87 (0.2%)
   Dipen Dudhat                      87 (0.2%)
   Delio Brignoli                    86 (0.1%)
   Richard Retanubun                 76 (0.1%)
   Fabio Estevam                     69 (0.1%)
   Ron Madrid                        56 (0.1%)
   Jerry Huang                       46 (0.1%)
   Ed Swarthout                      37 (0.1%)
   Matthias Kaehlcke                 34 (0.1%)
   Arun Bhanu                        34 (0.1%)
   Matthias Fuchs                    32 (0.1%)
   Ben Warren                        31 (0.1%)
   Srikanth Srinivasan               25 (0.0%)
   Sergei Shtylyov                   24 (0.0%)
   Lan Chunhe                        20 (0.0%)
   Prafulla Wadaskar                 19 (0.0%)
   Michael Durrant                   19 (0.0%)
   Poonam Aggrwal                    15 (0.0%)
   Sandeep Gopalpet                  15 (0.0%)
   Vitaly Kuzmichev                  15 (0.0%)
   Felix Radensky                    14 (0.0%)
   Alessandro Rubini                 12 (0.0%)
   Matthias Weisser                  12 (0.0%)
   Kim B. Heino                      11 (0.0%)
   Andreas Bießmann                  11 (0.0%)
   Achim Ehrlich                     11 (0.0%)
   Magnus Lilja                      10 (0.0%)
   Grazvydas Ignotas                 9 (0.0%)
   Harald Krapfenbauer               9 (0.0%)
   Larry Johnson                     8 (0.0%)
   Mahavir Jain                      8 (0.0%)
   Nick Thompson                     8 (0.0%)
   Florian Fainelli                  8 (0.0%)
   Serge Ziryukin                    7 (0.0%)
   Terry Lv                          7 (0.0%)
   York Sun                          7 (0.0%)
   Alexander Holler                  7 (0.0%)
   Vipin KUMAR                       7 (0.0%)
   Guennadi Liakhovetski             6 (0.0%)
   Andrew Caldwell                   6 (0.0%)
   Ender.Dai                         6 (0.0%)
   Roy Zang                          6 (0.0%)
   Albin Tonnerre                    6 (0.0%)
   Joonyoung Shim                    6 (0.0%)
   Rini van Zetten                   5 (0.0%)
   Marek Vasut                       4 (0.0%)
   Michael Weiss                     4 (0.0%)
   Robin Getz                        4 (0.0%)
   John Rigby                        3 (0.0%)
   John Schmoller                    3 (0.0%)
   Ilya Yanok                        3 (0.0%)
   George G. Davis                   3 (0.0%)
   Trübenbach, Ralf                  3 (0.0%)
   Jens Scharsig                     3 (0.0%)
   Becky Bruce                       2 (0.0%)
   Fillod Stephane                   2 (0.0%)
   Horst Kronstorfer                 2 (0.0%)
   Norbert van Bolhuis               2 (0.0%)
   Andy Fleming                      2 (0.0%)
   Daniel Gorsulowski                2 (0.0%)
   Philippe De Muyter                2 (0.0%)
   Remy Bohmer                       1 (0.0%)
   Peter Horton                      1 (0.0%)
   Valentin Yakovenkov               1 (0.0%)
   Eric Jarrige                      1 (0.0%)
   karl.beldan@gmail.com             1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Thomas Chou                       8029 (35.5%)
   Detlev Zundel                     1280 (5.7%)
   Scott McNutt                      435 (1.9%)
   Fabio Estevam                     68 (0.3%)
   Michal Simek                      64 (0.3%)
   Mike Frysinger                    44 (0.2%)
   Mahavir Jain                      7 (0.0%)
   Matthias Kaehlcke                 4 (0.0%)
   Harald Krapfenbauer               3 (0.0%)
   Guennadi Liakhovetski             2 (0.0%)
   Ender.Dai                         2 (0.0%)
   Daniel Gorsulowski                2 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Scott McNutt                      22 (15.4%)
   Sandeep Paulraj                   22 (15.4%)
   Ben Warren                        22 (15.4%)
   Kumar Gala                        18 (12.6%)
   Stefan Roese                      8 (5.6%)
   Kim Phillips                      7 (4.9%)
   Minkyu Kang                       5 (3.5%)
   Wolfgang Denk                     5 (3.5%)
   Kyungmin Park                     4 (2.8%)
   Sanjeev Premi                     4 (2.8%)
   Mike Frysinger                    3 (2.1%)
   Detlev Zundel                     2 (1.4%)
   Roy Zang                          2 (1.4%)
   Dave Liu                          2 (1.4%)
   Thomas Chou                       1 (0.7%)
   Michal Simek                      1 (0.7%)
   Matthias Kaehlcke                 1 (0.7%)
   Artem Bityutskiy                  1 (0.7%)
   Haiying Wang                      1 (0.7%)
   Tom Rix                           1 (0.7%)
   Jingchang Lu                      1 (0.7%)
   Jason Jin                         1 (0.7%)
   David Wu                          1 (0.7%)
   Michael Weiss                     1 (0.7%)
   Srikanth Srinivasan               1 (0.7%)
   Ed Swarthout                      1 (0.7%)
   Sandeep Gopalpet                  1 (0.7%)
   Ron Madrid                        1 (0.7%)
   Dipen Dudhat                      1 (0.7%)
   Heiko Schocher                    1 (0.7%)
   Anatolij Gustschin                1 (0.7%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Wolfgang Denk                     2 (100.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Ian Abbott                        4 (26.7%)
   Ben Gardiner                      2 (13.3%)
   Wolfgang Denk                     1 (6.7%)
   Thomas Chou                       1 (6.7%)
   Heiko Schocher                    1 (6.7%)
   Anatolij Gustschin                1 (6.7%)
   Thomas Weber                      1 (6.7%)
   Magnus Lilja                      1 (6.7%)
   Prafulla Wadaskar                 1 (6.7%)
   Peter Tyser                       1 (6.7%)
   Tom                               1 (6.7%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Thomas Chou                       4 (26.7%)
   Ben Warren                        3 (20.0%)
   Delio Brignoli                    2 (13.3%)
   Wolfgang Denk                     1 (6.7%)
   Mike Frysinger                    1 (6.7%)
   Ed Swarthout                      1 (6.7%)
   Vitaly Kuzmichev                  1 (6.7%)
   Felix Radensky                    1 (6.7%)
   Stefano Babic                     1 (6.7%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Haiying Wang                      1 (50.0%)
   Peter Meerwald                    1 (50.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Mike Frysinger                    1 (50.0%)
   Kim Phillips                      1 (50.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         108 (26.9%)
   DENX Software Engineering         79 (19.7%)
   Freescale                         53 (13.2%)
   Graeme Russ                       26 (6.5%)
   Extreme Engineering Solutions     24 (6.0%)
   Texas Instruments                 20 (5.0%)
   Analog Devices                    16 (4.0%)
   Samsung                           13 (3.2%)
   Xilinx                            9 (2.2%)
   MontaVista                        8 (2.0%)
   Psyent                            8 (2.0%)
   Ronetix                           7 (1.7%)
   ESD Electronics                   4 (1.0%)
   Sheldon Instruments               4 (1.0%)
   Marvell                           3 (0.7%)
   ACM                               2 (0.5%)
   Bluegiga Technologies             2 (0.5%)
   Matrix Vision                     2 (0.5%)
   RuggedCom                         2 (0.5%)
   ARVOO Engineering                 1 (0.2%)
   Wind River                        1 (0.2%)
   EmCraft Systems                   1 (0.2%)
   Free Electrons                    1 (0.2%)
   General Electric                  1 (0.2%)
   Macq Electronique                 1 (0.2%)
   ST Microelectronics               1 (0.2%)
   taskit                            1 (0.2%)
   Universita di Pavia               1 (0.2%)
   Oce Technologies                  1 (0.2%)
   Grazvydas Ignotas                 1 (0.2%)
   Funky                             1 (0.2%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         24121 (41.7%)
   DENX Software Engineering         13498 (23.3%)
   Texas Instruments                 7921 (13.7%)
   Graeme Russ                       3048 (5.3%)
   Samsung                           1795 (3.1%)
   Extreme Engineering Solutions     1366 (2.4%)
   Freescale                         1253 (2.2%)
   Matrix Vision                     1095 (1.9%)
   Wind River                        974 (1.7%)
   Psyent                            863 (1.5%)
   Ronetix                           859 (1.5%)
   Analog Devices                    409 (0.7%)
   Xilinx                            225 (0.4%)
   ESD Electronics                   193 (0.3%)
   RuggedCom                         76 (0.1%)
   Sheldon Instruments               56 (0.1%)
   MontaVista                        42 (0.1%)
   Marvell                           19 (0.0%)
   Universita di Pavia               12 (0.0%)
   Bluegiga Technologies             11 (0.0%)
   taskit                            11 (0.0%)
   Grazvydas Ignotas                 9 (0.0%)
   ACM                               8 (0.0%)
   General Electric                  8 (0.0%)
   ST Microelectronics               7 (0.0%)
   Funky                             7 (0.0%)
   Free Electrons                    6 (0.0%)
   ARVOO Engineering                 5 (0.0%)
   EmCraft Systems                   3 (0.0%)
   Macq Electronique                 2 (0.0%)
   Oce Technologies                  1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Freescale                         36 (25.2%)
   (Unknown)                         27 (18.9%)
   Texas Instruments                 26 (18.2%)
   Psyent                            22 (15.4%)
   DENX Software Engineering         17 (11.9%)
   Samsung                           9 (6.3%)
   Analog Devices                    3 (2.1%)
   Wind River                        1 (0.7%)
   Sheldon Instruments               1 (0.7%)
   Nokia                             1 (0.7%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         39 (38.6%)
   Freescale                         16 (15.8%)
   DENX Software Engineering         7 (6.9%)
   Texas Instruments                 3 (3.0%)
   Samsung                           3 (3.0%)
   Analog Devices                    3 (3.0%)
   ESD Electronics                   3 (3.0%)
   MontaVista                        3 (3.0%)
   Extreme Engineering Solutions     2 (2.0%)
   Psyent                            1 (1.0%)
   Wind River                        1 (1.0%)
   Sheldon Instruments               1 (1.0%)
   Graeme Russ                       1 (1.0%)
   Matrix Vision                     1 (1.0%)
   Ronetix                           1 (1.0%)
   Xilinx                            1 (1.0%)
   RuggedCom                         1 (1.0%)
   Marvell                           1 (1.0%)
   Universita di Pavia               1 (1.0%)
   Bluegiga Technologies             1 (1.0%)
   taskit                            1 (1.0%)
   Grazvydas Ignotas                 1 (1.0%)
   ACM                               1 (1.0%)
   General Electric                  1 (1.0%)
   ST Microelectronics               1 (1.0%)
   Funky                             1 (1.0%)
   Free Electrons                    1 (1.0%)
   ARVOO Engineering                 1 (1.0%)
   EmCraft Systems                   1 (1.0%)
   Macq Electronique                 1 (1.0%)
   Oce Technologies                  1 (1.0%)
   ================================  =====
