From: "François Valenduc" <fvalenduc-IWqWACnzNjyZIoH1IeqzKA@public.gmane.org>
To: acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
Cc: Rich Townsend <rhdt-OBnUx95tOyn10jlvfTC4gA@public.gmane.org>
Subject: Re: Re: Smart Battery System driver
Date: Sun, 16 Jan 2005 15:36:51 +0100 [thread overview]
Message-ID: <41EA7C03.7020509@tiscali.be> (raw)
In-Reply-To: <41EA4661.4000304-IWqWACnzNjyZIoH1IeqzKA@public.gmane.org>
Hello again,
In fact, I now have battery and ac adapter info. I just had to remove AC
adapter support in the ACPI support in kernel configuration.
Neverthelss, I still get strange values for the remaining time. Now,
when battery is full loaded, I am suposed to have an autonomy of 54
hours ! That would be wonderful but I don't think it's realstic !
Would you haveAny ideas to solve the problem. Thanks in advance
>
> Rich Townsend a écrit :
>
>> Johan Vromans wrote:
>>
>>> Johannes Kuhlmann <jkuhlmann-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> writes:
>>>
>>>
>>>> I had to put
>>>> EXPORT_SYMBOL(acpi_ec_write); and EXPORT_SYMBOL(acpi_ec_read); after
>>>> the functions in drivers/acpi/ec.c.
>>>
>>>
>>>
>>>
>>> This is one of the issues Bruno's patch addressed...
>>>
>>
>> Yeah, I'd completely forgotten about the patch, until I went back and
>> checked the instructions in Bruno's smartbatt package. D'oh!
>>
>> I've modified the README file accordingly, and placed a copy of the
>> patch in my acpi-sbs package. This is on top of a number of changes &
>> additions to the code, which include:
>>
>> *) Fixed scaling bug when capacity is reported in mWh
>> *) Added a new module parameter, capacity_info, to alter whether
>> capacities are reported in mAh (charge) or mWh (power)
>> *) Fixed a number of bugs in the formatting of info/state output
>> *) Added support for Smart Battery System Manager (SBSM), Smart
>> Battery Selector (SBSEL) and Smart Battery Charge (SBC) subsystems.
>> With the code for these in place, the module correctly (I think)
>> enumerates how many batteries the system can support, which ones are
>> present, etc.
>> *) Added a new legacy interface for the AC adapter, in
>> /proc/acpi/ac_adapter/*/state (where * is typically SBS0).
>> *) Put in semaphores, so the code *might* now be SMP safe. Of course,
>> this may be a purely academic excercise; I've never met the lucky
>> **** who has an SMP laptop :)
>>
>> The latest copy of the code can be obtained from:
>>
>> http://shayol.bartol.udel.edu/~rhdt/download/acpi_sbs-20050116.tar.gz
>>
>> To move forward from here, I'd appreciate some advice from others on
>> this list. In particular
>>
>> *) I'd like some feedback on the directory structure I've chosen. At
>> the moment, the root directory of the Smart Battery System is 'sbs',
>> but would something more verbose like 'smart_battery_system' be
>> appropriate? Also, should various subdirectories, representing
>> subsystems, have more descriptive names -- e.g., 'battery_A' instead
>> of 'SB0' (the SBS spec. refers to the batteries as 'A', 'B' etc),
>> 'selector' instead of 'SBSL', and so on?
>>
>> *) I'd appreciate feedback from people with systems *other* than Acer
>> TravelMater 4x00 laptops, to help check parts of the code that are
>> not accessed on these machines (e.g., the Smart Battery System
>> Manager code; my TM4502 laptop has an older Smart Battery Selector)
>>
>> *) The code to update the Smart Battery System state from the SMBus
>> is terribly slow, presumably because SMBus itself is a slow protocol.
>> Unfortunately, this has the effect of freezing the system (including
>> loss of keystrokes and/or mouse movements) whenever an update occurs.
>> Typically, these freezes will arise every few seconds, as monitoring
>> tools (e.g., gkrellm, wmacpi) poll the /proc/acpi interfaces. The
>> jerkiness that results is unacceptable to many, including myself. How
>> might I go about fixing this? I've tried putting a schedule() call
>> after every individual SMBus access, but that appears to have little
>> effect on the system responsiveness.
>>
>> *) I'm not sure how to go about implmeneting Alarm functionality, not
>> only to deal with low-power scenarios, but also to detect
>> asynchronous events such as AC on-line/off-line and battery change,
>> without the need for polling. Certainly, interrupts *are* being
>> generated somewhere, as evidenced by the incrementing value of the
>> acpi field in /proc/interrupts. Furthermore, with ACPI debugging
>> enabled, I can see the embedded controller handling the events; for
>> instance, an AC off-line event produces the following debug output:
>>
>> Execute Method: [\_SB_.PCI0.LPC0.EC0_._Q20] (Node dded7de8)
>> acpi_ec-0180 [5125] acpi_ec_read : Read [c0] from address [19]
>> acpi_ec-0180 [5125] acpi_ec_read : Read [14] from address [3d]
>> acpi_ec-0180 [5125] acpi_ec_read : Read [c0] from address [19]
>> acpi_ec-0232 [5126] acpi_ec_write : Wrote [80] to address [19]
>>
>> The corresponding DSL code for function _Q20 of my DSDT is:
>>
>> Method (_Q20, 0, NotSerialized)
>> {
>> If (And (SMST, 0x40))
>> {
>> Store (SMAA, Local0)
>> If (LEqual (Local0, 0x14))
>> {
>> And (SMST, 0xBF, SMST)
>> }
>> }
>> }
>>
>> ...which unfortunately doesn't mean a whole lot to me. How can I
>> install some form of a handler, so that when the EC detects a Smart
>> Battery event (and -- as per the ACPI spec -- sets the EC Alarm
>> Address and Data registers), and then fires off a General Purpose
>> Event, a chunk of *my* code gets run?
>>
>> Any pointers for the above questions will be very welcome -- and
>> thanks to everyone who has responded with bug reports so far.
>>
>> cheers,
>>
>> Rich
>>
>>
>> -------------------------------------------------------
>> The SF.Net email is sponsored by: Beat the post-holiday blues
>> Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
>> It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt
>> _______________________________________________
>> Acpi-devel mailing list
>> Acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
>> https://lists.sourceforge.net/lists/listinfo/acpi-devel
>>
>
>
>
> -------------------------------------------------------
> The SF.Net email is sponsored by: Beat the post-holiday blues
> Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
> It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt
> _______________________________________________
> Acpi-devel mailing list
> Acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
> https://lists.sourceforge.net/lists/listinfo/acpi-devel
>
>
-------------------------------------------------------
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt
next prev parent reply other threads:[~2005-01-16 14:36 UTC|newest]
Thread overview: 88+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-01-14 19:23 Smart Battery System driver Rich Townsend
[not found] ` <41E81C2C.8010809-OBnUx95tOyn10jlvfTC4gA@public.gmane.org>
2005-01-15 0:06 ` David Gómez
2005-01-15 0:12 ` Pedro Venda
2005-01-15 0:13 ` Matthew Garrett
2005-01-15 3:03 ` Johannes Kuhlmann
[not found] ` <47e0449d05011419037877f931-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2005-01-15 10:57 ` Johan Vromans
[not found] ` <m2fz13x8mw.fsf-KjnUIgV0B0bak1Ioo/c9IoRWq/SkRNHw@public.gmane.org>
2005-01-15 14:24 ` Johannes Kuhlmann
2005-01-16 8:55 ` Rich Townsend
[not found] ` <41EA2C1D.3030909-OBnUx95tOyn10jlvfTC4gA@public.gmane.org>
2005-01-16 10:48 ` François Valenduc
[not found] ` <41EA4661.4000304-IWqWACnzNjyZIoH1IeqzKA@public.gmane.org>
2005-01-16 14:36 ` François Valenduc [this message]
2005-01-16 10:49 ` Karol Kozimor
2005-01-17 11:41 ` Bruno Ducrot
2005-01-17 16:27 ` Pedro Venda
[not found] ` <41EBE769.7050107-pQd4kjVL+REh2FBCd0jGRA@public.gmane.org>
2005-01-18 1:36 ` Rich Townsend
[not found] ` <41EC6829.1070901-OBnUx95tOyn10jlvfTC4gA@public.gmane.org>
2005-01-18 11:11 ` Matthew Garrett
2005-01-18 11:23 ` Zdzisław A. Kaleta
[not found] ` <200501181223.22954.sanskryt-FWhLrETftxM@public.gmane.org>
2005-01-18 12:20 ` Zdzisław A. Kaleta
2005-01-18 15:46 ` Rich Townsend
2005-01-18 3:03 ` Rich Townsend
[not found] ` <41EC7C7D.1070003-OBnUx95tOyn10jlvfTC4gA@public.gmane.org>
2005-01-18 4:39 ` Rich Townsend
[not found] ` <41EC9316.80109-OBnUx95tOyn10jlvfTC4gA@public.gmane.org>
2005-01-18 13:00 ` Pedro Venda
2005-01-19 4:32 ` Rich Townsend
[not found] ` <41EDE2EA.7090404-OBnUx95tOyn10jlvfTC4gA@public.gmane.org>
2005-01-19 9:36 ` Johan Vromans
[not found] ` <m2u0pdn4js.fsf-KjnUIgV0B0bak1Ioo/c9IoRWq/SkRNHw@public.gmane.org>
2005-01-19 13:31 ` Rich Townsend
2005-01-19 14:11 ` Johan Vromans
2005-01-19 18:49 ` Jeroen Wijnhout
[not found] ` <200501191949.03558.Jeroen.Wijnhout-sVbgdUKTYbrR7s880joybQ@public.gmane.org>
2005-01-19 19:10 ` Olaf Jansen-Olliges
[not found] ` <200501192010.25975.o.jansen-n+qsWun7DryELgA04lAiVw@public.gmane.org>
2005-01-19 21:55 ` Johan Vromans
[not found] ` <m28y6pytgs.fsf-KjnUIgV0B0bak1Ioo/c9IoRWq/SkRNHw@public.gmane.org>
2005-01-19 22:24 ` Rich Townsend
2005-01-20 8:36 ` Olaf Jansen-Olliges
[not found] ` <200501200936.21831.o.jansen-n+qsWun7DryELgA04lAiVw@public.gmane.org>
2005-01-20 9:22 ` Johan Vromans
2005-01-20 9:10 ` Jeroen Wijnhout
2005-01-20 3:03 ` Rich Townsend
[not found] ` <41EF1F6A.5000807-OBnUx95tOyn10jlvfTC4gA@public.gmane.org>
2005-01-20 15:12 ` Pedro Venda
[not found] ` <41EFCA59.6040100-pQd4kjVL+REh2FBCd0jGRA@public.gmane.org>
2005-01-20 16:04 ` Rich Townsend
[not found] ` <41EFD672.2040308-OBnUx95tOyn10jlvfTC4gA@public.gmane.org>
2005-01-20 21:10 ` Stefan Seyfried
[not found] ` <20050120211044.GA27543-l0tNAEGuAhhzZ8+rp42Dbp9+tswZ0GTaehPwdyo5hKaELgA04lAiVw@public.gmane.org>
2005-01-21 13:16 ` Pedro Venda
[not found] ` <41F1009C.30201-pQd4kjVL+REh2FBCd0jGRA@public.gmane.org>
2005-01-21 17:48 ` Stefan Seyfried
2005-09-06 3:25 ` Antoni Villalonga
[not found] ` <75eeb70e05090520257be89afa-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2005-09-06 6:19 ` Olaf Jansen-Olliges
[not found] ` <200509060819.13292.o.jansen-n+qsWun7DryELgA04lAiVw@public.gmane.org>
2005-09-06 6:48 ` Yu Luming
[not found] ` <200509061448.12234.luming.yu-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2005-09-06 6:54 ` Olaf Jansen-Olliges
[not found] ` <200509060854.14417.o.jansen-n+qsWun7DryELgA04lAiVw@public.gmane.org>
2005-09-06 6:57 ` Yu Luming
[not found] ` <200509061457.23947.luming.yu-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2005-09-06 7:05 ` Olaf Jansen-Olliges
2005-09-06 8:41 ` Olaf Jansen-Olliges
[not found] ` <200509061041.21722.o.jansen-n+qsWun7DryELgA04lAiVw@public.gmane.org>
2005-09-06 9:34 ` Yu Luming
[not found] ` <200509061734.11182.luming.yu-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2005-09-06 11:57 ` Olaf Jansen-Olliges
2005-09-08 9:04 ` Olaf Jansen-Olliges
2005-09-06 6:38 ` Yu Luming
2005-09-06 19:53 ` Antoni Villalonga
[not found] ` <75eeb70e050906125344c326ad-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2005-09-06 20:38 ` François Valenduc
2005-09-09 21:59 ` Antoni Villalonga
2005-09-07 7:51 ` David Gómez
2005-01-20 20:38 ` Johan Vromans
[not found] ` <m2wtu74yzq.fsf-KjnUIgV0B0bak1Ioo/c9IoRWq/SkRNHw@public.gmane.org>
2005-01-20 20:48 ` Rich Townsend
[not found] ` <41F01923.1000503-OBnUx95tOyn10jlvfTC4gA@public.gmane.org>
2005-01-20 21:31 ` Johan Vromans
[not found] ` <m2sm4v4wk7.fsf-KjnUIgV0B0bak1Ioo/c9IoRWq/SkRNHw@public.gmane.org>
2005-01-21 2:57 ` Bernard Blackham
2005-01-21 13:20 ` Pedro Venda
2005-01-21 13:24 ` Johan Vromans
[not found] ` <16881.652.864369.5956-KjnUIgV0B0bak1Ioo/c9IoRWq/SkRNHw@public.gmane.org>
2005-01-21 13:34 ` Pedro Venda
[not found] ` <41F10180.60008-pQd4kjVL+REh2FBCd0jGRA@public.gmane.org>
2005-01-21 13:26 ` Rich Townsend
[not found] ` <41F1031E.60507-OBnUx95tOyn10jlvfTC4gA@public.gmane.org>
2005-01-21 13:42 ` Pedro Venda
[not found] ` <41F106C9.5020404-pQd4kjVL+REh2FBCd0jGRA@public.gmane.org>
2005-01-21 15:01 ` Rich Townsend
[not found] ` <41F11940.5010101-OBnUx95tOyn10jlvfTC4gA@public.gmane.org>
2005-01-21 20:16 ` Pedro Venda
[not found] ` <41F1631C.1030701-pQd4kjVL+REh2FBCd0jGRA@public.gmane.org>
2005-01-21 20:31 ` Rich Townsend
2005-01-21 14:17 ` Zdzisław A. Kaleta
2005-01-23 16:02 ` Pavel Machek
[not found] ` <20050123160244.GA1364-I/5MKhXcvmPrBKCeMvbIDA@public.gmane.org>
2005-01-23 17:36 ` Pedro Venda
[not found] ` <41F3E095.6060805-pQd4kjVL+REh2FBCd0jGRA@public.gmane.org>
2005-01-24 11:50 ` Stefan Seyfried
2005-01-21 0:31 ` ultrakorne
[not found] ` <41F04D5A.8060304-XtQPfPCVGG7srOwW+9ziJQ@public.gmane.org>
2005-01-25 4:54 ` Rich Townsend
2005-01-18 10:26 ` Bruno Ducrot
[not found] ` <20050118102635.GV19199-kk6yZipjEM5g9hUCZPvPmw@public.gmane.org>
2005-01-18 15:39 ` Rich Townsend
[not found] ` <41ED2DB8.70707-OBnUx95tOyn10jlvfTC4gA@public.gmane.org>
2005-01-19 11:09 ` Bruno Ducrot
2005-01-15 6:38 ` Rich Townsend
2005-01-17 13:20 ` Bruno Ducrot
[not found] ` <20050117132023.GT19199-kk6yZipjEM5g9hUCZPvPmw@public.gmane.org>
2005-01-17 14:21 ` Hendrik Jürgens
2005-01-17 11:33 ` Bruno Ducrot
2005-01-17 21:11 ` Zdzisław A. Kaleta
[not found] ` <200501172211.37583.sanskryt-FWhLrETftxM@public.gmane.org>
2005-01-17 23:58 ` Zdzisław A. Kaleta
2005-01-17 22:40 ` ultrakorne
-- strict thread matches above, loose matches on Subject: below --
2005-01-20 22:04 Grover, Andrew
[not found] ` <F760B14C9561B941B89469F59BA3A84708CBB988-sBd4vmA9Se6krb+BlOpmy7fspsVTdybXVpNB7YpNyf8@public.gmane.org>
2005-01-20 22:12 ` Karol Kozimor
2005-01-21 0:03 ` Matthew Garrett
2005-01-21 12:02 ` Paul Ionescu
2005-01-21 10:06 ` Simon Fowler
[not found] ` <20050121100618.GA3945-Ji7FXtOmRLs@public.gmane.org>
2005-01-21 13:22 ` Rich Townsend
2005-01-21 14:14 ` Stefan Seyfried
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=41EA7C03.7020509@tiscali.be \
--to=fvalenduc-iwqwacnznjyzioh1ieqzka@public.gmane.org \
--cc=acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
--cc=rhdt-OBnUx95tOyn10jlvfTC4gA@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