public inbox for linux-acpi@vger.kernel.org
 help / color / mirror / Atom feed
From: Rich Townsend <rhdt-OBnUx95tOyn10jlvfTC4gA@public.gmane.org>
To: Bruno Ducrot <ducrot-kk6yZipjEM5g9hUCZPvPmw@public.gmane.org>
Cc: Acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
Subject: Re: New SmartBattery DSDT-based controller
Date: Mon, 31 Jan 2005 11:34:49 -0500	[thread overview]
Message-ID: <41FE5E29.9020308@bartol.udel.edu> (raw)
In-Reply-To: <20050131151235.GB1145-kk6yZipjEM5g9hUCZPvPmw@public.gmane.org>

Bruno Ducrot wrote:

<snip>
> 
> You should provide at least diffs or else be prepared for rewrite some.

Yep, I realized this once I had sent my original email. Also, diffs get 
around the copyright issue of posting vendors' ASL on the web.

> THere is those stuff in those ASLs:
> 
> ducrot@neptune:~/acpi_hack$ grep SystemMemo tm4502lmi-sbs-cm.asl
>     OperationRegion (MNVS, SystemMemory, 0x1DEECE59, 0x60)
>                 OperationRegion (VNVS, SystemMemory, 0x1DEECEB9, 0x00010004)
>                 OperationRegion (SMI1, SystemMemory, 0x1DEFCEBD, 0x00000090)
> 
> That means that if someone owns a tm4502lmi, but different amount of
> RAM, then all of those ORs will likely fail.

I would be very surprised by this. If this were true, a simple RAM 
upgrade would invalidate the DSDT --- certainly not the case. But as I 
say, your point about diffs is well made.

> 
> I don't see the point of making this if this is only for
> smartbatt.  Do you have to override the DSDT for something else
> (and then, well, why not)?

Maybe sometimes things are better done by fixing the DSDT, rather than 
adding more bloat into the kernel. And I use the word 'fixing' 
carefully; many modern laptops use smart batteries, but expose these 
batteries to the OS via the tradition Control Method (CM) interface. In 
that sence, Acer's DSDTs are broken, because they lack the necessary CM 
wrapper for the smart battery system (SBS).

There's certainly a case to be made that smart batteries should be dealt 
with natively in the kernel, since an SBS has many more data than a CM 
interface can expose. However, there are a number of design questions 
that need to be addressed before this issue can be tackled in a proper 
manner (I consider my acpi-sbs module to be little more than a 
proof-of-concept). In particular,

*) Others have pointed out that a unified kernel API for batteries & 
power sources is required, to hide the messy CM vs. SBS details away. 
What should this API do? Will it provide /proc entries? How will it keep 
backward compatibility with all of those applications that look in 
/proc/acpi/battery/*

*) How should we deal with systems that present a CM interface in their 
DSDT, but are internally implemented using SBS? Should the DSDT 
interface be bypassed, to expose the full SBS data?

*) With SBS being accessed via the SMBus, how do we deal with the 
messyness of having ACPI-related code depend on I2C code? Should the 
SMBus access be performed totally independent of the rest of the kernel 
I2C framework?

Just some thoughts...

On a final note: yes, I know the DSDT hacking solution seems awful to 
those who would rather do it all in the kernel. However, my viewpoint is 
this: I had an itch to scratch. I have scratched it. Others can scratch 
too. Don't sweat over the elegance of the scratching, it will all come 
out OK in the end...

cheers,

Rich

PS To all who have sent me their DSDTs: thanks, I'll be releasing a set 
of patches later on this week. Sit tight!


-------------------------------------------------------
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
Tool for open source databases. Create drag-&-drop reports. Save time
by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
Download a FREE copy at http://www.intelliview.com/go/osdn_nl

  parent reply	other threads:[~2005-01-31 16:34 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-01-29 19:02 New SmartBattery DSDT-based controller Rich Townsend
     [not found] ` <41FBDDE2.1050403-OBnUx95tOyn10jlvfTC4gA@public.gmane.org>
2005-01-29 22:41   ` Johan Vromans
     [not found]     ` <m27jlvx3i3.fsf-KjnUIgV0B0bak1Ioo/c9IoRWq/SkRNHw@public.gmane.org>
2005-01-29 23:45       ` Rich Townsend
     [not found]         ` <41FC2022.2080804-OBnUx95tOyn10jlvfTC4gA@public.gmane.org>
2005-01-30  9:17           ` Johan Vromans
     [not found]             ` <m2mzur6zt6.fsf-KjnUIgV0B0bak1Ioo/c9IoRWq/SkRNHw@public.gmane.org>
2005-01-30 13:38               ` Rich Townsend
     [not found]                 ` <41FCE348.3010304-OBnUx95tOyn10jlvfTC4gA@public.gmane.org>
2005-01-30 14:31                   ` Karol Kozimor
2005-01-30 15:00                   ` Matthew Garrett
2005-01-30 14:59   ` Matthew Garrett
2005-01-30 15:31     ` Rich Townsend
2005-01-30 19:40     ` Johan Vromans
2005-01-31 22:59     ` Pavel Machek
2005-01-30 15:15   ` Pedro Venda
2005-01-31  9:50   ` Johan Vromans
     [not found]     ` <m24qgyorl3.fsf-KjnUIgV0B0bak1Ioo/c9IoRWq/SkRNHw@public.gmane.org>
2005-01-31 10:02       ` David Goodenough
     [not found]         ` <200501311002.36671.david.goodenough-6b45v/Ft3lbby3iVrkZq2A@public.gmane.org>
2005-01-31 12:16           ` Johan Vromans
     [not found]             ` <m2oef5oksl.fsf-KjnUIgV0B0bak1Ioo/c9IoRWq/SkRNHw@public.gmane.org>
2005-02-06 21:40               ` Johan Vromans
2005-01-31 11:57       ` Rich Townsend
     [not found]         ` <41FE1D2D.8030006-OBnUx95tOyn10jlvfTC4gA@public.gmane.org>
2005-01-31 12:16           ` Johan Vromans
2005-01-31 15:12   ` Bruno Ducrot
     [not found]     ` <20050131151235.GB1145-kk6yZipjEM5g9hUCZPvPmw@public.gmane.org>
2005-01-31 15:39       ` Johan Vromans
     [not found]         ` <m2k6ptobfm.fsf-KjnUIgV0B0bak1Ioo/c9IoRWq/SkRNHw@public.gmane.org>
2005-01-31 15:44           ` Karol Kozimor
2005-01-31 15:52           ` Ville Syrjälä
2005-01-31 15:59           ` Bruno Ducrot
     [not found]             ` <20050131155935.GD1145-kk6yZipjEM5g9hUCZPvPmw@public.gmane.org>
2005-01-31 17:48               ` Johan Vromans
     [not found]                 ` <m2u0oxjxqe.fsf-KjnUIgV0B0bak1Ioo/c9IoRWq/SkRNHw@public.gmane.org>
2005-01-31 18:30                   ` Bruno Ducrot
2005-01-31 16:34       ` Rich Townsend [this message]
     [not found]         ` <41FE5E29.9020308-OBnUx95tOyn10jlvfTC4gA@public.gmane.org>
2005-01-31 16:54           ` Bruno Ducrot
2005-01-31 17:28           ` Karol Kozimor
2005-02-06  2:19   ` sbs-linux: smart batteries on SourceForge (was New SmartBattery DSDT-based controller) Rich Townsend
     [not found]     ` <42057EBE.5090102-OBnUx95tOyn10jlvfTC4gA@public.gmane.org>
2005-02-06 13:33       ` François Valenduc
     [not found]         ` <42061CB8.5040205-IWqWACnzNjyZIoH1IeqzKA@public.gmane.org>
2005-02-06 14:10           ` Olaf Jansen-Olliges
2005-02-06 17:28       ` sbs-linux: smart batteries on SourceForge Johan Vromans
     [not found]         ` <m28y61a98u.fsf-KjnUIgV0B0bak1Ioo/c9IoRWq/SkRNHw@public.gmane.org>
2005-02-06 19:25           ` Johan Vromans
     [not found]             ` <m2oeex7ap2.fsf-KjnUIgV0B0bak1Ioo/c9IoRWq/SkRNHw@public.gmane.org>
2005-02-06 19:29               ` Rich Townsend
     [not found]         ` <42066328.1080601@bartol.udel.edu>
2005-02-06 19:34           ` Johan Vromans
2005-02-07  9:32       ` Johan Vromans
     [not found]         ` <m23bw8zpdz.fsf-KjnUIgV0B0bak1Ioo/c9IoRWq/SkRNHw@public.gmane.org>
2005-02-07 12:06           ` Rich Townsend
     [not found]             ` <420759DB.1000009-OBnUx95tOyn10jlvfTC4gA@public.gmane.org>
2005-02-07 12:49               ` David Goodenough
     [not found]                 ` <200502071249.40300.david.goodenough-6b45v/Ft3lbby3iVrkZq2A@public.gmane.org>
2005-02-08 18:53                   ` Hendrik Jürgens
2005-02-06 21:42   ` New SmartBattery DSDT-based controller Johan Vromans
     [not found]     ` <m2mzuhz7pg.fsf-KjnUIgV0B0bak1Ioo/c9IoRWq/SkRNHw@public.gmane.org>
2005-02-06 21:52       ` Rich Townsend
     [not found]         ` <42069196.707-OBnUx95tOyn10jlvfTC4gA@public.gmane.org>
2005-02-07  9:27           ` Johan Vromans

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=41FE5E29.9020308@bartol.udel.edu \
    --to=rhdt-obnux95toyn10jlvftc4ga@public.gmane.org \
    --cc=Acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
    --cc=ducrot-kk6yZipjEM5g9hUCZPvPmw@public.gmane.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