From: Thomas Renninger <trenn@suse.de>
To: Mattia Dongili <malattia@linux.it>
Cc: Len Brown <lenb@kernel.org>,
linux-kernel <linux-kernel@vger.kernel.org>,
linux-acpi <linux-acpi@vger.kernel.org>,
Henrique de Moraes Holschuh <hmh@hmh.eng.br>,
acpi4asus-user <acpi4asus-user@lists.sourceforge.net>
Subject: Re: [PATCH 3/3] ACPI autoloading - Create __mod_acpi_device_table symbol for all acpi drivers.
Date: Wed, 20 Jun 2007 19:47:23 +0200 [thread overview]
Message-ID: <1182361643.28514.708.camel@queen.suse.de> (raw)
In-Reply-To: <20070620170617.GA3226@inferi.kami.home>
On Thu, 2007-06-21 at 02:06 +0900, Mattia Dongili wrote:
> On Sun, Jun 17, 2007 at 10:24:23PM +0200, Thomas Renninger wrote:
> > Create __mod_acpi_device_table symbol for all acpi drivers.
> >
> > modpost is going to use this one to create modules.alias
> >
> > Hopefully thinkpad module still works.
> > IMO this one should get restructured and make use of acpi_bus_register_driver
> > and try to avoid to test for HIDs/CIDs for its own.
> >
> > Signed-off-by: Thomas Renninger <trenn@suse.de>
>
> Tested, except for the compile error already reported it does its job on
> my vaios.
Thanks.
> A question though:
>
> > Index: linux-2.6.22-rc4/drivers/misc/sony-laptop.c
> > ===================================================================
> > --- linux-2.6.22-rc4.orig/drivers/misc/sony-laptop.c
> > +++ linux-2.6.22-rc4/drivers/misc/sony-laptop.c
> > @@ -890,10 +890,22 @@ static int sony_nc_remove(struct acpi_de
> > return 0;
> > }
> >
> > +static const struct acpi_device_id sony_device_ids[] = {
> > + {SONY_NC_HID, 0},
> > + {SONY_PIC_HID, 0},
> > + {"", 0},
> > +};
> > +MODULE_DEVICE_TABLE(acpi, sony_device_ids);
> > +
> > +static const struct acpi_device_id sony_nc_device_ids[] = {
> > + {SONY_NC_HID, 0},
> > + {"", 0},
> > +};
> > +
> ...
> > +static const struct acpi_device_id sony_pic_device_ids[] = {
> > + {SONY_PIC_HID, 0},
> > + {"", 0},
> > +};
> > +
>
> is it really necessary to have those duplicate entries?
In this case, yes.
It's because two independent ACPI drivers are set up here.
If you could put these together, only set up
acpi_bus_register_driver(..) once in .init and get the pic and nc driver
handled together it would work.
I don't know whether this could be done.
If not, IMO this driver should get split up in two separate drivers, one
serving SONY_PIC_HID and one serving SONY_NC_HID.
>
> Also, I guess that when this patch set is applied we also should declare
> sonypi obsolete as sony-laptop will grab the same device that sonypi
> wants (the SPIC one). sony-laptop has options to avoid doing that would
> make things clear to users.
> I still haven't received reports of mafunctioning vaios using the new
> sony-laptop instead of sonypi but 2.6.22 isn't final yet.
Sounds sane.
Another problem that could come up in future is that new laptops could
make use of the ACPI video spec (Appendix B) and of these vendor
specific devices (I already saw this on an ASUS).
While autoloading should still be ok (both are tried, maybe even both
are needed), we need to find out which one need to be used in which
condition.
I could imagine if we pass some kind of "Vista" OSI string, the ACPI
video spec stuff is used otherwise e.g. the ATK Asus specific things...
It might even be mixed up, that some functions of the video device
driver are provided, but hotkeys are still working with the other
driver...
I fear getting this right for all kind of laptops won't be that easy.
Thomas
BTW: I also saw a laptop (IIRC it was a sony) with asus and sony ACPI
device.
When both drivers got loaded things broke.
A solution was to only let the asus driver get active if the device is
known. Currently, not sure whether still (I sent a patch a while ago),
the Asus driver falls back to a default ("M6N"?) configuration. IMO this
is a bit too dangerous and instead a message like "unsupported ASUS
model found, please send acpidump to linux-acpi@vger.kernel.org".
next prev parent reply other threads:[~2007-06-20 17:47 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-06-17 20:24 [PATCH 1/3] ACPI autoloading - ACPICA adjustance Thomas Renninger
2007-06-17 20:27 ` [PATCH 2/3] ACPI autoloading - Create acpi alias interface Thomas Renninger
2007-06-17 20:24 ` [PATCH 3/3] ACPI autoloading - Create __mod_acpi_device_table symbol for all acpi drivers Thomas Renninger
2007-06-17 22:49 ` Henrique de Moraes Holschuh
2007-06-19 12:53 ` Thomas Renninger
2007-06-19 16:23 ` Mattia Dongili
2007-06-19 21:27 ` Henrique de Moraes Holschuh
2007-07-03 7:11 ` Len Brown
2007-07-03 15:06 ` Henrique de Moraes Holschuh
2007-06-20 17:06 ` Mattia Dongili
2007-06-20 17:47 ` Thomas Renninger [this message]
2007-06-21 4:16 ` Mattia Dongili
2007-07-03 7:15 ` Len Brown
2007-07-04 7:33 ` Mattia Dongili
2007-07-04 10:17 ` Thomas Renninger
2007-06-20 15:52 ` [PATCH 2/3] ACPI autoloading - Create acpi alias interface Mattia Dongili
2007-06-20 17:24 ` Thomas Renninger
2007-07-03 7:58 ` [PATCH 1/3] ACPI autoloading - ACPICA adjustance Len Brown
2007-07-03 12:23 ` Thomas Renninger
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=1182361643.28514.708.camel@queen.suse.de \
--to=trenn@suse.de \
--cc=acpi4asus-user@lists.sourceforge.net \
--cc=hmh@hmh.eng.br \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=malattia@linux.it \
/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