:orphan:

Release Statistics for U-Boot v2008.10
======================================

* Processed 2498 changesets from 174 developers

* 85 employers found

* A total of 402101 lines added, 156903 removed (delta 245198)

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

   ================================  =====
   Name                              Count
   ================================  =====
   Stefan Roese                      245 (9.8%)
   Wolfgang Denk                     211 (8.4%)
   Kumar Gala                        185 (7.4%)
   Jean-Christophe PLAGNIOL-VILLARD  175 (7.0%)
   Nobuhiro Iwamatsu                 78 (3.1%)
   TsiChung Liew                     78 (3.1%)
   Marian Balakowicz                 74 (3.0%)
   Matthias Fuchs                    73 (2.9%)
   Haavard Skinnemoen                67 (2.7%)
   Mike Frysinger                    56 (2.2%)
   Stelian Pop                       49 (2.0%)
   Shinya Kuribayashi                46 (1.8%)
   Dave Liu                          42 (1.7%)
   Yuri Tikhonov                     39 (1.6%)
   Guennadi Liakhovetski             39 (1.6%)
   Kim Phillips                      37 (1.5%)
   Jon Loeliger                      37 (1.5%)
   Anton Vorontsov                   37 (1.5%)
   Larry Johnson                     37 (1.5%)
   Ben Warren                        35 (1.4%)
   Anatolij Gustschin                31 (1.2%)
   Heiko Schocher                    27 (1.1%)
   Andy Fleming                      27 (1.1%)
   Becky Bruce                       25 (1.0%)
   Michal Simek                      24 (1.0%)
   Sergei Poselenov                  23 (0.9%)
   Scott Wood                        22 (0.9%)
   Bartlomiej Sieka                  21 (0.8%)
   Wolfgang Grandegger               20 (0.8%)
   Niklaus Giger                     19 (0.8%)
   Hugo Villeneuve                   18 (0.7%)
   David Gibson                      16 (0.6%)
   Timur Tabi                        16 (0.6%)
   Andre Schwarz                     15 (0.6%)
   Gerald Van Baren                  15 (0.6%)
   Remy Bohmer                       15 (0.6%)
   Kyungmin Park                     15 (0.6%)
   Daniel Hellstrom                  15 (0.6%)
   Ricardo Ribalda                   14 (0.6%)
   Detlev Zundel                     13 (0.5%)
   Harald Welte                      12 (0.5%)
   Marcel Ziswiler                   12 (0.5%)
   Grant Erickson                    12 (0.5%)
   Sascha Hauer                      12 (0.5%)
   Gururaja Hebbar K R               11 (0.4%)
   Rafal Jaworowski                  11 (0.4%)
   Grant Likely                      11 (0.4%)
   Paul Gortmaker                    11 (0.4%)
   Peter Tyser                       10 (0.4%)
   Nick Spence                       10 (0.4%)
   Magnus Lilja                      10 (0.4%)
   William Juul                      10 (0.4%)
   Martin Krause                     10 (0.4%)
   Michael Schwingen                 10 (0.4%)
   Jason Jin                         9 (0.4%)
   James Yang                        9 (0.4%)
   Markus Klotzbuecher               9 (0.4%)
   York Sun                          9 (0.4%)
   Sascha Laue                       8 (0.3%)
   Yoshihiro Shimoda                 7 (0.3%)
   John Rigby                        7 (0.3%)
   Jens Gehrlein                     7 (0.3%)
   Vlad Lungu                        7 (0.3%)
   Peter Pearse                      7 (0.3%)
   Steven A. Falco                   6 (0.2%)
   Joakim Tjernlund                  6 (0.2%)
   Tor Krill                         6 (0.2%)
   Yusuke Goda                       6 (0.2%)
   Haiying Wang                      5 (0.2%)
   Andrew Dyer                       5 (0.2%)
   Mark Jackson                      5 (0.2%)
   Dirk Behme                        5 (0.2%)
   Christian Eggers                  5 (0.2%)
   Michael Barkowski                 5 (0.2%)
   Grzegorz Bernacki                 5 (0.2%)
   Victor Gallardo                   4 (0.2%)
   Jason McMullan                    4 (0.2%)
   Andreas Engel                     4 (0.2%)
   Ira W. Snyder                     4 (0.2%)
   Roy Zang                          4 (0.2%)
   Matvejchikov Ilya                 4 (0.2%)
   Stefano Babic                     4 (0.2%)
   David Brownell                    4 (0.2%)
   Jerry Van Baren                   4 (0.2%)
   Ed Swarthout                      3 (0.1%)
   Adam Graham                       3 (0.1%)
   Gary Jennejohn                    3 (0.1%)
   Adrian Filipi                     3 (0.1%)
   Andrew Klossner                   3 (0.1%)
   Markus Heidelberg                 3 (0.1%)
   Hans-Christian Egtvedt            3 (0.1%)
   Kenneth Johansson                 3 (0.1%)
   Feng Kan                          3 (0.1%)
   Stuart Wood                       3 (0.1%)
   Markus Brunner                    3 (0.1%)
   Eugene O'Brien                    3 (0.1%)
   Pieter Voorthuijsen               3 (0.1%)
   Mike Nuss                         3 (0.1%)
   Ladislav Michl                    3 (0.1%)
   Zhang Wei                         3 (0.1%)
   Selvamuthukumar                   2 (0.1%)
   Luigi 'Comio' Mantellini          2 (0.1%)
   Laurent Pinchart                  2 (0.1%)
   u-boot@bugs.denx.de               2 (0.1%)
   Wolfgang Ocker                    2 (0.1%)
   Prodyut  Hazarika                 2 (0.1%)
   Martha J Marx                     2 (0.1%)
   Sebastian Siewior                 2 (0.1%)
   Sergey Lapin                      2 (0.1%)
   David Saada                       2 (0.1%)
   Vasiliy Leoenenko                 2 (0.1%)
   Lee Nipper                        2 (0.1%)
   Ulf Samuelsson                    2 (0.1%)
   Matthew Fettke                    2 (0.1%)
   Aras Vaichas                      2 (0.1%)
   Mark Jonas                        2 (0.1%)
   Bryan O'Donoghue                  2 (0.1%)
   robert lazarski                   2 (0.1%)
   Joe Hamman                        2 (0.1%)
   Lepcha Suchit                     1 (0.0%)
   Nikita V. Youshchenko             1 (0.0%)
   Louis Su                          1 (0.0%)
   Rafal Czubak                      1 (0.0%)
   gnusercn                          1 (0.0%)
   Jens Scharsig                     1 (0.0%)
   Claudio Scordino                  1 (0.0%)
   Petri Lehtinen                    1 (0.0%)
   Ryan CHEN                         1 (0.0%)
   Nícolas Carneiro Lebedenco        1 (0.0%)
   Graeme Russ                       1 (0.0%)
   Jochen Friedrich                  1 (0.0%)
   Sandeep Paulraj                   1 (0.0%)
   Randy Vinson                      1 (0.0%)
   Wolfram Sang                      1 (0.0%)
   Tirumala R Marri                  1 (0.0%)
   Axel Beierlein                    1 (0.0%)
   Fathi BOUDRA                      1 (0.0%)
   Ilya Yanok                        1 (0.0%)
   Sergey Kubushyn                   1 (0.0%)
   Steve Sakoman                     1 (0.0%)
   Hunter, Jon                       1 (0.0%)
   Rafael Campos                     1 (0.0%)
   Julien May                        1 (0.0%)
   Frank Svendsbøe                   1 (0.0%)
   Juergen Kilb                      1 (0.0%)
   Robin Getz                        1 (0.0%)
   Patrice Vilchez                   1 (0.0%)
   Esben Haabendal                   1 (0.0%)
   Philip Balister                   1 (0.0%)
   Peter Ma                          1 (0.0%)
   Ron Madrid                        1 (0.0%)
   Wheatley Travis                   1 (0.0%)
   Dave Mitchell                     1 (0.0%)
   Jeremy McNicoll                   1 (0.0%)
   Troy Kisky                        1 (0.0%)
   Jason Wessel                      1 (0.0%)
   eran liberty                      1 (0.0%)
   Joe D'Abbraccio                   1 (0.0%)
   Bernhard Nemec                    1 (0.0%)
   Kim B. Heino                      1 (0.0%)
   michael                           1 (0.0%)
   Woodruff, Richard                 1 (0.0%)
   Li Yang                           1 (0.0%)
   Marcel Moolenaar                  1 (0.0%)
   Uwe Kleine-König                  1 (0.0%)
   Timo Tuunainen                    1 (0.0%)
   Hiroshi Ito                       1 (0.0%)
   Johannes Stezenbach               1 (0.0%)
   michael.firth@bt.com              1 (0.0%)
   Poonam Aggrwal                    1 (0.0%)
   Oliver Weber                      1 (0.0%)
   Rodolfo Giometti                  1 (0.0%)
   raptorbrino@aim.com               1 (0.0%)
   Upakul Barkakaty                  1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Mike Frysinger                    73997 (15.9%)
   Wolfgang Denk                     64193 (13.8%)
   William Juul                      40361 (8.7%)
   Stefan Roese                      27101 (5.8%)
   Kumar Gala                        25096 (5.4%)
   TsiChung Liew                     22189 (4.8%)
   Daniel Hellstrom                  15358 (3.3%)
   Matthias Fuchs                    14568 (3.1%)
   Nobuhiro Iwamatsu                 14165 (3.0%)
   Jean-Christophe PLAGNIOL-VILLARD  12562 (2.7%)
   Marian Balakowicz                 10887 (2.3%)
   Guennadi Liakhovetski             8914 (1.9%)
   Stelian Pop                       8375 (1.8%)
   Larry Johnson                     8198 (1.8%)
   Dave Liu                          6580 (1.4%)
   Michael Schwingen                 5797 (1.2%)
   Haavard Skinnemoen                5748 (1.2%)
   Sascha Hauer                      5161 (1.1%)
   Heiko Schocher                    4625 (1.0%)
   Andre Schwarz                     4028 (0.9%)
   Yoshihiro Shimoda                 3240 (0.7%)
   Shinya Kuribayashi                3159 (0.7%)
   Yusuke Goda                       3133 (0.7%)
   Rafal Jaworowski                  2983 (0.6%)
   Yuri Tikhonov                     2862 (0.6%)
   Jon Loeliger                      2813 (0.6%)
   Kim Phillips                      2792 (0.6%)
   Peter Pearse                      2624 (0.6%)
   Anton Vorontsov                   2572 (0.6%)
   Luigi 'Comio' Mantellini          2540 (0.5%)
   Niklaus Giger                     2528 (0.5%)
   Scott Wood                        2456 (0.5%)
   York Sun                          2183 (0.5%)
   Wolfgang Grandegger               2044 (0.4%)
   Kyungmin Park                     1928 (0.4%)
   Michal Simek                      1885 (0.4%)
   Ricardo Ribalda                   1849 (0.4%)
   Grant Erickson                    1840 (0.4%)
   Matthew Fettke                    1823 (0.4%)
   Sergei Poselenov                  1815 (0.4%)
   Hugo Villeneuve                   1777 (0.4%)
   Becky Bruce                       1683 (0.4%)
   Joe Hamman                        1654 (0.4%)
   Andreas Engel                     1649 (0.4%)
   Anatolij Gustschin                1626 (0.3%)
   Ben Warren                        1437 (0.3%)
   Timur Tabi                        1406 (0.3%)
   robert lazarski                   1393 (0.3%)
   Adam Graham                       1382 (0.3%)
   Adrian Filipi                     1325 (0.3%)
   Tor Krill                         1247 (0.3%)
   Louis Su                          1140 (0.2%)
   Feng Kan                          1122 (0.2%)
   David Gibson                      1105 (0.2%)
   Hans-Christian Egtvedt            1097 (0.2%)
   Bartlomiej Sieka                  1011 (0.2%)
   Timo Tuunainen                    985 (0.2%)
   Andy Fleming                      803 (0.2%)
   Gerald Van Baren                  737 (0.2%)
   Harald Welte                      706 (0.2%)
   Gary Jennejohn                    690 (0.1%)
   Pieter Voorthuijsen               688 (0.1%)
   Grant Likely                      673 (0.1%)
   Mark Jonas                        645 (0.1%)
   John Rigby                        574 (0.1%)
   James Yang                        569 (0.1%)
   Mark Jackson                      566 (0.1%)
   Vlad Lungu                        560 (0.1%)
   Paul Gortmaker                    468 (0.1%)
   Ira W. Snyder                     455 (0.1%)
   Detlev Zundel                     433 (0.1%)
   Julien May                        416 (0.1%)
   Stefano Babic                     392 (0.1%)
   Martha J Marx                     389 (0.1%)
   Kenneth Johansson                 382 (0.1%)
   Remy Bohmer                       333 (0.1%)
   eran liberty                      324 (0.1%)
   Haiying Wang                      302 (0.1%)
   Jerry Van Baren                   284 (0.1%)
   Gururaja Hebbar K R               264 (0.1%)
   Victor Gallardo                   247 (0.1%)
   Jason Wessel                      233 (0.0%)
   Nick Spence                       218 (0.0%)
   Andrew Dyer                       202 (0.0%)
   Joakim Tjernlund                  191 (0.0%)
   Ladislav Michl                    189 (0.0%)
   Martin Krause                     183 (0.0%)
   Prodyut  Hazarika                 183 (0.0%)
   Jason McMullan                    167 (0.0%)
   Peter Tyser                       165 (0.0%)
   Ulf Samuelsson                    150 (0.0%)
   Marcel Ziswiler                   147 (0.0%)
   Steven A. Falco                   132 (0.0%)
   Magnus Lilja                      131 (0.0%)
   Markus Klotzbuecher               131 (0.0%)
   Michael Barkowski                 118 (0.0%)
   Dirk Behme                        113 (0.0%)
   Stuart Wood                       108 (0.0%)
   Sascha Laue                       106 (0.0%)
   Mike Nuss                         106 (0.0%)
   David Saada                       98 (0.0%)
   Graeme Russ                       96 (0.0%)
   Jason Jin                         94 (0.0%)
   Bryan O'Donoghue                  93 (0.0%)
   Matvejchikov Ilya                 85 (0.0%)
   Grzegorz Bernacki                 84 (0.0%)
   Sandeep Paulraj                   82 (0.0%)
   Christian Eggers                  81 (0.0%)
   Jens Gehrlein                     75 (0.0%)
   Peter Ma                          64 (0.0%)
   u-boot@bugs.denx.de               48 (0.0%)
   Rafael Campos                     43 (0.0%)
   Zhang Wei                         39 (0.0%)
   Andrew Klossner                   38 (0.0%)
   Vasiliy Leoenenko                 36 (0.0%)
   Ron Madrid                        31 (0.0%)
   Sergey Lapin                      30 (0.0%)
   Aras Vaichas                      25 (0.0%)
   Hunter, Jon                       25 (0.0%)
   David Brownell                    23 (0.0%)
   Axel Beierlein                    22 (0.0%)
   Bernhard Nemec                    22 (0.0%)
   Ed Swarthout                      21 (0.0%)
   Eugene O'Brien                    21 (0.0%)
   Wheatley Travis                   21 (0.0%)
   Fathi BOUDRA                      20 (0.0%)
   michael.firth@bt.com              20 (0.0%)
   Selvamuthukumar                   16 (0.0%)
   Patrice Vilchez                   16 (0.0%)
   Poonam Aggrwal                    16 (0.0%)
   Rodolfo Giometti                  16 (0.0%)
   Roy Zang                          14 (0.0%)
   Wolfram Sang                      14 (0.0%)
   Sergey Kubushyn                   14 (0.0%)
   Laurent Pinchart                  12 (0.0%)
   Lee Nipper                        12 (0.0%)
   Lepcha Suchit                     12 (0.0%)
   Markus Heidelberg                 10 (0.0%)
   Markus Brunner                    10 (0.0%)
   Jens Scharsig                     10 (0.0%)
   Ilya Yanok                        9 (0.0%)
   Troy Kisky                        9 (0.0%)
   Uwe Kleine-König                  9 (0.0%)
   Sebastian Siewior                 8 (0.0%)
   Li Yang                           7 (0.0%)
   Wolfgang Ocker                    6 (0.0%)
   Nícolas Carneiro Lebedenco        6 (0.0%)
   michael                           6 (0.0%)
   Woodruff, Richard                 6 (0.0%)
   Hiroshi Ito                       6 (0.0%)
   Tirumala R Marri                  5 (0.0%)
   Esben Haabendal                   5 (0.0%)
   Steve Sakoman                     4 (0.0%)
   Oliver Weber                      4 (0.0%)
   Upakul Barkakaty                  4 (0.0%)
   Nikita V. Youshchenko             3 (0.0%)
   Petri Lehtinen                    3 (0.0%)
   Jeremy McNicoll                   3 (0.0%)
   Johannes Stezenbach               3 (0.0%)
   gnusercn                          2 (0.0%)
   Ryan CHEN                         2 (0.0%)
   Jochen Friedrich                  2 (0.0%)
   Randy Vinson                      2 (0.0%)
   Juergen Kilb                      2 (0.0%)
   Robin Getz                        2 (0.0%)
   Philip Balister                   2 (0.0%)
   Marcel Moolenaar                  2 (0.0%)
   Rafal Czubak                      1 (0.0%)
   Claudio Scordino                  1 (0.0%)
   Frank Svendsbøe                   1 (0.0%)
   Dave Mitchell                     1 (0.0%)
   Joe D'Abbraccio                   1 (0.0%)
   Kim B. Heino                      1 (0.0%)
   raptorbrino@aim.com               1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Andreas Engel                     1535 (1.0%)
   Adrian Filipi                     1321 (0.8%)
   Gerald Van Baren                  556 (0.4%)
   Paul Gortmaker                    241 (0.2%)
   Jason Wessel                      233 (0.1%)
   Jerry Van Baren                   185 (0.1%)
   Becky Bruce                       158 (0.1%)
   Ladislav Michl                    137 (0.1%)
   Ira W. Snyder                     119 (0.1%)
   Andrew Dyer                       80 (0.1%)
   Kenneth Johansson                 53 (0.0%)
   Peter Tyser                       51 (0.0%)
   Dirk Behme                        51 (0.0%)
   Bernhard Nemec                    22 (0.0%)
   Laurent Pinchart                  9 (0.0%)
   michael.firth@bt.com              8 (0.0%)
   Steven A. Falco                   4 (0.0%)
   Steve Sakoman                     2 (0.0%)
   Robin Getz                        2 (0.0%)
   Troy Kisky                        1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Stefan Roese                      82 (14.1%)
   Ben Warren                        70 (12.1%)
   Kim Phillips                      63 (10.9%)
   Jean-Christophe PLAGNIOL-VILLARD  40 (6.9%)
   Scott Wood                        26 (4.5%)
   Kumar Gala                        21 (3.6%)
   Wolfgang Denk                     20 (3.4%)
   Dmitry Rakhchev                   16 (2.8%)
   Ricardo Ribalda Delgado           15 (2.6%)
   Guennadi Liakhovetski             14 (2.4%)
   Markus Klotzbuecher               11 (1.9%)
   Andy Fleming                      11 (1.9%)
   Jon Loeliger                      10 (1.7%)
   Haavard Skinnemoen                9 (1.6%)
   Nobuhiro Iwamatsu                 9 (1.6%)
   Gerald Van Baren                  7 (1.2%)
   Martin Krause                     7 (1.2%)
   Kurt Mahan                        6 (1.0%)
   Ilya Yanok                        6 (1.0%)
   Shinya Kuribayashi                6 (1.0%)
   Jason Jin                         5 (0.9%)
   Sergei Poselenov                  5 (0.9%)
   Dave Liu                          5 (0.9%)
   Rafal Czubak                      4 (0.7%)
   Thomas Waehner                    4 (0.7%)
   Ed Swarthout                      4 (0.7%)
   David Woodhouse                   3 (0.5%)
   Srikanth Srinivasan               3 (0.5%)
   Dejan Minic                       3 (0.5%)
   Mahesh Jade                       3 (0.5%)
   James Yang                        3 (0.5%)
   TsiChung Liew                     3 (0.5%)
   Dirk Behme                        2 (0.3%)
   Steven A. Falco                   2 (0.3%)
   Joe D'Abbraccio                   2 (0.3%)
   Werner Almesberger                2 (0.3%)
   Stig Olsen                        2 (0.3%)
   Alexey Korolev                    2 (0.3%)
   Michael Hennerich                 2 (0.3%)
   Rafal Zabdyr                      2 (0.3%)
   Rodolfo Giometti                  2 (0.3%)
   Detlev Zundel                     2 (0.3%)
   Jason McMullan                    2 (0.3%)
   John Rigby                        2 (0.3%)
   Bartlomiej Sieka                  2 (0.3%)
   Timur Tabi                        2 (0.3%)
   Wolfgang Grandegger               2 (0.3%)
   Yuri Tikhonov                     2 (0.3%)
   Luigi 'Comio' Mantellini          2 (0.3%)
   Rafal Jaworowski                  2 (0.3%)
   Matthias Fuchs                    2 (0.3%)
   Mike Frysinger                    2 (0.3%)
   Jerry Van Baren                   1 (0.2%)
   Becky Bruce                       1 (0.2%)
   Ladislav Michl                    1 (0.2%)
   Steve Sakoman                     1 (0.2%)
   Tirumala R Marri                  1 (0.2%)
   Andrew Morton                     1 (0.2%)
   Peter Korsgaard                   1 (0.2%)
   Morten Ebbell Hestnes             1 (0.2%)
   Manikandan Pillai                 1 (0.2%)
   Manuel Sahm                       1 (0.2%)
   John Roberts                      1 (0.2%)
   Philip Balister, OpenSDR          1 (0.2%)
   Francesco Albanese                1 (0.2%)
   Ebony Zhu                         1 (0.2%)
   Eran Liberty                      1 (0.2%)
   Zachary P. Landau                 1 (0.2%)
   Matt Wadel                        1 (0.2%)
   Olaf Hering                       1 (0.2%)
   Dmitry Ivanov                     1 (0.2%)
   Kevin Lam                         1 (0.2%)
   Scott McNutt                      1 (0.2%)
   Brian Miller                      1 (0.2%)
   Piotr Kruszynski                  1 (0.2%)
   Pravin M. Bathija                 1 (0.2%)
   Juergen Kilb                      1 (0.2%)
   Philip Balister                   1 (0.2%)
   Sebastian Siewior                 1 (0.2%)
   Wolfgang Ocker                    1 (0.2%)
   Markus Brunner                    1 (0.2%)
   Jens Gehrlein                     1 (0.2%)
   Michael Barkowski                 1 (0.2%)
   Gururaja Hebbar K R               1 (0.2%)
   Joakim Tjernlund                  1 (0.2%)
   Grant Likely                      1 (0.2%)
   Victor Gallardo                   1 (0.2%)
   Martha J Marx                     1 (0.2%)
   David Gibson                      1 (0.2%)
   Vlad Lungu                        1 (0.2%)
   Gary Jennejohn                    1 (0.2%)
   Tor Krill                         1 (0.2%)
   Adam Graham                       1 (0.2%)
   Anatolij Gustschin                1 (0.2%)
   Kyungmin Park                     1 (0.2%)
   Larry Johnson                     1 (0.2%)
   Yoshihiro Shimoda                 1 (0.2%)
   Heiko Schocher                    1 (0.2%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Kim Phillips                      1 (100.0%)
   ================================  =====


.. 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 2)
   :widths: auto

   ================================  =====
   Name                              Count
   ================================  =====
   Gururaja Hebbar K R               1 (50.0%)
   Coray Tate                        1 (50.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Haavard Skinnemoen                1 (50.0%)
   Kim Phillips                      1 (50.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   DENX Software Engineering         610 (24.4%)
   Freescale                         539 (21.6%)
   (Unknown)                         241 (9.6%)
   jcrosoft                          175 (7.0%)
   Semihalf Embedded Systems         112 (4.5%)
   ESD Electronics                   73 (2.9%)
   Atmel                             72 (2.9%)
   Analog Devices                    57 (2.3%)
   Nobuhiro Iwamatsu                 48 (1.9%)
   EmCraft Systems                   47 (1.9%)
   Stelian Pop                       47 (1.9%)
   Renesas Electronics               41 (1.6%)
   MontaVista                        38 (1.5%)
   Xilinx                            24 (1.0%)
   Wind River                        20 (0.8%)
   Custom IDEAS                      19 (0.8%)
   ACM                               18 (0.7%)
   Lyrtech                           18 (0.7%)
   TQ Systems                        17 (0.7%)
   Netstal-Maschinen                 16 (0.6%)
   Gaisler Research                  15 (0.6%)
   Matrix Vision                     15 (0.6%)
   Samsung                           15 (0.6%)
   Oce Technologies                  15 (0.6%)
   AMCC                              14 (0.6%)
   Pengutronix                       13 (0.5%)
   Nuovation System Designs          12 (0.5%)
   Sanyo LSI Technology India        11 (0.4%)
   Secretlab                         11 (0.4%)
   Extreme Engineering Solutions     10 (0.4%)
   NEC                               8 (0.3%)
   Openmoko                          8 (0.3%)
   ARM                               7 (0.3%)
   Excito Elektronik                 6 (0.2%)
   Harris Corporation                6 (0.2%)
   Transmode Systems                 6 (0.2%)
   Mercury IMC Ltd.                  5 (0.2%)
   RightHand Technologies            5 (0.2%)
   Ericsson                          4 (0.2%)
   NetApp                            4 (0.2%)
   OVRO                              4 (0.2%)
   Advantech                         3 (0.1%)
   Xerox                             3 (0.1%)
   EuroTech                          3 (0.1%)
   Lab X Technologies                3 (0.1%)
   South Pole AB                     3 (0.1%)
   Terascala                         3 (0.1%)
   Texas Instruments                 3 (0.1%)
   Dirk Behme                        3 (0.1%)
   Funky                             3 (0.1%)
   CSE Semaphore, Inc.               2 (0.1%)
   e-con Infotech                    2 (0.1%)
   ECI Telecom                       2 (0.1%)
   Embedded Specialties              2 (0.1%)
   Industrie Dial Face               2 (0.1%)
   Liebherr                          2 (0.1%)
   linutronix                        2 (0.1%)
   MagTech Systems                   2 (0.1%)
   Reccoware Systems                 2 (0.1%)
   Silicon Turnkey Express           2 (0.1%)
   ASIX                              1 (0.0%)
   Bluegiga Technologies             1 (0.0%)
   Boundary Devices                  1 (0.0%)
   BT Group                          1 (0.0%)
   BuS Elektronik                    1 (0.0%)
   Debian.org                        1 (0.0%)
   Digi International                1 (0.0%)
   Evidence S.r.l.                   1 (0.0%)
   Ingenieurbuero Ganssloser         1 (0.0%)
   Hanscan                           1 (0.0%)
   Inoi Oy                           1 (0.0%)
   Juniper Networks                  1 (0.0%)
   Mediama Technologies              1 (0.0%)
   Micromico                         1 (0.0%)
   Media Lab                         1 (0.0%)
   Prodrive                          1 (0.0%)
   Sakoman Inc.                      1 (0.0%)
   scram! e.V.                       1 (0.0%)
   ST Microelectronics               1 (0.0%)
   Sysart Oy                         1 (0.0%)
   TANDBERG                          1 (0.0%)
   Task Sistemas                     1 (0.0%)
   Graeme Russ                       1 (0.0%)
   Sergey Kubushyn                   1 (0.0%)
   Sheldon Instruments               1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   DENX Software Engineering         109656 (23.5%)
   Analog Devices                    73999 (15.9%)
   Freescale                         70018 (15.0%)
   (Unknown)                         60455 (13.0%)
   Gaisler Research                  15358 (3.3%)
   Semihalf Embedded Systems         14966 (3.2%)
   ESD Electronics                   14568 (3.1%)
   jcrosoft                          12562 (2.7%)
   TANDBERG                          10446 (2.2%)
   Renesas Electronics               9529 (2.0%)
   Nobuhiro Iwamatsu                 8273 (1.8%)
   Stelian Pop                       7909 (1.7%)
   Atmel                             7010 (1.5%)
   Pengutronix                       5175 (1.1%)
   Matrix Vision                     4028 (0.9%)
   AMCC                              2940 (0.6%)
   ARM                               2624 (0.6%)
   MontaVista                        2574 (0.6%)
   Industrie Dial Face               2540 (0.5%)
   EmCraft Systems                   2539 (0.5%)
   Netstal-Maschinen                 2502 (0.5%)
   ACM                               2232 (0.5%)
   Samsung                           1928 (0.4%)
   Xilinx                            1885 (0.4%)
   Nuovation System Designs          1840 (0.4%)
   Lyrtech                           1777 (0.4%)
   Embedded Specialties              1654 (0.4%)
   Ericsson                          1649 (0.4%)
   EuroTech                          1325 (0.3%)
   Wind River                        1264 (0.3%)
   Excito Elektronik                 1247 (0.3%)
   ASIX                              1140 (0.2%)
   Custom IDEAS                      1021 (0.2%)
   Sysart Oy                         985 (0.2%)
   Secretlab                         673 (0.1%)
   Openmoko                          610 (0.1%)
   Mercury IMC Ltd.                  566 (0.1%)
   Funky                             467 (0.1%)
   OVRO                              455 (0.1%)
   Micromico                         416 (0.1%)
   Silicon Turnkey Express           389 (0.1%)
   South Pole AB                     382 (0.1%)
   Oce Technologies                  333 (0.1%)
   Sanyo LSI Technology India        264 (0.1%)
   TQ Systems                        258 (0.1%)
   RightHand Technologies            202 (0.0%)
   NEC                               197 (0.0%)
   Transmode Systems                 191 (0.0%)
   NetApp                            167 (0.0%)
   Extreme Engineering Solutions     165 (0.0%)
   Harris Corporation                132 (0.0%)
   Texas Instruments                 113 (0.0%)
   Lab X Technologies                108 (0.0%)
   Terascala                         106 (0.0%)
   ECI Telecom                       98 (0.0%)
   Graeme Russ                       96 (0.0%)
   Mediama Technologies              64 (0.0%)
   Dirk Behme                        59 (0.0%)
   Liebherr                          52 (0.0%)
   Hanscan                           43 (0.0%)
   Xerox                             38 (0.0%)
   Sheldon Instruments               31 (0.0%)
   MagTech Systems                   25 (0.0%)
   Ingenieurbuero Ganssloser         22 (0.0%)
   Advantech                         21 (0.0%)
   BT Group                          20 (0.0%)
   Debian.org                        20 (0.0%)
   e-con Infotech                    16 (0.0%)
   Sergey Kubushyn                   14 (0.0%)
   CSE Semaphore, Inc.               12 (0.0%)
   BuS Elektronik                    10 (0.0%)
   Prodrive                          10 (0.0%)
   Boundary Devices                  9 (0.0%)
   Digi International                9 (0.0%)
   linutronix                        8 (0.0%)
   Reccoware Systems                 6 (0.0%)
   Media Lab                         6 (0.0%)
   Task Sistemas                     6 (0.0%)
   Sakoman Inc.                      4 (0.0%)
   Inoi Oy                           3 (0.0%)
   Juniper Networks                  2 (0.0%)
   scram! e.V.                       2 (0.0%)
   ST Microelectronics               2 (0.0%)
   Bluegiga Technologies             1 (0.0%)
   Evidence S.r.l.                   1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Freescale                         177 (30.5%)
   DENX Software Engineering         134 (23.1%)
   (Unknown)                         90 (15.5%)
   jcrosoft                          40 (6.9%)
   EmCraft Systems                   29 (5.0%)
   Universidad Autonoma de Madrid    15 (2.6%)
   TQ Systems                        12 (2.1%)
   Semihalf Embedded Systems         11 (1.9%)
   Nobuhiro Iwamatsu                 9 (1.6%)
   Atmel                             9 (1.6%)
   Custom IDEAS                      7 (1.2%)
   Analog Devices                    4 (0.7%)
   AMCC                              4 (0.7%)
   TANDBERG                          3 (0.5%)
   Intel                             3 (0.5%)
   ESD Electronics                   2 (0.3%)
   Industrie Dial Face               2 (0.3%)
   Openmoko                          2 (0.3%)
   NetApp                            2 (0.3%)
   Harris Corporation                2 (0.3%)
   Renesas Electronics               1 (0.2%)
   ACM                               1 (0.2%)
   Samsung                           1 (0.2%)
   Wind River                        1 (0.2%)
   Excito Elektronik                 1 (0.2%)
   Secretlab                         1 (0.2%)
   Silicon Turnkey Express           1 (0.2%)
   Sanyo LSI Technology India        1 (0.2%)
   Transmode Systems                 1 (0.2%)
   Texas Instruments                 1 (0.2%)
   Lab X Technologies                1 (0.2%)
   linutronix                        1 (0.2%)
   Reccoware Systems                 1 (0.2%)
   Sakoman Inc.                      1 (0.2%)
   Extricom                          1 (0.2%)
   Feig Electronic                   1 (0.2%)
   General Electric                  1 (0.2%)
   Linux Foundation                  1 (0.2%)
   Novell                            1 (0.2%)
   OpenSDR                           1 (0.2%)
   Psyent                            1 (0.2%)
   Powerwave Technologies            1 (0.2%)
   Barco                             1 (0.2%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         45 (23.6%)
   Freescale                         25 (13.1%)
   DENX Software Engineering         12 (6.3%)
   AMCC                              6 (3.1%)
   Semihalf Embedded Systems         5 (2.6%)
   Atmel                             4 (2.1%)
   Wind River                        4 (2.1%)
   EmCraft Systems                   3 (1.6%)
   Renesas Electronics               3 (1.6%)
   Texas Instruments                 3 (1.6%)
   TQ Systems                        2 (1.0%)
   Custom IDEAS                      2 (1.0%)
   Analog Devices                    2 (1.0%)
   Pengutronix                       2 (1.0%)
   MontaVista                        2 (1.0%)
   Funky                             2 (1.0%)
   jcrosoft                          1 (0.5%)
   Nobuhiro Iwamatsu                 1 (0.5%)
   TANDBERG                          1 (0.5%)
   ESD Electronics                   1 (0.5%)
   Industrie Dial Face               1 (0.5%)
   Openmoko                          1 (0.5%)
   NetApp                            1 (0.5%)
   Harris Corporation                1 (0.5%)
   ACM                               1 (0.5%)
   Samsung                           1 (0.5%)
   Excito Elektronik                 1 (0.5%)
   Secretlab                         1 (0.5%)
   Silicon Turnkey Express           1 (0.5%)
   Sanyo LSI Technology India        1 (0.5%)
   Transmode Systems                 1 (0.5%)
   Lab X Technologies                1 (0.5%)
   linutronix                        1 (0.5%)
   Reccoware Systems                 1 (0.5%)
   Sakoman Inc.                      1 (0.5%)
   Gaisler Research                  1 (0.5%)
   Stelian Pop                       1 (0.5%)
   Matrix Vision                     1 (0.5%)
   ARM                               1 (0.5%)
   Netstal-Maschinen                 1 (0.5%)
   Xilinx                            1 (0.5%)
   Nuovation System Designs          1 (0.5%)
   Lyrtech                           1 (0.5%)
   Embedded Specialties              1 (0.5%)
   Ericsson                          1 (0.5%)
   EuroTech                          1 (0.5%)
   ASIX                              1 (0.5%)
   Sysart Oy                         1 (0.5%)
   Mercury IMC Ltd.                  1 (0.5%)
   OVRO                              1 (0.5%)
   Micromico                         1 (0.5%)
   South Pole AB                     1 (0.5%)
   Oce Technologies                  1 (0.5%)
   RightHand Technologies            1 (0.5%)
   NEC                               1 (0.5%)
   Extreme Engineering Solutions     1 (0.5%)
   Terascala                         1 (0.5%)
   ECI Telecom                       1 (0.5%)
   Graeme Russ                       1 (0.5%)
   Mediama Technologies              1 (0.5%)
   Dirk Behme                        1 (0.5%)
   Liebherr                          1 (0.5%)
   Hanscan                           1 (0.5%)
   Xerox                             1 (0.5%)
   Sheldon Instruments               1 (0.5%)
   MagTech Systems                   1 (0.5%)
   Ingenieurbuero Ganssloser         1 (0.5%)
   Advantech                         1 (0.5%)
   BT Group                          1 (0.5%)
   Debian.org                        1 (0.5%)
   e-con Infotech                    1 (0.5%)
   Sergey Kubushyn                   1 (0.5%)
   CSE Semaphore, Inc.               1 (0.5%)
   BuS Elektronik                    1 (0.5%)
   Prodrive                          1 (0.5%)
   Boundary Devices                  1 (0.5%)
   Digi International                1 (0.5%)
   Media Lab                         1 (0.5%)
   Task Sistemas                     1 (0.5%)
   Inoi Oy                           1 (0.5%)
   Juniper Networks                  1 (0.5%)
   scram! e.V.                       1 (0.5%)
   ST Microelectronics               1 (0.5%)
   Bluegiga Technologies             1 (0.5%)
   Evidence S.r.l.                   1 (0.5%)
   ================================  =====
