mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Michael K. Edwards" <medwards.linux@gmail.com>
To: "Kumar Gala" <galak@kernel.crashing.org>
Cc: "Greg KH" <greg@kroah.com>, linux-kernel@vger.kernel.org
Subject: Re: Free Linux Driver Development!
Date: Wed, 31 Jan 2007 12:01:18 -0800	[thread overview]
Message-ID: <f2b55d220701311201o29e2fbaby41862b4804defa69@mail.gmail.com> (raw)
In-Reply-To: <C027A21A-42C4-4901-96F0-82E36CAD6C22@kernel.crashing.org>

On 1/30/07, Kumar Gala <galak@kernel.crashing.org> wrote:
> Out of interest are you was this geared to any particular SoC's/
> architectures?

I had in mind the sort of ARM-, PPC-, and MIPS-based SoCs that wind up
in handhelds, mobiles, set-tops, and consumer-grade WiFi devices.
That's an area I know passably well, having done both Linux-based and
proprietary-OS-based board support for some years, usually in a
"platform integrator" sort of role.

Part of the reason that most software-defined-radio WiFi vendors have
been slow to cooperate with the kernel community is that their driver
code is pretty fragile and blows chunks when poked in unexpected ways.
 This is not surprising, given the way these companies are structured
and the fact that there has been little market pressure to make it
otherwise.  The field support folks may not have the resources or even
the source code necessary to fix the driver, and they often feel like
the only answer is to lock down the rest of the system to limit usage
patterns to those that the driver writer happened to see in his
Faraday cage.

Especially if there's a corner case that sends the RF power open-loop,
they worry that the FCC (or more likely ETSI) will come down on them
for making it too easy for hobbyists to build ISM foghorns with ugly
spurs in licensed spectrum.  If you want vendor participation in
creating open source drivers for these things, I think you have to get
them engaged long before they enter regulatory test, and understand
their damage control requirements, and keep the discourse relatively
private until the go-to-market stage, at which point they've
presumably decided they can brazen out the remaining hack potential.

Another part of the problem is that embedded vendors come from a world
of destructive competition between BSP houses, where "fork, fire, and
forget" is as much a vendor lock-in tactic as a short-term perspective
on cost efficiency.  They've never had the experience of having their
heads knocked together by a purchaser with overwhelming market power
and the technical resources to identify the guilty (as the early 2-D
graphics board vendors did with MIT and the Ethernet folks did with
ARPA).  We tend to take for granted the legacy of interoperability
that comes from such head-knocking-together, especially when a new
generation of vendors doesn't play by the same rules.

In the absence of such a monopsonist, our best bet for encouraging
more openness, and someday even actual participation, from SoC people
may be to help them with the part that they do understand to be sunk
cost rather than competitive asset -- bringup efforts, workarounds for
buggy UARTs and EtherMACs and other bog-standard interfaces, and the
rest of arch/arm/mach-foo (or the MIPS/PPC equivalent).  Mainstream
that, so that their customers can actually evaluate how their
application code behaves on new toolchains and kernels (with stubs in
place of the hairier drivers), and you'll help SoC customers make the
case for open source drivers for the sexier bits.

Needless to say, uniting forces with the upstream maintainers of open
source embedded bootloaders and toolchain / userland build systems
would help too.  After the first six months of freedom from code
reviews, nobody really likes maintaining a fork.  But undoing a fork
can be a lot of work, especially when upstream is picky about code
quality; there has to be some quantifiable benefit to justify it.

In embedded space, power consumption, memory footprint, and maximum
latency are usually where the pain is perceived to be.  Even though it
would probably be more rational to rank interoperability, software
reliability, and portability to the next chip among or above these,
consumer electronics companies rarely think that way.  So if you want
to dangle a carrot in front of SoC vendors, you might try an
integration branch with OpPoint and RT/Preempt patches and guidance on
the CONFIG_EMBEDDED options.

Cheers,
- Michael

  reply	other threads:[~2007-01-31 20:01 UTC|newest]

Thread overview: 182+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-01-30  1:29 Greg KH
2007-01-30  2:19 ` Rik van Riel
2007-01-30  2:23   ` Greg KH
2007-01-30  7:33 ` Bauke Jan Douma
2007-01-30 19:15   ` Greg KH
2007-01-30 20:42   ` Valdis.Kletnieks
2007-01-30 10:52 ` Jan Engelhardt
2007-01-30 19:14   ` Greg KH
2007-01-30 19:31     ` Jan Engelhardt
2007-01-30 19:46       ` Greg KH
2007-01-30 20:23       ` Diego Calleja
2007-01-30 20:39         ` Jan Engelhardt
2007-01-31 21:13         ` Jan-Benedict Glaw
2007-01-31 21:56           ` Willy Tarreau
2007-01-31 22:04             ` Jan-Benedict Glaw
2007-01-30 13:45 ` Florian Weimer
2007-01-30 19:12   ` Greg KH
2007-01-30 19:40     ` Florian Weimer
2007-01-30 19:47       ` Greg KH
2007-01-30 17:30 ` Manu Abraham
2007-01-30 19:11   ` Greg KH
2007-01-30 22:21     ` Manu Abraham
2007-01-30 19:33   ` Bill Davidsen
2007-01-30 19:55     ` Greg KH
2007-01-30 17:45 ` Roland Dreier
2007-01-30 17:55   ` Manu Abraham
2007-01-30 18:20   ` Jeff Garzik
2007-01-30 18:11     ` Jeff V. Merkey
2007-01-30 19:02     ` Roland Dreier
2007-01-30 19:36       ` Jeff Garzik
2007-01-30 19:10   ` Greg KH
2007-01-30 19:29     ` Roland Dreier
2007-01-30 19:46       ` Jeff Garzik
2007-01-30 21:38         ` Roland Dreier
2007-01-30 21:47           ` Greg KH
2007-01-30 22:00             ` Roland Dreier
2007-01-30 22:12               ` Jeff Garzik
2007-01-30 22:19                 ` Roland Dreier
2007-01-30 22:39                   ` John W. Linville
2007-01-30 22:23                 ` Lennart Sorensen
2007-02-01 13:59                   ` Erik Mouw
2007-02-01 14:45                     ` Lennart Sorensen
2007-02-01 22:39                       ` Erik Mouw
2007-02-01 15:46                   ` Michael Buesch
2007-02-01 16:42                     ` Lennart Sorensen
2007-02-01 17:48                       ` Michael K. Edwards
2007-01-30 22:14               ` Dave Airlie
2007-01-30 22:24                 ` Trent Waddington
2007-01-30 22:41                   ` Jeff Garzik
2007-01-31 13:34                     ` David Hollis
2007-01-31 17:56                       ` Jan Engelhardt
2007-01-31 18:37                         ` Bob Copeland
2007-02-01  5:52                           ` Greg KH
2007-02-04 20:54                         ` Bill Davidsen
2007-01-31 17:50               ` Jan Engelhardt
2007-01-31 17:55                 ` Jeff Garzik
2007-01-31 17:58                 ` alan
2007-01-31 18:29                   ` Jan Engelhardt
2007-01-31 19:17                     ` alan
2007-01-30 22:08           ` Jeff Garzik
2007-01-30 22:15             ` Roland Dreier
2007-01-30 23:01               ` Jeff Garzik
2007-01-30 22:19         ` Matthieu CASTET
2007-01-30 22:42           ` Jeff Garzik
2007-01-31  4:02             ` Andrey Borzenkov
2007-01-31 12:49               ` Alan
2007-01-31 18:37                 ` Andrey Borzenkov
2007-01-30 23:03           ` Alan
2007-01-31 17:03         ` Eric Sandeen
2007-01-31 17:07           ` Jeff Garzik
2007-01-31 17:09             ` Eric Sandeen
2007-02-07 14:03               ` Tejun Heo
2007-02-07 18:40                 ` Greg KH
2007-01-31 17:28           ` Alan
2007-01-30 19:54       ` Greg KH
2007-01-30 21:46         ` Roland Dreier
2007-01-30 22:27           ` Lennart Sorensen
2007-01-30 22:34           ` Jeff Garzik
2007-01-30 22:50             ` Roland Dreier
2007-01-30 23:05               ` Greg KH
2007-01-30 23:09               ` Jeff Garzik
2007-01-30 23:29                 ` Roland Dreier
2007-01-30 23:45                   ` Manu Abraham
2007-01-31  0:16                   ` Jeff Garzik
2007-01-31  0:46                     ` Greg KH
2007-01-31  1:07                     ` Roland Dreier
2007-01-31  1:30                       ` Greg KH
2007-02-07 10:30           ` Laurent Pinchart
2007-01-30 22:43       ` Alan
2007-01-30 19:52     ` Diego Calleja
2007-01-30 20:11       ` Greg KH
2007-01-31  1:13     ` Adrian Bunk
2007-01-31  1:19       ` Trent Waddington
2007-01-31  2:14         ` Adrian Bunk
2007-01-31  1:24       ` Greg KH
2007-01-31  2:11         ` Bartlomiej Zolnierkiewicz
2007-01-31  2:14         ` Adrian Bunk
2007-02-05  9:49           ` Stefan Seyfried
2007-02-06 13:37             ` Sunil Naidu
2007-02-06 14:57               ` Dave Jones
2007-02-06 16:30               ` Gene Heskett
2007-02-06 16:36                 ` Gene Heskett
2007-02-06 21:14               ` Akemi Yagi
2007-02-06 22:15                 ` floppy (Re: Free Linux Driver Development!, OT) Oleg Verych
2007-02-07 13:33                 ` Free Linux Driver Development! Sunil Naidu
2007-02-07 13:50                   ` Lennart Sorensen
2007-02-08  0:43                 ` David Lang
2007-02-06 15:12             ` Bill Davidsen
2007-02-06 16:11               ` Stefan Seyfried
2007-01-31 10:08         ` Rewriting floppy.c was " Andi Kleen
2007-01-31  9:20           ` Jesper Juhl
2007-01-31  9:32             ` Trent Waddington
2007-01-31  9:34               ` Jesper Juhl
2007-01-31 16:18           ` Martin Seidl
2007-01-31 17:24           ` Adrian Bunk
2007-01-31 18:24             ` Jan Engelhardt
2007-01-31 18:58               ` Lennart Sorensen
2007-01-31 19:20                 ` Jan Engelhardt
2007-01-31 21:46               ` Jan-Benedict Glaw
2007-02-01 13:12           ` Bartlomiej Zolnierkiewicz
2007-02-01 13:22             ` Jesper Juhl
2007-02-01 17:13             ` Al Viro
2007-01-31 17:41     ` Sergei Organov
2007-02-01  5:46       ` Greg KH
2007-02-01 14:22         ` Sergei Organov
2007-02-01 14:41           ` Alan
2007-01-30 19:08 ` Dmitri Vorobiev
2007-01-30 19:49   ` Greg KH
2007-01-30 20:15 ` Andrew Lyon
2007-01-30 20:30   ` Greg KH
2007-02-04 13:29     ` Christer Weinigel
2007-02-04 18:19       ` Greg KH
2007-02-04 21:33         ` Christer Weinigel
2007-01-31  2:27 ` Michael K. Edwards
2007-01-31  6:26   ` Greg KH
2007-01-31  6:48     ` Kumar Gala
2007-01-31 20:01       ` Michael K. Edwards [this message]
     [not found]   ` <355711.50750.qm@web36602.mail.mud.yahoo.com>
2007-02-04 18:20     ` Greg KH
2007-02-04 19:08       ` Miguel Ojeda
2007-02-05  8:13         ` Greg KH
2007-02-05 15:24           ` Jiri Slaby
2007-02-06  6:42             ` Greg KH
2007-02-06 13:35           ` Sunil Naidu
2007-02-06 17:01             ` Greg KH
2007-02-04 18:59 ` Pierre Ossman
2007-02-06  6:44   ` Greg KH
2007-02-06  8:29     ` Manu Abraham
2007-02-06 18:21       ` Greg KH
2007-02-07  7:12         ` Miguel Ojeda
2007-02-07 18:42           ` Greg KH
     [not found] <fa.vy0GBdNvEFvgi9ipVzdiBp0FpjI@ifi.uio.no>
     [not found] ` <fa.INRmyia9BGp5I+SBT3+o7eNe+vo@ifi.uio.no>
     [not found]   ` <fa.JOovioFiqyKNIa9g0QxNLn/pldw@ifi.uio.no>
     [not found]     ` <fa.f1ctPsEcBEc59B+Sd5oTTUfDmIs@ifi.uio.no>
     [not found]       ` <fa.OyKqe20gDjwobkBZicjVmJ5DPp8@ifi.uio.no>
     [not found]         ` <fa.T1Mpk9x9o81uajHKj9J8RE8yM2c@ifi.uio.no>
2007-01-30 23:35           ` Robert Hancock
2007-01-31 13:06 Nicolas Mailhot
2007-01-31 19:29 ` Francois Romieu
2007-01-31 19:54   ` Auke Kok
2007-01-31 21:33     ` Jan Engelhardt
2007-01-31 21:48       ` Trent Waddington
2007-01-31 20:09   ` Nicolas Mailhot
2007-01-31 20:12 ` Greg KH
2007-01-31 21:15   ` Nicolas Mailhot
2007-02-01  5:50     ` Greg KH
2007-01-31 22:06   ` Dave Jones
2007-01-31 22:08     ` Randy Dunlap
2007-01-31 23:00   ` Theodore Tso
2007-01-31 23:04     ` Randy Dunlap
2007-02-01  1:08       ` Mark Lord
2007-02-01  1:39         ` Lee Revell
2007-02-01 10:08           ` Jeff Garzik
2007-01-31 23:44     ` Greg KH
2007-02-01  0:07       ` Trent Waddington
2007-02-01  1:58         ` Greg KH
2007-02-01  8:40       ` Nicolas Mailhot
2007-02-01  9:03         ` Trent Waddington
2007-02-01  9:22           ` Nicolas Mailhot
2007-02-01  9:34             ` Trent Waddington
2007-01-31 23:59     ` Lee Revell
2007-02-01 11:43       ` Jan Engelhardt
2007-02-14 12:00     ` Pavel Machek
2007-02-02  4:54 Christoph Bartelmus
2007-02-04  6:26 Larry Finger
2007-02-04 10:36 ` Michael Buesch
2007-02-04 21:37 devzero
2007-02-04 23:04 ` Oleg Verych

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=f2b55d220701311201o29e2fbaby41862b4804defa69@mail.gmail.com \
    --to=medwards.linux@gmail.com \
    --cc=galak@kernel.crashing.org \
    --cc=greg@kroah.com \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®