:orphan:

Release Statistics for U-Boot v2013.04
======================================

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

   ================================  =====
   Name                              Count
   ================================  =====
   Simon Glass                       179 (18.3%)
   Tom Warren                        57 (5.8%)
   Tom Rini                          39 (4.0%)
   Benoît Thébaudeau                 35 (3.6%)
   Otavio Salvador                   30 (3.1%)
   Allen Martin                      29 (3.0%)
   Gabor Juhos                       29 (3.0%)
   Fabio Estevam                     26 (2.7%)
   Stephen Warren                    25 (2.6%)
   Marek Vasut                       23 (2.3%)
   Holger Brunck                     17 (1.7%)
   Akshay Saraswat                   16 (1.6%)
   Nikita Kiryanov                   15 (1.5%)
   Lokesh Vutla                      14 (1.4%)
   Rajeshwari Shinde                 14 (1.4%)
   Ajay Kumar                        13 (1.3%)
   Daniel Schwierzeck                13 (1.3%)
   Joe Hershberger                   12 (1.2%)
   Doug Anderson                     12 (1.2%)
   R Sricharan                       12 (1.2%)
   Albert ARIBAUD                    11 (1.1%)
   Eric Nelson                       11 (1.1%)
   Anatolij Gustschin                11 (1.1%)
   Jeroen Hofstee                    11 (1.1%)
   Matt Porter                       10 (1.0%)
   Michal Simek                      10 (1.0%)
   Troy Kisky                        10 (1.0%)
   Andreas Bießmann                  9 (0.9%)
   Jon Hunter                        9 (0.9%)
   Pantelis Antoniou                 9 (0.9%)
   Enric Balletbo i Serra            9 (0.9%)
   Lucas Stach                       9 (0.9%)
   Prabhakar Kushwaha                8 (0.8%)
   Thierry Reding                    7 (0.7%)
   Stefan Roese                      7 (0.7%)
   York Sun                          7 (0.7%)
   Łukasz Majewski                   7 (0.7%)
   Jagan Teki                        7 (0.7%)
   Kim Phillips                      7 (0.7%)
   Robert P. J. Day                  6 (0.6%)
   Vivek Gautam                      5 (0.5%)
   Javier Martinez Canillas          5 (0.5%)
   Lars Poeschel                     5 (0.5%)
   Wolfgang Denk                     5 (0.5%)
   Sonic Zhang                       5 (0.5%)
   Bob Liu                           5 (0.5%)
   Scott Wood                        5 (0.5%)
   James Yang                        5 (0.5%)
   Marc Dietrich                     4 (0.4%)
   Padmavathi Venna                  4 (0.4%)
   Vincent Palatin                   4 (0.4%)
   Stefano Babic                     4 (0.4%)
   Ilya Yanok                        4 (0.4%)
   Vadim Bendebury                   3 (0.3%)
   Tetsuyuki Kobayashi               3 (0.3%)
   Koen Kooi                         3 (0.3%)
   Rob Herring                       3 (0.3%)
   Gabe Black                        3 (0.3%)
   Pali Rohár                        3 (0.3%)
   Mark Jackson                      3 (0.3%)
   Piotr Wilczek                     3 (0.3%)
   Bo Shen                           3 (0.3%)
   Holger Hans Peter Freyther        3 (0.3%)
   Chase Maupin                      3 (0.3%)
   Michael Jones                     3 (0.3%)
   Richard Genoud                    3 (0.3%)
   Shaveta Leekha                    3 (0.3%)
   Jaehoon Chung                     2 (0.2%)
   Che-liang Chiou                   2 (0.2%)
   Taylor Hutt                       2 (0.2%)
   Linus Walleij                     2 (0.2%)
   Manfred Huber                     2 (0.2%)
   Lubomir Popov                     2 (0.2%)
   Peter Korsgaard                   2 (0.2%)
   Bin Liu                           2 (0.2%)
   Jagannadha Sutradharudu Teki      2 (0.2%)
   Vincent Stehlé                    2 (0.2%)
   Vaibhav Hiremath                  2 (0.2%)
   Knut Wohlrab                      2 (0.2%)
   Vipin Kumar                       2 (0.2%)
   Nicolas Ferre                     2 (0.2%)
   Fadil Berisha                     2 (0.2%)
   Phil Sutter                       2 (0.2%)
   Robert Nelson                     2 (0.2%)
   Tomas Novotny                     2 (0.2%)
   Andreas Huber                     2 (0.2%)
   Karlheinz Jerg                    2 (0.2%)
   Alexey Brodkin                    2 (0.2%)
   Poonam Aggrwal                    2 (0.2%)
   Valentin Longchamp                2 (0.2%)
   Hongtao Jia                       2 (0.2%)
   Maxime Larocque                   1 (0.1%)
   Minkyu Kang                       1 (0.1%)
   Andre Przywara                    1 (0.1%)
   Andrew Gabbasov                   1 (0.1%)
   Rong Chang                        1 (0.1%)
   Gerlando Falauto                  1 (0.1%)
   Mats Kärrman                      1 (0.1%)
   ramneek mehresh                   1 (0.1%)
   Mingkai Hu                        1 (0.1%)
   Nishanth Menon                    1 (0.1%)
   Josh Wu                           1 (0.1%)
   Dirk Behme                        1 (0.1%)
   Alexandre Pereira da Silva        1 (0.1%)
   Abbas Raza                        1 (0.1%)
   Aaron Williams                    1 (0.1%)
   Przemyslaw Marczak                1 (0.1%)
   Veli-Pekka Peltola                1 (0.1%)
   Steven Stallion                   1 (0.1%)
   Steve Kipisz                      1 (0.1%)
   Matthias Weisser                  1 (0.1%)
   Andre Renaud                      1 (0.1%)
   Michael Spang                     1 (0.1%)
   Patrick Georgi                    1 (0.1%)
   Shiraz Hashim                     1 (0.1%)
   Barak Wasserstrom                 1 (0.1%)
   Jesse Gilles                      1 (0.1%)
   Lubomir Rintel                    1 (0.1%)
   Gray Remlin                       1 (0.1%)
   Mugunthan V N                     1 (0.1%)
   Steven Miao                       1 (0.1%)
   Scott Jiang                       1 (0.1%)
   Harvey Chapman                    1 (0.1%)
   Reinhard Arlt                     1 (0.1%)
   Howard Gray                       1 (0.1%)
   Gerald Van Baren                  1 (0.1%)
   Jeff Lance                        1 (0.1%)
   Jim Lin                           1 (0.1%)
   Ashok                             1 (0.1%)
   Jason Wu                          1 (0.1%)
   David Holsgrove                   1 (0.1%)
   Andy Fleming                      1 (0.1%)
   Shengzhou Liu                     1 (0.1%)
   Vakul Garg                        1 (0.1%)
   Timur Tabi                        1 (0.1%)
   Shaohui Xie                       1 (0.1%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Simon Glass                       17102 (16.6%)
   Tom Warren                        13132 (12.7%)
   Michal Simek                      6776 (6.6%)
   Benoît Thébaudeau                 4934 (4.8%)
   Eric Nelson                       4693 (4.6%)
   York Sun                          3715 (3.6%)
   Stefan Roese                      3386 (3.3%)
   R Sricharan                       3139 (3.0%)
   Piotr Wilczek                     2823 (2.7%)
   Wolfgang Denk                     2419 (2.3%)
   Allen Martin                      2373 (2.3%)
   Lokesh Vutla                      2087 (2.0%)
   Prabhakar Kushwaha                1864 (1.8%)
   Matt Porter                       1861 (1.8%)
   Anatolij Gustschin                1700 (1.6%)
   Sonic Zhang                       1509 (1.5%)
   Bob Liu                           1487 (1.4%)
   Otavio Salvador                   1447 (1.4%)
   Che-liang Chiou                   1434 (1.4%)
   Marek Vasut                       1420 (1.4%)
   Rong Chang                        1414 (1.4%)
   Nikita Kiryanov                   1379 (1.3%)
   Stephen Warren                    1369 (1.3%)
   Fabio Estevam                     1251 (1.2%)
   Rajeshwari Shinde                 1241 (1.2%)
   Akshay Saraswat                   1196 (1.2%)
   Troy Kisky                        1057 (1.0%)
   Łukasz Majewski                   896 (0.9%)
   Albert ARIBAUD                    810 (0.8%)
   Lars Poeschel                     807 (0.8%)
   Gabor Juhos                       792 (0.8%)
   Pali Rohár                        753 (0.7%)
   Lucas Stach                       710 (0.7%)
   Kim Phillips                      666 (0.6%)
   Ajay Kumar                        637 (0.6%)
   Pantelis Antoniou                 600 (0.6%)
   Scott Jiang                       549 (0.5%)
   Andreas Bießmann                  546 (0.5%)
   Joe Hershberger                   483 (0.5%)
   Tom Rini                          445 (0.4%)
   Jeroen Hofstee                    423 (0.4%)
   Doug Anderson                     396 (0.4%)
   Javier Martinez Canillas          377 (0.4%)
   Scott Wood                        361 (0.4%)
   Patrick Georgi                    316 (0.3%)
   Daniel Schwierzeck                310 (0.3%)
   James Yang                        281 (0.3%)
   Stefano Babic                     231 (0.2%)
   Vipin Kumar                       226 (0.2%)
   Poonam Aggrwal                    172 (0.2%)
   Padmavathi Venna                  166 (0.2%)
   Karlheinz Jerg                    144 (0.1%)
   Shaveta Leekha                    143 (0.1%)
   Ilya Yanok                        138 (0.1%)
   Tomas Novotny                     138 (0.1%)
   Thierry Reding                    135 (0.1%)
   Fadil Berisha                     130 (0.1%)
   Holger Brunck                     109 (0.1%)
   Jon Hunter                        104 (0.1%)
   David Holsgrove                   92 (0.1%)
   Vakul Garg                        92 (0.1%)
   Marc Dietrich                     89 (0.1%)
   Enric Balletbo i Serra            86 (0.1%)
   Vivek Gautam                      82 (0.1%)
   Rob Herring                       82 (0.1%)
   Michael Jones                     76 (0.1%)
   Aaron Williams                    76 (0.1%)
   Richard Genoud                    74 (0.1%)
   Jagan Teki                        63 (0.1%)
   Bo Shen                           63 (0.1%)
   Taylor Hutt                       61 (0.1%)
   Vincent Palatin                   60 (0.1%)
   Jeff Lance                        57 (0.1%)
   Robert P. J. Day                  52 (0.1%)
   Steven Miao                       46 (0.0%)
   Shaohui Xie                       44 (0.0%)
   Chase Maupin                      43 (0.0%)
   Steven Stallion                   42 (0.0%)
   Jaehoon Chung                     35 (0.0%)
   Gabe Black                        31 (0.0%)
   Knut Wohlrab                      30 (0.0%)
   Lubomir Rintel                    27 (0.0%)
   Tetsuyuki Kobayashi               24 (0.0%)
   Vadim Bendebury                   21 (0.0%)
   Shengzhou Liu                     19 (0.0%)
   Koen Kooi                         18 (0.0%)
   Manfred Huber                     18 (0.0%)
   Peter Korsgaard                   18 (0.0%)
   Mugunthan V N                     18 (0.0%)
   Holger Hans Peter Freyther        16 (0.0%)
   Abbas Raza                        16 (0.0%)
   Nicolas Ferre                     14 (0.0%)
   Robert Nelson                     14 (0.0%)
   Andreas Huber                     14 (0.0%)
   Valentin Longchamp                13 (0.0%)
   Hongtao Jia                       13 (0.0%)
   Nishanth Menon                    13 (0.0%)
   Howard Gray                       13 (0.0%)
   Mark Jackson                      12 (0.0%)
   Phil Sutter                       12 (0.0%)
   Timur Tabi                        12 (0.0%)
   Mats Kärrman                      11 (0.0%)
   Gerald Van Baren                  11 (0.0%)
   Bin Liu                           9 (0.0%)
   Jesse Gilles                      8 (0.0%)
   Andre Przywara                    7 (0.0%)
   Matthias Weisser                  7 (0.0%)
   Lubomir Popov                     6 (0.0%)
   Jagannadha Sutradharudu Teki      6 (0.0%)
   Vaibhav Hiremath                  6 (0.0%)
   Linus Walleij                     5 (0.0%)
   ramneek mehresh                   5 (0.0%)
   Jim Lin                           5 (0.0%)
   Jason Wu                          5 (0.0%)
   Alexey Brodkin                    4 (0.0%)
   Andrew Gabbasov                   4 (0.0%)
   Gerlando Falauto                  4 (0.0%)
   Dirk Behme                        4 (0.0%)
   Veli-Pekka Peltola                4 (0.0%)
   Steve Kipisz                      4 (0.0%)
   Andre Renaud                      4 (0.0%)
   Michael Spang                     4 (0.0%)
   Shiraz Hashim                     4 (0.0%)
   Barak Wasserstrom                 4 (0.0%)
   Minkyu Kang                       3 (0.0%)
   Vincent Stehlé                    2 (0.0%)
   Maxime Larocque                   2 (0.0%)
   Gray Remlin                       2 (0.0%)
   Ashok                             2 (0.0%)
   Mingkai Hu                        1 (0.0%)
   Alexandre Pereira da Silva        1 (0.0%)
   Przemyslaw Marczak                1 (0.0%)
   Harvey Chapman                    1 (0.0%)
   Reinhard Arlt                     1 (0.0%)
   Andy Fleming                      1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Michal Simek                      6306 (14.3%)
   Benoît Thébaudeau                 3523 (8.0%)
   Stefan Roese                      2874 (6.5%)
   Wolfgang Denk                     2053 (4.7%)
   Jeroen Hofstee                    290 (0.7%)
   Javier Martinez Canillas          251 (0.6%)
   Gabor Juhos                       222 (0.5%)
   Daniel Schwierzeck                98 (0.2%)
   Lucas Stach                       75 (0.2%)
   Robert P. J. Day                  34 (0.1%)
   Richard Genoud                    26 (0.1%)
   Scott Wood                        16 (0.0%)
   Gerald Van Baren                  9 (0.0%)
   Gabe Black                        6 (0.0%)
   Michael Spang                     4 (0.0%)
   Ashok                             2 (0.0%)
   Knut Wohlrab                      1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Minkyu Kang                       54 (15.3%)
   Tom Warren                        51 (14.4%)
   Andy Fleming                      32 (9.1%)
   Tom Rini                          23 (6.5%)
   Sonic Zhang                       14 (4.0%)
   Kyungmin Park                     13 (3.7%)
   R Sricharan                       13 (3.7%)
   Simon Glass                       13 (3.7%)
   Igor Grinberg                     11 (3.1%)
   Poonam Aggrwal                    9 (2.5%)
   Akshay Saraswat                   9 (2.5%)
   Michal Simek                      8 (2.3%)
   Jagannadha Sutradharudu Teki      8 (2.3%)
   Andreas Bießmann                  7 (2.0%)
   Anatolij Gustschin                7 (2.0%)
   Bob Liu                           6 (1.7%)
   York Sun                          6 (1.7%)
   ARUN MANKUZHI                     5 (1.4%)
   Holger Brunck                     5 (1.4%)
   Lokesh Vutla                      4 (1.1%)
   Kim Phillips                      3 (0.8%)
   Prabhakar Kushwaha                3 (0.8%)
   Daniel Schwierzeck                2 (0.6%)
   Tom Wai-Hong Tam                  2 (0.6%)
   Hatim Ali                         2 (0.6%)
   Naveen Burmi                      2 (0.6%)
   Sandeep Singh                     2 (0.6%)
   Li Yang                           2 (0.6%)
   Michael Jones                     2 (0.6%)
   Bo Shen                           2 (0.6%)
   Shaveta Leekha                    2 (0.6%)
   Marek Vasut                       2 (0.6%)
   Otavio Salvador                   2 (0.6%)
   Piotr Wilczek                     2 (0.6%)
   Scott Wood                        1 (0.3%)
   Gabe Black                        1 (0.3%)
   Dirk Behme                        1 (0.3%)
   Naveen Krishna Ch                 1 (0.3%)
   Satyanarayana, Sandhya            1 (0.3%)
   Oleksandr Tymoshenko              1 (0.3%)
   Bernie Thompson                   1 (0.3%)
   Duncan Laurie                     1 (0.3%)
   Bill Richardson                   1 (0.3%)
   Julius Werner                     1 (0.3%)
   Andrzej Pietrasiewicz             1 (0.3%)
   Armando Visconti                  1 (0.3%)
   Alim Akhtar                       1 (0.3%)
   Nishant Kamat                     1 (0.3%)
   Hebbar Gururaja                   1 (0.3%)
   Ruchika Gupta                     1 (0.3%)
   Priyanka Jain                     1 (0.3%)
   Roy Zang                          1 (0.3%)
   Vadim Bendebury                   1 (0.3%)
   Vincent Palatin                   1 (0.3%)
   Thierry Reding                    1 (0.3%)
   Pantelis Antoniou                 1 (0.3%)
   Łukasz Majewski                   1 (0.3%)
   Rajeshwari Shinde                 1 (0.3%)
   Che-liang Chiou                   1 (0.3%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Stephen Warren                    60 (46.9%)
   Tom Rini                          45 (35.2%)
   Doug Anderson                     9 (7.0%)
   R Sricharan                       3 (2.3%)
   Otavio Salvador                   3 (2.3%)
   Benoît Thébaudeau                 2 (1.6%)
   Javier Martinez Canillas          2 (1.6%)
   Simon Glass                       1 (0.8%)
   Vadim Bendebury                   1 (0.8%)
   Joe Hershberger                   1 (0.8%)
   Fabio Estevam                     1 (0.8%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Fabio Estevam                     5 (17.2%)
   Rommel Custodio                   3 (10.3%)
   Nishanth Menon                    3 (10.3%)
   Michal Simek                      2 (6.9%)
   Jagannadha Sutradharudu Teki      2 (6.9%)
   Eric Nelson                       2 (6.9%)
   R Sricharan                       1 (3.4%)
   Javier Martinez Canillas          1 (3.4%)
   Andreas Bießmann                  1 (3.4%)
   Marek Vasut                       1 (3.4%)
   Thierry Reding                    1 (3.4%)
   Stefan Roese                      1 (3.4%)
   Wolfgang Denk                     1 (3.4%)
   Vincent Stehlé                    1 (3.4%)
   Their Name                        1 (3.4%)
   Rao Bodapati                      1 (3.4%)
   Andrew Gabbasov                   1 (3.4%)
   Koen Kooi                         1 (3.4%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Benoît Thébaudeau                 5 (17.2%)
   R Sricharan                       4 (13.8%)
   Fabio Estevam                     2 (6.9%)
   Michal Simek                      2 (6.9%)
   Tom Rini                          2 (6.9%)
   Simon Glass                       2 (6.9%)
   Manfred Huber                     2 (6.9%)
   Nishanth Menon                    1 (3.4%)
   Eric Nelson                       1 (3.4%)
   Marek Vasut                       1 (3.4%)
   Doug Anderson                     1 (3.4%)
   Otavio Salvador                   1 (3.4%)
   Tom Warren                        1 (3.4%)
   Mats Kärrman                      1 (3.4%)
   Jaehoon Chung                     1 (3.4%)
   Aaron Williams                    1 (3.4%)
   Jagan Teki                        1 (3.4%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Benoît Thébaudeau                 2 (20.0%)
   Albert ARIBAUD                    2 (20.0%)
   Koen Kooi                         1 (10.0%)
   Lubomir Popov                     1 (10.0%)
   Michael Cashwell                  1 (10.0%)
   Alexei Fedorov                    1 (10.0%)
   Aaron Williams                    1 (10.0%)
   Peter Korsgaard                   1 (10.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Albert ARIBAUD                    2 (20.0%)
   Fabio Estevam                     2 (20.0%)
   Tom Rini                          2 (20.0%)
   Marek Vasut                       1 (10.0%)
   Vincent Stehlé                    1 (10.0%)
   Akshay Saraswat                   1 (10.0%)
   Lokesh Vutla                      1 (10.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         231 (23.6%)
   Google, Inc.                      203 (20.7%)
   NVidia                            75 (7.7%)
   Freescale                         72 (7.3%)
   Samsung                           66 (6.7%)
   Texas Instruments                 57 (5.8%)
   DENX Software Engineering         50 (5.1%)
   Konsulko Group                    39 (4.0%)
   ADVANSEE                          35 (3.6%)
   O.S. Systems                      30 (3.1%)
   Keymile                           24 (2.4%)
   Boundary Devices                  21 (2.1%)
   CompuLab                          15 (1.5%)
   National Instruments              12 (1.2%)
   AMD                               10 (1.0%)
   Xilinx                            9 (0.9%)
   Atmel                             6 (0.6%)
   Analog Devices                    4 (0.4%)
   Matrix Vision                     4 (0.4%)
   Calxeda                           3 (0.3%)
   Bosch                             3 (0.3%)
   Linaro                            3 (0.3%)
   Mercury IMC Ltd.                  3 (0.3%)
   ST Microelectronics               3 (0.3%)
   Bluewater Systems                 1 (0.1%)
   ESD Electronics                   1 (0.1%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         22275 (21.6%)
   Google, Inc.                      19044 (18.5%)
   DENX Software Engineering         9156 (8.9%)
   Freescale                         8640 (8.4%)
   Texas Instruments                 7286 (7.1%)
   Samsung                           7080 (6.9%)
   AMD                               6776 (6.6%)
   NVidia                            5869 (5.7%)
   Boundary Devices                  5750 (5.6%)
   ADVANSEE                          4934 (4.8%)
   Analog Devices                    1507 (1.5%)
   O.S. Systems                      1447 (1.4%)
   CompuLab                          1379 (1.3%)
   National Instruments              483 (0.5%)
   Konsulko Group                    445 (0.4%)
   Keymile                           284 (0.3%)
   ST Microelectronics               230 (0.2%)
   Xilinx                            155 (0.2%)
   Matrix Vision                     89 (0.1%)
   Calxeda                           82 (0.1%)
   Atmel                             77 (0.1%)
   Bosch                             34 (0.0%)
   Linaro                            12 (0.0%)
   Mercury IMC Ltd.                  12 (0.0%)
   Bluewater Systems                 4 (0.0%)
   ESD Electronics                   1 (0.0%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   Samsung                           90 (25.5%)
   Freescale                         65 (18.4%)
   NVidia                            51 (14.4%)
   Texas Instruments                 43 (12.2%)
   (Unknown)                         26 (7.4%)
   Google, Inc.                      22 (6.2%)
   Xilinx                            16 (4.5%)
   CompuLab                          11 (3.1%)
   DENX Software Engineering         9 (2.5%)
   Analog Devices                    7 (2.0%)
   Keymile                           5 (1.4%)
   O.S. Systems                      2 (0.6%)
   Matrix Vision                     2 (0.6%)
   Atmel                             2 (0.6%)
   ST Microelectronics               1 (0.3%)
   Bosch                             1 (0.3%)
   ================================  =====


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

   ================================  =====
   Name                              Count
   ================================  =====
   (Unknown)                         56 (40.0%)
   Freescale                         16 (11.4%)
   Texas Instruments                 11 (7.9%)
   Samsung                           10 (7.1%)
   Google, Inc.                      6 (4.3%)
   DENX Software Engineering         5 (3.6%)
   Keymile                           5 (3.6%)
   NVidia                            4 (2.9%)
   Xilinx                            3 (2.1%)
   Atmel                             3 (2.1%)
   Matrix Vision                     2 (1.4%)
   ST Microelectronics               2 (1.4%)
   Bosch                             2 (1.4%)
   Boundary Devices                  2 (1.4%)
   Linaro                            2 (1.4%)
   CompuLab                          1 (0.7%)
   Analog Devices                    1 (0.7%)
   O.S. Systems                      1 (0.7%)
   AMD                               1 (0.7%)
   ADVANSEE                          1 (0.7%)
   National Instruments              1 (0.7%)
   Konsulko Group                    1 (0.7%)
   Calxeda                           1 (0.7%)
   Mercury IMC Ltd.                  1 (0.7%)
   Bluewater Systems                 1 (0.7%)
   ESD Electronics                   1 (0.7%)
   ================================  =====
