:orphan:

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

* Processed 980 changesets from 154 developers

* 31 employers found

* A total of 68855 lines added, 50005 removed (delta 18850)

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

   ================================  =====
   Name                              Count
   ================================  =====
   Masahiro Yamada                   127 (13.0%)
   Nobuhiro Iwamatsu                 50 (5.1%)
   Fabio Estevam                     43 (4.4%)
   Tom Rini                          34 (3.5%)
   Jagan Teki                        31 (3.2%)
   Paul Burton                       24 (2.4%)
   Simon Glass                       22 (2.2%)
   Andreas Bießmann                  22 (2.2%)
   Troy Kisky                        21 (2.1%)
   Bo Shen                           19 (1.9%)
   Łukasz Majewski                   18 (1.8%)
   Heiko Schocher                    18 (1.8%)
   Jagannadha Sutradharudu Teki      17 (1.7%)
   Lokesh Vutla                      17 (1.7%)
   Nikita Kiryanov                   16 (1.6%)
   Prabhakar Kushwaha                16 (1.6%)
   Rob Herring                       16 (1.6%)
   Marek Vasut                       15 (1.5%)
   Piotr Wilczek                     13 (1.3%)
   Rajeshwari S Shinde               13 (1.3%)
   Shengzhou Liu                     13 (1.3%)
   Dan Murphy                        12 (1.2%)
   Roger Quadros                     11 (1.1%)
   Valentin Longchamp                11 (1.1%)
   Alexey Brodkin                    10 (1.0%)
   York Sun                          10 (1.0%)
   Stefan Roese                      10 (1.0%)
   Sonic Zhang                       10 (1.0%)
   Claudiu Manoil                    10 (1.0%)
   Przemyslaw Marczak                9 (0.9%)
   Kuo-Jung Su                       9 (0.9%)
   Eric Nelson                       9 (0.9%)
   Otavio Salvador                   8 (0.8%)
   Shaohui Xie                       8 (0.8%)
   Priyanka Jain                     8 (0.8%)
   Vivek Gautam                      8 (0.8%)
   Albert ARIBAUD                    7 (0.7%)
   Miao Yan                          7 (0.7%)
   David Feng                        7 (0.7%)
   Luka Perkov                       7 (0.7%)
   Stefano Babic                     7 (0.7%)
   Igor Grinberg                     7 (0.7%)
   Axel Lin                          6 (0.6%)
   Thierry Reding                    6 (0.6%)
   Jaehoon Chung                     5 (0.5%)
   Sergei Ianovich                   5 (0.5%)
   pekon gupta                       5 (0.5%)
   Giuseppe Pagano                   5 (0.5%)
   Po Liu                            5 (0.5%)
   Zhao Qiang                        5 (0.5%)
   Wu, Josh                          5 (0.5%)
   Stephen Warren                    4 (0.4%)
   Jeroen Hofstee                    4 (0.4%)
   Minkyu Kang                       4 (0.4%)
   Scott Wood                        4 (0.4%)
   Alban Bedel                       4 (0.4%)
   Guilherme Maciel Ferreira         4 (0.4%)
   Michal Simek                      4 (0.4%)
   Jens Scharsig (BuS Elektronik)    4 (0.4%)
   SRICHARAN R                       4 (0.4%)
   ramneek mehresh                   4 (0.4%)
   Haijun.Zhang                      4 (0.4%)
   Liu Ying                          3 (0.3%)
   Chin Liang See                    3 (0.3%)
   Naveen Krishna Chatradhi          3 (0.3%)
   Yoshihiro Shimoda                 3 (0.3%)
   Mike Frysinger                    3 (0.3%)
   Ilya Ledvich                      3 (0.3%)
   Andrew Ruder                      3 (0.3%)
   Laurentiu TUDOR                   3 (0.3%)
   Egbert Eich                       3 (0.3%)
   Thomas Weber                      3 (0.3%)
   trem                              3 (0.3%)
   Ying Zhang                        3 (0.3%)
   Andre Heider                      2 (0.2%)
   Ionut Nicu                        2 (0.2%)
   Ma Haijun                         2 (0.2%)
   Bhupesh Sharma                    2 (0.2%)
   Pierre Aubert                     2 (0.2%)
   Darwin Rambo                      2 (0.2%)
   Lubomir Popov                     2 (0.2%)
   Poddar, Sourav                    2 (0.2%)
   Sekhar Nori                       2 (0.2%)
   Vladimir Zapolskiy                2 (0.2%)
   Soren Brinkmann                   2 (0.2%)
   Mateusz Kulikowski                2 (0.2%)
   Michael Trimarchi                 2 (0.2%)
   Viktar Palstsiuk                  2 (0.2%)
   Oleg Kosheliev                    2 (0.2%)
   Wolfgang Denk                     2 (0.2%)
   David Dueck                       2 (0.2%)
   Gabor Juhos                       2 (0.2%)
   Anatolij Gustschin                2 (0.2%)
   Suriyan Ramasami                  2 (0.2%)
   Mark Langsdorf                    2 (0.2%)
   Javier Martinez Canillas          2 (0.2%)
   Julius Werner                     2 (0.2%)
   Charles Manning                   1 (0.1%)
   Robert Nelson                     1 (0.1%)
   Ezequiel Garcia                   1 (0.1%)
   Andrew Gabbasov                   1 (0.1%)
   Antonios Vamporakis               1 (0.1%)
   Inderpal Singh                    1 (0.1%)
   Chander Kashyap                   1 (0.1%)
   Christian Gmeiner                 1 (0.1%)
   John Weber                        1 (0.1%)
   Hisashi Nakamura                  1 (0.1%)
   Siva Durga Prasad Paladugu        1 (0.1%)
   Markus Niebel                     1 (0.1%)
   Che-Liang Chiou                   1 (0.1%)
   Henrik Nordström                  1 (0.1%)
   Lad, Prabhakar                    1 (0.1%)
   Mugunthan V N                     1 (0.1%)
   Holger Brunck                     1 (0.1%)
   Karlheinz Jerg                    1 (0.1%)
   Sergey Alyoshin                   1 (0.1%)
   Yen Lin                           1 (0.1%)
   Jim Lin                           1 (0.1%)
   Vidya Sagar                       1 (0.1%)
   Jimmy Zhang                       1 (0.1%)
   Frank Li                          1 (0.1%)
   Stany MARCEL                      1 (0.1%)
   Kees Jongenburger                 1 (0.1%)
   Yegor Yefremov                    1 (0.1%)
   Tapani Utriainen                  1 (0.1%)
   Ian Campbell                      1 (0.1%)
   Roger Meier                       1 (0.1%)
   Zang Roy-R61911                   1 (0.1%)
   Dave Liu                          1 (0.1%)
   Vladimir Koutny                   1 (0.1%)
   Hardik Patel                      1 (0.1%)
   Matt Porter                       1 (0.1%)
   Lars Poeschel                     1 (0.1%)
   Tang Yuantian                     1 (0.1%)
   Srikanth Thokala                  1 (0.1%)
   Rojhalat Ibrahim                  1 (0.1%)
   Chunhe Lan                        1 (0.1%)
   Arpit Goel                        1 (0.1%)
   Sascha Silbe                      1 (0.1%)
   Stephan Bauroth                   1 (0.1%)
   rockly                            1 (0.1%)
   Daniel Schwierzeck                1 (0.1%)
   Michael Heimpold                  1 (0.1%)
   Samuel Egli                       1 (0.1%)
   Andrew Bradford                   1 (0.1%)
   Tim Harvey                        1 (0.1%)
   jason                             1 (0.1%)
   Radhey Shyam Pandey               1 (0.1%)
   Steven Miao                       1 (0.1%)
   Minal Shah                        1 (0.1%)
   Christoph G. Baumann              1 (0.1%)
   Oliver Metz                       1 (0.1%)
   Mateusz Zalega                    1 (0.1%)
   Michael Burr                      1 (0.1%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Masahiro Yamada                   25093 (24.7%)
   Nobuhiro Iwamatsu                 8890 (8.8%)
   Eric Nelson                       5909 (5.8%)
   Rajeshwari S Shinde               5438 (5.4%)
   Vivek Gautam                      4654 (4.6%)
   Tom Rini                          4245 (4.2%)
   Shengzhou Liu                     3428 (3.4%)
   Priyanka Jain                     2799 (2.8%)
   David Feng                        2200 (2.2%)
   Prabhakar Kushwaha                1977 (1.9%)
   Rob Herring                       1811 (1.8%)
   Heiko Schocher                    1630 (1.6%)
   Fabio Estevam                     1491 (1.5%)
   Valentin Longchamp                1405 (1.4%)
   Yoshihiro Shimoda                 1377 (1.4%)
   Łukasz Majewski                   1372 (1.4%)
   Simon Glass                       1340 (1.3%)
   Albert ARIBAUD                    1211 (1.2%)
   Paul Burton                       1184 (1.2%)
   Lokesh Vutla                      1177 (1.2%)
   Stefan Roese                      1055 (1.0%)
   York Sun                          1029 (1.0%)
   Wolfgang Denk                     994 (1.0%)
   Andreas Bießmann                  987 (1.0%)
   Naveen Krishna Chatradhi          922 (0.9%)
   Jagannadha Sutradharudu Teki      900 (0.9%)
   Dan Murphy                        898 (0.9%)
   Mike Frysinger                    895 (0.9%)
   Guilherme Maciel Ferreira         863 (0.9%)
   Tapani Utriainen                  841 (0.8%)
   Kuo-Jung Su                       816 (0.8%)
   Ilya Ledvich                      689 (0.7%)
   Marek Vasut                       684 (0.7%)
   Bo Shen                           668 (0.7%)
   Alban Bedel                       664 (0.7%)
   Jagan Teki                        595 (0.6%)
   Troy Kisky                        589 (0.6%)
   Roger Quadros                     514 (0.5%)
   Nikita Kiryanov                   488 (0.5%)
   Chin Liang See                    476 (0.5%)
   Giuseppe Pagano                   435 (0.4%)
   Przemyslaw Marczak                419 (0.4%)
   Piotr Wilczek                     346 (0.3%)
   pekon gupta                       346 (0.3%)
   Mateusz Kulikowski                333 (0.3%)
   Claudiu Manoil                    320 (0.3%)
   SRICHARAN R                       308 (0.3%)
   Samuel Egli                       305 (0.3%)
   Ying Zhang                        298 (0.3%)
   Zhao Qiang                        273 (0.3%)
   Viktar Palstsiuk                  262 (0.3%)
   Scott Wood                        232 (0.2%)
   Henrik Nordström                  223 (0.2%)
   Miao Yan                          215 (0.2%)
   Igor Grinberg                     155 (0.2%)
   trem                              153 (0.2%)
   Mateusz Zalega                    138 (0.1%)
   Stefano Babic                     112 (0.1%)
   Vladimir Zapolskiy                106 (0.1%)
   Oleg Kosheliev                    106 (0.1%)
   Stephen Warren                    105 (0.1%)
   Sekhar Nori                       103 (0.1%)
   Otavio Salvador                   96 (0.1%)
   Alexey Brodkin                    95 (0.1%)
   Thierry Reding                    84 (0.1%)
   ramneek mehresh                   82 (0.1%)
   Sonic Zhang                       73 (0.1%)
   Shaohui Xie                       68 (0.1%)
   Arpit Goel                        68 (0.1%)
   Hardik Patel                      66 (0.1%)
   Haijun.Zhang                      59 (0.1%)
   Jimmy Zhang                       59 (0.1%)
   Chander Kashyap                   53 (0.1%)
   Srikanth Thokala                  53 (0.1%)
   Luka Perkov                       50 (0.0%)
   Sergei Ianovich                   49 (0.0%)
   Lars Poeschel                     49 (0.0%)
   Axel Lin                          48 (0.0%)
   Pierre Aubert                     47 (0.0%)
   Markus Niebel                     44 (0.0%)
   Po Liu                            39 (0.0%)
   Yegor Yefremov                    38 (0.0%)
   Rojhalat Ibrahim                  38 (0.0%)
   Michal Simek                      37 (0.0%)
   Andrew Ruder                      36 (0.0%)
   Julius Werner                     34 (0.0%)
   Wu, Josh                          31 (0.0%)
   Laurentiu TUDOR                   31 (0.0%)
   Egbert Eich                       31 (0.0%)
   Jaehoon Chung                     30 (0.0%)
   Ma Haijun                         29 (0.0%)
   Sergey Alyoshin                   28 (0.0%)
   Inderpal Singh                    27 (0.0%)
   Steven Miao                       21 (0.0%)
   Darwin Rambo                      20 (0.0%)
   Suriyan Ramasami                  16 (0.0%)
   Oliver Metz                       15 (0.0%)
   Yen Lin                           13 (0.0%)
   Christoph G. Baumann              13 (0.0%)
   Thomas Weber                      12 (0.0%)
   Andre Heider                      12 (0.0%)
   Jens Scharsig (BuS Elektronik)    11 (0.0%)
   Mark Langsdorf                    11 (0.0%)
   Karlheinz Jerg                    11 (0.0%)
   John Weber                        10 (0.0%)
   Minal Shah                        10 (0.0%)
   Minkyu Kang                       9 (0.0%)
   Lubomir Popov                     9 (0.0%)
   Anatolij Gustschin                9 (0.0%)
   Soren Brinkmann                   8 (0.0%)
   Zang Roy-R61911                   8 (0.0%)
   Tim Harvey                        8 (0.0%)
   Jeroen Hofstee                    7 (0.0%)
   Poddar, Sourav                    7 (0.0%)
   Roger Meier                       7 (0.0%)
   Michael Burr                      7 (0.0%)
   Bhupesh Sharma                    6 (0.0%)
   Javier Martinez Canillas          6 (0.0%)
   Michael Trimarchi                 5 (0.0%)
   David Dueck                       5 (0.0%)
   Gabor Juhos                       5 (0.0%)
   Andrew Bradford                   5 (0.0%)
   Antonios Vamporakis               4 (0.0%)
   Mugunthan V N                     4 (0.0%)
   Kees Jongenburger                 4 (0.0%)
   Dave Liu                          4 (0.0%)
   Liu Ying                          3 (0.0%)
   Ionut Nicu                        3 (0.0%)
   Che-Liang Chiou                   3 (0.0%)
   Stany MARCEL                      3 (0.0%)
   Sascha Silbe                      3 (0.0%)
   Robert Nelson                     2 (0.0%)
   Ezequiel Garcia                   2 (0.0%)
   Andrew Gabbasov                   2 (0.0%)
   Christian Gmeiner                 2 (0.0%)
   Hisashi Nakamura                  2 (0.0%)
   Siva Durga Prasad Paladugu        2 (0.0%)
   Jim Lin                           2 (0.0%)
   Vidya Sagar                       2 (0.0%)
   Frank Li                          2 (0.0%)
   Tang Yuantian                     2 (0.0%)
   Stephan Bauroth                   2 (0.0%)
   Daniel Schwierzeck                2 (0.0%)
   Michael Heimpold                  2 (0.0%)
   jason                             2 (0.0%)
   Radhey Shyam Pandey               2 (0.0%)
   Charles Manning                   1 (0.0%)
   Lad, Prabhakar                    1 (0.0%)
   Holger Brunck                     1 (0.0%)
   Ian Campbell                      1 (0.0%)
   Vladimir Koutny                   1 (0.0%)
   Matt Porter                       1 (0.0%)
   Chunhe Lan                        1 (0.0%)
   rockly                            1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Masahiro Yamada                   20766 (41.5%)
   Tom Rini                          3933 (7.9%)
   Rob Herring                       1586 (3.2%)
   Eric Nelson                       1163 (2.3%)
   Wolfgang Denk                     986 (2.0%)
   Albert ARIBAUD                    945 (1.9%)
   Stefan Roese                      570 (1.1%)
   Vladimir Zapolskiy                100 (0.2%)
   Luka Perkov                       13 (0.0%)
   Axel Lin                          8 (0.0%)
   Soren Brinkmann                   8 (0.0%)
   Sergei Ianovich                   7 (0.0%)
   Jens Scharsig (BuS Elektronik)    7 (0.0%)
   Yen Lin                           5 (0.0%)
   Michael Trimarchi                 3 (0.0%)
   Egbert Eich                       2 (0.0%)
   Che-Liang Chiou                   2 (0.0%)
   Radhey Shyam Pandey               2 (0.0%)
   Charles Manning                   1 (0.0%)
   Lad, Prabhakar                    1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Jagannadha Sutradharudu Teki      34 (14.5%)
   Minkyu Kang                       26 (11.1%)
   Andreas Bießmann                  25 (10.6%)
   Kyungmin Park                     14 (6.0%)
   Simon Glass                       11 (4.7%)
   Hisashi Nakamura                  9 (3.8%)
   Tom Warren                        9 (3.8%)
   Akshay Saraswat                   7 (3.0%)
   Igor Grinberg                     6 (2.6%)
   Tom Rini                          5 (2.1%)
   Poonam Aggrwal                    5 (2.1%)
   Sonic Zhang                       5 (2.1%)
   Michal Simek                      5 (2.1%)
   Nobuhiro Iwamatsu                 5 (2.1%)
   Kouei Abe                         4 (1.7%)
   Scott Wood                        4 (1.7%)
   Anson Huang                       3 (1.3%)
   Vadim Bendebury                   3 (1.3%)
   Vikas C Sajjan                    3 (1.3%)
   David Feng                        3 (1.3%)
   Bhupesh Sharma                    2 (0.9%)
   Mathias Rulf                      2 (0.9%)
   Jon Nettleton                     2 (0.9%)
   Jason Liu                         2 (0.9%)
   Alim Akhtar                       2 (0.9%)
   Ryo Kataoka                       2 (0.9%)
   Anatolij Gustschin                2 (0.9%)
   Roger Meier                       2 (0.9%)
   Shaohui Xie                       2 (0.9%)
   Lokesh Vutla                      2 (0.9%)
   Naveen Krishna Chatradhi          2 (0.9%)
   Prabhakar Kushwaha                2 (0.9%)
   Vivek Gautam                      2 (0.9%)
   Stefan Roese                      1 (0.4%)
   Daniel Schwierzeck                1 (0.4%)
   Holger Brunck                     1 (0.4%)
   Måns Rullgård                     1 (0.4%)
   Rabeeh Khoury                     1 (0.4%)
   Boris Schmidt                     1 (0.4%)
   Tom Wai-Hong Tam                  1 (0.4%)
   Rockly                            1 (0.4%)
   Their Name                        1 (0.4%)
   Pascal Bach                       1 (0.4%)
   Jason Jin                         1 (0.4%)
   Xie Shaohui-B21989                1 (0.4%)
   Stefan Bigler                     1 (0.4%)
   R. Chandrasekar                   1 (0.4%)
   Zang Roy-R61911                   1 (0.4%)
   Julius Werner                     1 (0.4%)
   Inderpal Singh                    1 (0.4%)
   Chander Kashyap                   1 (0.4%)
   Thierry Reding                    1 (0.4%)
   Otavio Salvador                   1 (0.4%)
   Stephen Warren                    1 (0.4%)
   Heiko Schocher                    1 (0.4%)
   Priyanka Jain                     1 (0.4%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Jagannadha Sutradharudu Teki      9 (20.0%)
   Hung-ying Tyan                    6 (13.3%)
   Simon Glass                       5 (11.1%)
   Fabio Estevam                     5 (11.1%)
   Stefan Roese                      4 (8.9%)
   Benoît Thébaudeau                 4 (8.9%)
   Heiko Schocher                    3 (6.7%)
   Tom Warren                        1 (2.2%)
   Naveen Krishna Chatradhi          1 (2.2%)
   Stephen Warren                    1 (2.2%)
   Che-Liang Chiou                   1 (2.2%)
   Tim Kryger                        1 (2.2%)
   Steve Rae                         1 (2.2%)
   Julian Scheel                     1 (2.2%)
   Andre Heider                      1 (2.2%)
   Łukasz Majewski                   1 (2.2%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Nikita Kiryanov                   3 (10.0%)
   Fabio Estevam                     2 (6.7%)
   Stephen Warren                    2 (6.7%)
   Łukasz Majewski                   2 (6.7%)
   Jens Scharsig (BuS Elektronik)    2 (6.7%)
   Yebio Mesfin                      2 (6.7%)
   Bo Shen                           2 (6.7%)
   Ilya Ledvich                      2 (6.7%)
   Stefan Roese                      1 (3.3%)
   Naveen Krishna Chatradhi          1 (3.3%)
   Che-Liang Chiou                   1 (3.3%)
   Tom Rini                          1 (3.3%)
   Michal Simek                      1 (3.3%)
   Eric Nelson                       1 (3.3%)
   Matt Porter                       1 (3.3%)
   Thomas Petazzoni                  1 (3.3%)
   Ryan Barnett                      1 (3.3%)
   Jaehoon Chung                     1 (3.3%)
   Lubomir Popov                     1 (3.3%)
   Piotr Wilczek                     1 (3.3%)
   Rajeshwari S Shinde               1 (3.3%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Igor Grinberg                     5 (16.7%)
   Heiko Schocher                    4 (13.3%)
   Nikita Kiryanov                   2 (6.7%)
   Andreas Bießmann                  2 (6.7%)
   Poddar, Sourav                    2 (6.7%)
   Giuseppe Pagano                   2 (6.7%)
   Fabio Estevam                     1 (3.3%)
   Bo Shen                           1 (3.3%)
   Che-Liang Chiou                   1 (3.3%)
   Tom Rini                          1 (3.3%)
   Piotr Wilczek                     1 (3.3%)
   Albert ARIBAUD                    1 (3.3%)
   Axel Lin                          1 (3.3%)
   Egbert Eich                       1 (3.3%)
   Jim Lin                           1 (3.3%)
   Haijun.Zhang                      1 (3.3%)
   Alexey Brodkin                    1 (3.3%)
   pekon gupta                       1 (3.3%)
   Alban Bedel                       1 (3.3%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Tomi Valkeinen                    3 (16.7%)
   Otavio Salvador                   2 (11.1%)
   Robin Gong                        2 (11.1%)
   Stefan Roese                      1 (5.6%)
   Andre Heider                      1 (5.6%)
   Ian Campbell                      1 (5.6%)
   Alexey Smishlayev                 1 (5.6%)
   Nishanth Menon                    1 (5.6%)
   Rajendran, Vinothkumar            1 (5.6%)
   Chao Xu                           1 (5.6%)
   Griffis, Brad                     1 (5.6%)
   Pavel Nakonechny                  1 (5.6%)
   Sven Schwermer                    1 (5.6%)
   Pierre Aubert                     1 (5.6%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Lokesh Vutla                      4 (22.2%)
   Roger Quadros                     3 (16.7%)
   Fabio Estevam                     2 (11.1%)
   Liu Ying                          2 (11.1%)
   Heiko Schocher                    1 (5.6%)
   Andreas Bießmann                  1 (5.6%)
   Tom Rini                          1 (5.6%)
   pekon gupta                       1 (5.6%)
   Stephen Warren                    1 (5.6%)
   Michal Simek                      1 (5.6%)
   Rob Herring                       1 (5.6%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         165 (16.8%)
   Freescale                         147 (15.0%)
   Socionext Inc.                    127 (13.0%)
   Samsung                           74 (7.6%)
   Texas Instruments                 57 (5.8%)
   DENX Software Engineering         54 (5.5%)
   Xilinx                            53 (5.4%)
   Renesas Electronics               43 (4.4%)
   Konsulko Group                    34 (3.5%)
   Boundary Devices                  30 (3.1%)
   CompuLab                          26 (2.7%)
   MIPS                              24 (2.4%)
   Google, Inc.                      23 (2.3%)
   Atmel                             23 (2.3%)
   Calxeda                           18 (1.8%)
   Analog Devices                    13 (1.3%)
   Keymile                           13 (1.3%)
   Nobuhiro Iwamatsu                 11 (1.1%)
   O.S. Systems                      8 (0.8%)
   Wind River                        7 (0.7%)
   NVidia                            6 (0.6%)
   AMD                               4 (0.4%)
   BuS Elektronik                    4 (0.4%)
   Linaro                            3 (0.3%)
   Novell                            3 (0.3%)
   Amarula Solutions                 2 (0.2%)
   Broadcom                          2 (0.2%)
   Promwad                           2 (0.2%)
   Siemens                           2 (0.2%)
   Free Electrons                    1 (0.1%)
   TQ Systems                        1 (0.1%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Socionext Inc.                    25093 (24.7%)
   Samsung                           13328 (13.1%)
   Freescale                         12220 (12.0%)
   (Unknown)                         10272 (10.1%)
   Renesas Electronics               10033 (9.9%)
   Boundary Devices                  6498 (6.4%)
   DENX Software Engineering         4484 (4.4%)
   Konsulko Group                    4245 (4.2%)
   Texas Instruments                 3473 (3.4%)
   Calxeda                           1822 (1.8%)
   Xilinx                            1560 (1.5%)
   Keymile                           1417 (1.4%)
   Google, Inc.                      1343 (1.3%)
   CompuLab                          1332 (1.3%)
   MIPS                              1184 (1.2%)
   Analog Devices                    968 (1.0%)
   Atmel                             695 (0.7%)
   Siemens                           312 (0.3%)
   Promwad                           262 (0.3%)
   Nobuhiro Iwamatsu                 236 (0.2%)
   Wind River                        215 (0.2%)
   NVidia                            99 (0.1%)
   O.S. Systems                      96 (0.1%)
   Linaro                            81 (0.1%)
   TQ Systems                        44 (0.0%)
   AMD                               37 (0.0%)
   Novell                            31 (0.0%)
   Broadcom                          20 (0.0%)
   BuS Elektronik                    11 (0.0%)
   Amarula Solutions                 5 (0.0%)
   Free Electrons                    2 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Samsung                           57 (24.3%)
   Xilinx                            39 (16.6%)
   (Unknown)                         37 (15.7%)
   Freescale                         24 (10.2%)
   Renesas Electronics               16 (6.8%)
   Google, Inc.                      15 (6.4%)
   NVidia                            11 (4.7%)
   Texas Instruments                 7 (3.0%)
   CompuLab                          6 (2.6%)
   Analog Devices                    5 (2.1%)
   DENX Software Engineering         4 (1.7%)
   Siemens                           4 (1.7%)
   Nobuhiro Iwamatsu                 4 (1.7%)
   Keymile                           2 (0.9%)
   Linaro                            2 (0.9%)
   O.S. Systems                      1 (0.4%)
   Funky                             1 (0.4%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         61 (38.9%)
   Freescale                         22 (14.0%)
   Texas Instruments                 10 (6.4%)
   Samsung                           9 (5.7%)
   Xilinx                            6 (3.8%)
   DENX Software Engineering         6 (3.8%)
   NVidia                            5 (3.2%)
   Renesas Electronics               3 (1.9%)
   CompuLab                          3 (1.9%)
   Keymile                           3 (1.9%)
   Linaro                            3 (1.9%)
   Google, Inc.                      2 (1.3%)
   Analog Devices                    2 (1.3%)
   Siemens                           2 (1.3%)
   Boundary Devices                  2 (1.3%)
   Calxeda                           2 (1.3%)
   Atmel                             2 (1.3%)
   Nobuhiro Iwamatsu                 1 (0.6%)
   O.S. Systems                      1 (0.6%)
   Socionext Inc.                    1 (0.6%)
   Konsulko Group                    1 (0.6%)
   MIPS                              1 (0.6%)
   Promwad                           1 (0.6%)
   Wind River                        1 (0.6%)
   TQ Systems                        1 (0.6%)
   AMD                               1 (0.6%)
   Novell                            1 (0.6%)
   Broadcom                          1 (0.6%)
   BuS Elektronik                    1 (0.6%)
   Amarula Solutions                 1 (0.6%)
   Free Electrons                    1 (0.6%)
   ================================  =====
