Date: Fri, 19 Mar 2010 04:30:48 +0100 From: Dan Lukes <dan@obluda.cz> To: Joerg Wunsch <joerg_wunsch@uriah.heep.sax.de> Cc: freebsd-acpi@freebsd.org Subject: Re: Funny battery values (nx6325) Message-ID: <4BA2EFE8.60004@obluda.cz> In-Reply-To: <20100318195312.GQ52442@uriah.heep.sax.de> References: <20100315062028.GC52442@uriah.heep.sax.de> <20100317070428.GA2924@server.vk2pj.dyndns.org> <20100317074549.GC52442@uriah.heep.sax.de> <1268829363.6171.13.camel@RabbitsDen> <20100318195312.GQ52442@uriah.heep.sax.de>
next in thread | previous in thread | raw e-mail | index | archive | help
On 03/18/10 20:53, Joerg Wunsch: > Is anybody able to hint me where the _BIF and _BST methods get their > actual data from? Method (_BIF, 0, NotSerialized) { Return (C1AC (0x00)) } where 0x00 seems to be battery number. The structure that will be returned is here: Name (C1AF, Package (0x02) { Package (0x0D) { 0x01, 0xFFFFFFFF, 0xFFFFFFFF, 0x01, 0xFFFFFFFF, 0x00, 0x00, 0x64, 0x64, "Primary", "100000", "LIon", "Hewlett-Packard" }, And it's filled in C1AC() method. The Design/Last Full Capacity is filled here: Store (C164, Local0) Store (Local0, Index (DerefOf (Index (C1AF, Arg0)), 0x01)) Store (Local0, Index (DerefOf (Index (C1AF, Arg0)), 0x02)) It mean that both numbers are same and come from C164 variable. C164 variable is defined as 16bit variable on offset 0x8D of EmbeddedController (_HID=PNP0C09) memory region. So, now you know from where the Design/Last Full Capacity come from. Unless you have improper BIOS (BIOS for other computer type/version) then there seems not to be problem between ACPI and OS. You should ask why independent embedded controller store such value to memory where the OS is reading it. As far as I know, you can't debug the operations of embedded controller, so you can imagine only why it store such values here ... Dan
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4BA2EFE8.60004>