From: Jean Delvare <khali@linux-fr.org>
To: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Cc: David Brownell <david-b@pacbell.net>,
linux-kernel@vger.kernel.org, gregkh@suse.de,
dmitry.torokhov@gmail.com
Subject: Re: Platform device id
Date: Sat, 8 Sep 2007 10:55:34 +0200 [thread overview]
Message-ID: <20070908105534.2e8e7d8a@hyperion.delvare> (raw)
In-Reply-To: <20070908035022.GF4357@khazad-dum.debian.net>
On Sat, 8 Sep 2007 00:50:22 -0300, Henrique de Moraes Holschuh wrote:
> On Fri, 07 Sep 2007, David Brownell wrote:
> > > I don't feel like drivers like hdaps, thinkpad-acpi, dock, bay,
> > > and many others really belong in the platform bus. But that's
> > > what happens right now.
> >
> > As a rule, there needs to be a Good Reason to create a new bus
> > type. A "feel" is a pretty weak reason...
>
> The "feel" is there because:
>
> 1. Comments about how what we do is wrong for the platform bus (i.e. adding
> the devices and the driver in the same module). Even the documentation
> for platform devices make it quite clear we are abusing it. There was
> one of those comments in this very thread.
This more general than just the platform bus. It's how the Linux 2.6
device driver model is designed.
There are alternatives to the way hdaps and thinkpad_acpi instantiate
their devices:
* These drivers use DMI to find out whether they run on supported
hardware. The same detection code could be moved to a separate driver
(possibly the same one for all DMI-detected devices) and that separate
driver would instantiate the devices as needed. Then the usual
hotplug/coldplug rules apply.
* Detection could be moved to user-space entirely, then we would only
need a way to instantiate these specific devices from user-space. This
exists in other areas (scsi, network) for quite some times already so
it shouldn't be too difficult.
> 2. The fact that a module that has a number of different devices has to
> register itself a number of times as a driver, if it wants to name the
> devices something different...
Sounds like you have a design issue here to start with. Supporting
several significantly different devices in the same module is not
something that we do usually.
--
Jean Delvare
next prev parent reply other threads:[~2007-09-08 8:53 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-09-07 13:35 Platform device id Jean Delvare
2007-09-07 14:58 ` Dmitry Torokhov
2007-09-07 16:36 ` Jean Delvare
2007-09-07 16:41 ` David Brownell
2007-09-07 21:00 ` Henrique de Moraes Holschuh
2007-09-07 21:41 ` David Brownell
2007-09-07 22:04 ` Henrique de Moraes Holschuh
2007-09-08 0:18 ` David Brownell
2007-09-08 3:50 ` Henrique de Moraes Holschuh
2007-09-08 8:55 ` Jean Delvare [this message]
2007-09-10 22:52 ` Henrique de Moraes Holschuh
2007-09-11 7:43 ` Jean Delvare
2007-09-11 13:44 ` Henrique de Moraes Holschuh
2007-09-11 14:05 ` Jean Delvare
2007-09-07 20:56 ` Henrique de Moraes Holschuh
2007-09-08 8:40 ` Jean Delvare
2007-09-10 22:45 ` Henrique de Moraes Holschuh
2007-09-08 13:30 ` Greg KH
2007-09-09 10:54 ` [PATCH] Make platform_device.id an int Jean Delvare
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=20070908105534.2e8e7d8a@hyperion.delvare \
--to=khali@linux-fr.org \
--cc=david-b@pacbell.net \
--cc=dmitry.torokhov@gmail.com \
--cc=gregkh@suse.de \
--cc=hmh@hmh.eng.br \
--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