:orphan:

Release Statistics for U-Boot v2011.12
======================================

* Processed 1530 changesets from 146 developers

* 34 employers found

* A total of 136501 lines added, 116035 removed (delta 20466)

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

   ================================  =====
   Name                              Count
   ================================  =====
   Wolfgang Denk                     185 (12.1%)
   Marek Vasut                       167 (10.9%)
   Simon Glass                       88 (5.8%)
   Anatolij Gustschin                62 (4.1%)
   Fabio Estevam                     59 (3.9%)
   Kumar Gala                        56 (3.7%)
   Heiko Schocher                    50 (3.3%)
   Stefano Babic                     49 (3.2%)
   Mike Frysinger                    46 (3.0%)
   Joe Hershberger                   31 (2.0%)
   Michal Simek                      27 (1.8%)
   Timur Tabi                        25 (1.6%)
   Igor Grinberg                     24 (1.6%)
   Lei Wen                           24 (1.6%)
   Tom Rini                          23 (1.5%)
   Macpaul Lin                       23 (1.5%)
   Christian Riesch                  22 (1.4%)
   Anton Staaf                       22 (1.4%)
   Stefan Roese                      21 (1.4%)
   Simon Schwarz                     19 (1.2%)
   Aneesh V                          16 (1.0%)
   Graeme Russ                       15 (1.0%)
   Ilya Yanok                        14 (0.9%)
   Sanjeev Premi                     14 (0.9%)
   Jason Hobbs                       14 (0.9%)
   Holger Brunck                     13 (0.8%)
   Gabe Black                        13 (0.8%)
   Ajay Bhargav                      13 (0.8%)
   York Sun                          13 (0.8%)
   Helmut Raiger                     12 (0.8%)
   Wolfgang Grandegger               10 (0.7%)
   Valentin Longchamp                10 (0.7%)
   Stephen Warren                    9 (0.6%)
   Kyle Moffett                      9 (0.6%)
   Łukasz Majewski                   9 (0.6%)
   Jerry Huang                       9 (0.6%)
   Manjunath Hadli                   9 (0.6%)
   Linus Walleij                     9 (0.6%)
   Joachim Foerster                  9 (0.6%)
   Shaohui Xie                       8 (0.5%)
   Sricharan                         8 (0.5%)
   chenhui zhao                      8 (0.5%)
   Dirk Eibach                       7 (0.5%)
   Horst Kronstorfer                 6 (0.4%)
   Matthias Fuchs                    6 (0.4%)
   Thomas Weber                      6 (0.4%)
   Simon Guinot                      6 (0.4%)
   Chandan Nath                      6 (0.4%)
   Nobuhiro Iwamatsu                 6 (0.4%)
   Che-Liang Chiou                   6 (0.4%)
   Poonam Aggrwal                    6 (0.4%)
   Philip Balister                   6 (0.4%)
   stany MARCEL                      6 (0.4%)
   Kim Phillips                      5 (0.3%)
   Daniel Schwierzeck                5 (0.3%)
   Jason Liu                         5 (0.3%)
   Chander Kashyap                   5 (0.3%)
   Sergei Shtylyov                   5 (0.3%)
   David Müller (ELSOFT AG)          4 (0.3%)
   Matthias Weisser                  4 (0.3%)
   Asen Dimov                        4 (0.3%)
   Stefan Herbrechtsmeier            4 (0.3%)
   Steve Sakoman                     4 (0.3%)
   Andy Fleming                      4 (0.3%)
   Zang Roy-R61911                   4 (0.3%)
   Yoshihiro Shimoda                 4 (0.3%)
   Shengzhou Liu                     4 (0.3%)
   Xie Xiaobo                        4 (0.3%)
   Ramneek Mehresh                   4 (0.3%)
   Jason Jin                         4 (0.3%)
   Bastian Ruppert                   4 (0.3%)
   Andreas Bießmann                  3 (0.2%)
   Bernhard Kaindl                   3 (0.2%)
   Vadim Bendebury                   3 (0.2%)
   Gerlando Falauto                  3 (0.2%)
   Michael Jones                     3 (0.2%)
   Ira W. Snyder                     3 (0.2%)
   Alexander Holler                  3 (0.2%)
   Michael Walle                     3 (0.2%)
   Doug Anderson                     3 (0.2%)
   Ricardo Salveti de Araujo         3 (0.2%)
   Haiying Wang                      3 (0.2%)
   Xiangfu Liu                       3 (0.2%)
   Loïc Minier                       3 (0.2%)
   Thierry Reding                    2 (0.1%)
   Tom Warren                        2 (0.1%)
   Sven Schnelle                     2 (0.1%)
   Stefan Kristiansson               2 (0.1%)
   Veli-Pekka Peltola                2 (0.1%)
   Prabhakar Lad                     2 (0.1%)
   Yan-Pai Chen                      2 (0.1%)
   Stelian Pop                       2 (0.1%)
   Andreas Huber                     2 (0.1%)
   Daniel Gorsulowski                2 (0.1%)
   Angus Ainslie                     2 (0.1%)
   Tang Yuantian                     2 (0.1%)
   Laurence Withers                  2 (0.1%)
   Becky Bruce                       2 (0.1%)
   Ruchika Gupta                     2 (0.1%)
   Paul Gortmaker                    2 (0.1%)
   Balaji T K                        2 (0.1%)
   Dipen Dudhat                      2 (0.1%)
   Lauri Hintsala                    1 (0.1%)
   Chris Lalancette                  1 (0.1%)
   Manfred Rudigier                  1 (0.1%)
   Jana Rapava                       1 (0.1%)
   Vincent Palatin                   1 (0.1%)
   Ash Charles                       1 (0.1%)
   Sughosh Ganu                      1 (0.1%)
   Robert Deliën                     1 (0.1%)
   Wolfram Sang                      1 (0.1%)
   Koen Kooi                         1 (0.1%)
   Tim Schendekehl                   1 (0.1%)
   Sandeep Paulraj                   1 (0.1%)
   Mike Partington                   1 (0.1%)
   Gavin Guo                         1 (0.1%)
   Phil Edworthy                     1 (0.1%)
   Jia Hongtao                       1 (0.1%)
   Li Yang                           1 (0.1%)
   Stephan Linz                      1 (0.1%)
   Bertrand Cachet                   1 (0.1%)
   David Wagner                      1 (0.1%)
   Nagabhushana Netagunte            1 (0.1%)
   Jon Medhurst (Tixy)               1 (0.1%)
   Po-Yu Chuang                      1 (0.1%)
   Jens Scharsig                     1 (0.1%)
   Luca Ceresoli                     1 (0.1%)
   Thomas Herzmann                   1 (0.1%)
   Prafulla Wadaskar                 1 (0.1%)
   Ondrej Kupka                      1 (0.1%)
   J. Vijayanand                     1 (0.1%)
   Rob Herring                       1 (0.1%)
   Vladimir Zapolskiy                1 (0.1%)
   Jason Cooper                      1 (0.1%)
   Donggeun Kim                      1 (0.1%)
   Joel A Fernandes                  1 (0.1%)
   Luka Perkov                       1 (0.1%)
   Chunhe Lan                        1 (0.1%)
   Kuldip Giroh                      1 (0.1%)
   Lars Poeschel                     1 (0.1%)
   Fanzc                             1 (0.1%)
   mhench                            1 (0.1%)
   Stefan Bigler                     1 (0.1%)
   Scott McNutt                      1 (0.1%)
   Dave Aldridge                     1 (0.1%)
   Mingkai Hu                        1 (0.1%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Marek Vasut                       58471 (26.9%)
   Mike Frysinger                    27101 (12.5%)
   Wolfgang Denk                     16846 (7.8%)
   Joe Hershberger                   6750 (3.1%)
   Macpaul Lin                       6111 (2.8%)
   Sricharan                         6022 (2.8%)
   Simon Glass                       5706 (2.6%)
   Che-Liang Chiou                   5047 (2.3%)
   Heiko Schocher                    4975 (2.3%)
   Jason Liu                         4332 (2.0%)
   Kumar Gala                        4033 (1.9%)
   Stefano Babic                     3640 (1.7%)
   Łukasz Majewski                   3540 (1.6%)
   York Sun                          3179 (1.5%)
   Paul Gortmaker                    3127 (1.4%)
   Xiangfu Liu                       2804 (1.3%)
   Jason Hobbs                       2434 (1.1%)
   Shengzhou Liu                     2405 (1.1%)
   Kyle Moffett                      2303 (1.1%)
   Li Yang                           2289 (1.1%)
   Gabe Black                        2166 (1.0%)
   Chandan Nath                      2159 (1.0%)
   Ajay Bhargav                      1789 (0.8%)
   Timur Tabi                        1699 (0.8%)
   Dirk Eibach                       1683 (0.8%)
   Poonam Aggrwal                    1605 (0.7%)
   Michael Jones                     1593 (0.7%)
   Helmut Raiger                     1529 (0.7%)
   Dipen Dudhat                      1481 (0.7%)
   Stephen Warren                    1432 (0.7%)
   stany MARCEL                      1382 (0.6%)
   Simon Guinot                      1246 (0.6%)
   Nobuhiro Iwamatsu                 1217 (0.6%)
   Simon Schwarz                     1208 (0.6%)
   Ira W. Snyder                     1129 (0.5%)
   Michal Simek                      1115 (0.5%)
   Lei Wen                           1114 (0.5%)
   Donggeun Kim                      1101 (0.5%)
   Sanjeev Premi                     1046 (0.5%)
   Tim Schendekehl                   1016 (0.5%)
   Tang Yuantian                     967 (0.4%)
   Graeme Russ                       964 (0.4%)
   Fabio Estevam                     817 (0.4%)
   Tom Rini                          781 (0.4%)
   Vadim Bendebury                   728 (0.3%)
   Christian Riesch                  702 (0.3%)
   Jana Rapava                       688 (0.3%)
   Andy Fleming                      684 (0.3%)
   Ilya Yanok                        683 (0.3%)
   Jason Cooper                      566 (0.3%)
   Anatolij Gustschin                551 (0.3%)
   Igor Grinberg                     550 (0.3%)
   Joachim Foerster                  509 (0.2%)
   Anton Staaf                       470 (0.2%)
   Stefan Roese                      465 (0.2%)
   Gavin Guo                         425 (0.2%)
   Manjunath Hadli                   416 (0.2%)
   Wolfgang Grandegger               396 (0.2%)
   Rob Herring                       393 (0.2%)
   Chander Kashyap                   368 (0.2%)
   chenhui zhao                      360 (0.2%)
   Jerry Huang                       291 (0.1%)
   David Wagner                      275 (0.1%)
   Yoshihiro Shimoda                 260 (0.1%)
   Valentin Longchamp                252 (0.1%)
   Nagabhushana Netagunte            246 (0.1%)
   Linus Walleij                     236 (0.1%)
   Mingkai Hu                        235 (0.1%)
   Aneesh V                          233 (0.1%)
   Phil Edworthy                     186 (0.1%)
   Zang Roy-R61911                   179 (0.1%)
   Holger Brunck                     170 (0.1%)
   Becky Bruce                       147 (0.1%)
   Ruchika Gupta                     142 (0.1%)
   Stelian Pop                       140 (0.1%)
   Jason Jin                         124 (0.1%)
   Chris Lalancette                  122 (0.1%)
   Thomas Weber                      118 (0.1%)
   Stefan Herbrechtsmeier            111 (0.1%)
   Bernhard Kaindl                   105 (0.0%)
   Sergei Shtylyov                   94 (0.0%)
   Shaohui Xie                       87 (0.0%)
   Po-Yu Chuang                      84 (0.0%)
   Matthias Weisser                  83 (0.0%)
   Bastian Ruppert                   82 (0.0%)
   David Müller (ELSOFT AG)          65 (0.0%)
   Ricardo Salveti de Araujo         65 (0.0%)
   Tom Warren                        65 (0.0%)
   Ramneek Mehresh                   62 (0.0%)
   Balaji T K                        51 (0.0%)
   Doug Anderson                     50 (0.0%)
   Asen Dimov                        49 (0.0%)
   Xie Xiaobo                        48 (0.0%)
   Matthias Fuchs                    42 (0.0%)
   Gerlando Falauto                  38 (0.0%)
   Daniel Schwierzeck                37 (0.0%)
   Vladimir Zapolskiy                32 (0.0%)
   Haiying Wang                      30 (0.0%)
   mhench                            30 (0.0%)
   Philip Balister                   28 (0.0%)
   Jon Medhurst (Tixy)               26 (0.0%)
   Alexander Holler                  23 (0.0%)
   Horst Kronstorfer                 21 (0.0%)
   Scott McNutt                      21 (0.0%)
   Loïc Minier                       20 (0.0%)
   Andreas Huber                     19 (0.0%)
   Daniel Gorsulowski                15 (0.0%)
   Laurence Withers                  15 (0.0%)
   Fanzc                             15 (0.0%)
   Michael Walle                     13 (0.0%)
   Kim Phillips                      12 (0.0%)
   Andreas Bießmann                  12 (0.0%)
   Yan-Pai Chen                      12 (0.0%)
   Jia Hongtao                       12 (0.0%)
   Dave Aldridge                     10 (0.0%)
   Veli-Pekka Peltola                9 (0.0%)
   Steve Sakoman                     8 (0.0%)
   Luca Ceresoli                     8 (0.0%)
   Angus Ainslie                     7 (0.0%)
   Chunhe Lan                        7 (0.0%)
   Sven Schnelle                     6 (0.0%)
   Sughosh Ganu                      6 (0.0%)
   Stephan Linz                      6 (0.0%)
   Bertrand Cachet                   5 (0.0%)
   Thomas Herzmann                   5 (0.0%)
   Mike Partington                   4 (0.0%)
   Lars Poeschel                     4 (0.0%)
   Ash Charles                       3 (0.0%)
   J. Vijayanand                     3 (0.0%)
   Thierry Reding                    2 (0.0%)
   Stefan Kristiansson               2 (0.0%)
   Prabhakar Lad                     2 (0.0%)
   Jens Scharsig                     2 (0.0%)
   Luka Perkov                       2 (0.0%)
   Lauri Hintsala                    1 (0.0%)
   Manfred Rudigier                  1 (0.0%)
   Vincent Palatin                   1 (0.0%)
   Robert Deliën                     1 (0.0%)
   Wolfram Sang                      1 (0.0%)
   Koen Kooi                         1 (0.0%)
   Sandeep Paulraj                   1 (0.0%)
   Prafulla Wadaskar                 1 (0.0%)
   Ondrej Kupka                      1 (0.0%)
   Joel A Fernandes                  1 (0.0%)
   Kuldip Giroh                      1 (0.0%)
   Stefan Bigler                     1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Mike Frysinger                    26037 (22.4%)
   Marek Vasut                       20905 (18.0%)
   Wolfgang Denk                     9360 (8.1%)
   Paul Gortmaker                    3123 (2.7%)
   stany MARCEL                      1184 (1.0%)
   Stefan Roese                      355 (0.3%)
   Chander Kashyap                   167 (0.1%)
   Yoshihiro Shimoda                 132 (0.1%)
   Thomas Weber                      113 (0.1%)
   Igor Grinberg                     105 (0.1%)
   Jason Jin                         90 (0.1%)
   Anatolij Gustschin                64 (0.1%)
   Po-Yu Chuang                      34 (0.0%)
   Vladimir Zapolskiy                32 (0.0%)
   mhench                            28 (0.0%)
   Jon Medhurst (Tixy)               26 (0.0%)
   Alexander Holler                  20 (0.0%)
   Matthias Fuchs                    9 (0.0%)
   Doug Anderson                     7 (0.0%)
   Sughosh Ganu                      6 (0.0%)
   Philip Balister                   5 (0.0%)
   Kim Phillips                      4 (0.0%)
   Christian Riesch                  3 (0.0%)
   Andreas Bießmann                  2 (0.0%)
   Loïc Minier                       1 (0.0%)
   Laurence Withers                  1 (0.0%)
   Mike Partington                   1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Sandeep Paulraj                   131 (28.7%)
   Kumar Gala                        83 (18.2%)
   Kim Phillips                      35 (7.7%)
   Anatolij Gustschin                20 (4.4%)
   Scott Wood                        18 (3.9%)
   Tom Warren                        14 (3.1%)
   Holger Brunck                     13 (2.9%)
   Stefan Roese                      11 (2.4%)
   Kyungmin Park                     11 (2.4%)
   Minkyu Kang                       10 (2.2%)
   Mike Frysinger                    7 (1.5%)
   Nobuhiro Iwamatsu                 7 (1.5%)
   Prafulla Wadaskar                 5 (1.1%)
   Valentin Longchamp                5 (1.1%)
   Thomas Chou                       4 (0.9%)
   Tom Rini                          4 (0.9%)
   Stefano Babic                     4 (0.9%)
   Wolfgang Denk                     3 (0.7%)
   Sudhakar Rajashekhara             3 (0.7%)
   Shinya Kuribayashi                3 (0.7%)
   Ioana Radulescu                   3 (0.7%)
   York Sun                          3 (0.7%)
   Lei Xu                            2 (0.4%)
   Prabhakar Kushwaha                2 (0.4%)
   Matthew McClintock                2 (0.4%)
   Kuldip Giroh                      2 (0.4%)
   Shaohui Xie                       2 (0.4%)
   Xie Xiaobo                        2 (0.4%)
   Ramneek Mehresh                   2 (0.4%)
   Aneesh V                          2 (0.4%)
   chenhui zhao                      2 (0.4%)
   Mingkai Hu                        2 (0.4%)
   Andy Fleming                      2 (0.4%)
   Timur Tabi                        2 (0.4%)
   Igor Grinberg                     1 (0.2%)
   Haiying Wang                      1 (0.2%)
   Marek Szyprowski                  1 (0.2%)
   Remy Bohmer                       1 (0.2%)
   Dirk Behme                        1 (0.2%)
   Manjunathappa, Prakash            1 (0.2%)
   Uwe Kleine-König                  1 (0.2%)
   Gong Chen                         1 (0.2%)
   Terry Lv                          1 (0.2%)
   Axel Lin                          1 (0.2%)
   Paul Mundt                        1 (0.2%)
   Aaron Williams                    1 (0.2%)
   Greentime Hu                      1 (0.2%)
   Minghuan Lian                     1 (0.2%)
   Santosh Shukla                    1 (0.2%)
   Ebony Zhu                         1 (0.2%)
   Dave Liu                          1 (0.2%)
   Dai Haruki                        1 (0.2%)
   Bhaskar Upadhaya                  1 (0.2%)
   Zhao Chenhui                      1 (0.2%)
   Priyanka Jain                     1 (0.2%)
   Akhil Goyal                       1 (0.2%)
   Sergei Shtylyov                   1 (0.2%)
   Bastian Ruppert                   1 (0.2%)
   Zang Roy-R61911                   1 (0.2%)
   Graeme Russ                       1 (0.2%)
   Jerry Huang                       1 (0.2%)
   Tang Yuantian                     1 (0.2%)
   Dipen Dudhat                      1 (0.2%)
   Poonam Aggrwal                    1 (0.2%)
   Li Yang                           1 (0.2%)
   Jason Hobbs                       1 (0.2%)
   Łukasz Majewski                   1 (0.2%)
   Simon Glass                       1 (0.2%)
   Macpaul Lin                       1 (0.2%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Guennadi Liakhovetski             1 (50.0%)
   Anton Staaf                       1 (50.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Simon Glass                       13 (17.6%)
   Stefano Babic                     8 (10.8%)
   Tom Warren                        6 (8.1%)
   Wolfgang Denk                     5 (6.8%)
   Steve Sakoman                     4 (5.4%)
   Heiko Schocher                    4 (5.4%)
   Anatolij Gustschin                3 (4.1%)
   Macpaul Lin                       3 (4.1%)
   Matthias Weisser                  3 (4.1%)
   Thomas Chou                       2 (2.7%)
   Stephen Warren                    2 (2.7%)
   Jason Liu                         2 (2.7%)
   Anton Staaf                       1 (1.4%)
   Stefan Roese                      1 (1.4%)
   Mike Frysinger                    1 (1.4%)
   Tom Rini                          1 (1.4%)
   Dirk Behme                        1 (1.4%)
   Graeme Russ                       1 (1.4%)
   Marek Vasut                       1 (1.4%)
   Thomas Weber                      1 (1.4%)
   Matthias Fuchs                    1 (1.4%)
   Stefan Kristiansson               1 (1.4%)
   Koen Kooi                         1 (1.4%)
   Matt Ranostay                     1 (1.4%)
   Matt Porter                       1 (1.4%)
   Thomas Petazzoni                  1 (1.4%)
   Lan Chunhe                        1 (1.4%)
   Ash Charles                       1 (1.4%)
   Sanjeev Premi                     1 (1.4%)
   Michal Simek                      1 (1.4%)
   Kyle Moffett                      1 (1.4%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Wolfgang Denk                     10 (13.5%)
   Simon Glass                       8 (10.8%)
   Stephen Warren                    8 (10.8%)
   Marek Vasut                       7 (9.5%)
   Tom Rini                          5 (6.8%)
   Stefano Babic                     4 (5.4%)
   Anatolij Gustschin                3 (4.1%)
   Mike Frysinger                    3 (4.1%)
   Philip Balister                   3 (4.1%)
   Macpaul Lin                       2 (2.7%)
   Thierry Reding                    2 (2.7%)
   Tom Warren                        1 (1.4%)
   Steve Sakoman                     1 (1.4%)
   Matthias Weisser                  1 (1.4%)
   Jason Liu                         1 (1.4%)
   Anton Staaf                       1 (1.4%)
   Graeme Russ                       1 (1.4%)
   Ash Charles                       1 (1.4%)
   Igor Grinberg                     1 (1.4%)
   Tang Yuantian                     1 (1.4%)
   Po-Yu Chuang                      1 (1.4%)
   Christian Riesch                  1 (1.4%)
   Stephan Linz                      1 (1.4%)
   Ilya Yanok                        1 (1.4%)
   David Wagner                      1 (1.4%)
   Joachim Foerster                  1 (1.4%)
   Fabio Estevam                     1 (1.4%)
   Lei Wen                           1 (1.4%)
   Simon Schwarz                     1 (1.4%)
   Dirk Eibach                       1 (1.4%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Mike Frysinger                    1 (20.0%)
   Rockefeller                       1 (20.0%)
   Shawn Bai                         1 (20.0%)
   Roland Kletzing                   1 (20.0%)
   Michael Jones                     1 (20.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Wolfgang Denk                     1 (20.0%)
   Anatolij Gustschin                1 (20.0%)
   Igor Grinberg                     1 (20.0%)
   Kim Phillips                      1 (20.0%)
   Aneesh V                          1 (20.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   DENX Software Engineering         544 (35.6%)
   Freescale                         219 (14.3%)
   (Unknown)                         218 (14.2%)
   Google, Inc.                      136 (8.9%)
   Texas Instruments                 58 (3.8%)
   Analog Devices                    46 (3.0%)
   National Instruments              31 (2.0%)
   Keymile                           29 (1.9%)
   Linaro                            28 (1.8%)
   Xilinx                            27 (1.8%)
   CompuLab                          24 (1.6%)
   Konsulko Group                    23 (1.5%)
   Marvell                           18 (1.2%)
   Calxeda                           15 (1.0%)
   Graeme Russ                       15 (1.0%)
   EmCraft Systems                   14 (0.9%)
   Renesas Electronics               11 (0.7%)
   NVidia                            10 (0.7%)
   Samsung                           10 (0.7%)
   Boeing                            9 (0.6%)
   ESD Electronics                   8 (0.5%)
   Guntermann & Drunck               7 (0.5%)
   MontaVista                        5 (0.3%)
   Ronetix                           4 (0.3%)
   Sakoman Inc.                      4 (0.3%)
   Bluegiga Technologies             3 (0.2%)
   Matrix Vision                     3 (0.2%)
   OVRO                              3 (0.2%)
   Wind River                        2 (0.1%)
   Stelian Pop                       2 (0.1%)
   Free Electrons                    1 (0.1%)
   OpenSDR                           1 (0.1%)
   Pengutronix                       1 (0.1%)
   Psyent                            1 (0.1%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   DENX Software Engineering         85344 (39.3%)
   Analog Devices                    27101 (12.5%)
   (Unknown)                         21422 (9.9%)
   Freescale                         20694 (9.5%)
   Google, Inc.                      14168 (6.5%)
   Texas Instruments                 10175 (4.7%)
   National Instruments              6750 (3.1%)
   Linaro                            5054 (2.3%)
   Samsung                           4641 (2.1%)
   Wind River                        3127 (1.4%)
   Calxeda                           2827 (1.3%)
   Boeing                            2303 (1.1%)
   Guntermann & Drunck               1683 (0.8%)
   Renesas Electronics               1663 (0.8%)
   Matrix Vision                     1593 (0.7%)
   NVidia                            1495 (0.7%)
   OVRO                              1129 (0.5%)
   Xilinx                            1115 (0.5%)
   Graeme Russ                       964 (0.4%)
   Marvell                           936 (0.4%)
   Konsulko Group                    781 (0.4%)
   EmCraft Systems                   683 (0.3%)
   CompuLab                          550 (0.3%)
   Keymile                           480 (0.2%)
   Free Electrons                    275 (0.1%)
   Stelian Pop                       140 (0.1%)
   MontaVista                        94 (0.0%)
   ESD Electronics                   57 (0.0%)
   Ronetix                           49 (0.0%)
   Psyent                            21 (0.0%)
   OpenSDR                           18 (0.0%)
   Bluegiga Technologies             10 (0.0%)
   Sakoman Inc.                      8 (0.0%)
   Pengutronix                       1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Freescale                         182 (39.9%)
   Texas Instruments                 141 (30.9%)
   DENX Software Engineering         38 (8.3%)
   Samsung                           23 (5.0%)
   Keymile                           18 (3.9%)
   (Unknown)                         14 (3.1%)
   NVidia                            14 (3.1%)
   Analog Devices                    7 (1.5%)
   Nobuhiro Iwamatsu                 7 (1.5%)
   Marvell                           5 (1.1%)
   Google, Inc.                      1 (0.2%)
   Calxeda                           1 (0.2%)
   Graeme Russ                       1 (0.2%)
   CompuLab                          1 (0.2%)
   MontaVista                        1 (0.2%)
   Pengutronix                       1 (0.2%)
   Oce Technologies                  1 (0.2%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         55 (36.4%)
   Freescale                         25 (16.6%)
   Texas Instruments                 9 (6.0%)
   DENX Software Engineering         7 (4.6%)
   Google, Inc.                      7 (4.6%)
   Linaro                            7 (4.6%)
   Keymile                           6 (4.0%)
   Renesas Electronics               3 (2.0%)
   Samsung                           2 (1.3%)
   NVidia                            2 (1.3%)
   Marvell                           2 (1.3%)
   Calxeda                           2 (1.3%)
   ESD Electronics                   2 (1.3%)
   Bluegiga Technologies             2 (1.3%)
   Analog Devices                    1 (0.7%)
   Graeme Russ                       1 (0.7%)
   CompuLab                          1 (0.7%)
   MontaVista                        1 (0.7%)
   Pengutronix                       1 (0.7%)
   National Instruments              1 (0.7%)
   Wind River                        1 (0.7%)
   Boeing                            1 (0.7%)
   Guntermann & Drunck               1 (0.7%)
   Matrix Vision                     1 (0.7%)
   OVRO                              1 (0.7%)
   Xilinx                            1 (0.7%)
   Konsulko Group                    1 (0.7%)
   EmCraft Systems                   1 (0.7%)
   Free Electrons                    1 (0.7%)
   Stelian Pop                       1 (0.7%)
   Ronetix                           1 (0.7%)
   Psyent                            1 (0.7%)
   OpenSDR                           1 (0.7%)
   Sakoman Inc.                      1 (0.7%)
   ================================  =====
