From mboxrd@z Thu Jan 1 00:00:00 1970
Received: from mail-lf1-f48.google.com ([209.85.167.48]) by ewsd; Fri Sep 25 03:38:21 EDT 2020
Received: by mail-lf1-f48.google.com with SMTP id q8so1718886lfb.6
for <9front@9front.org>; Fri, 25 Sep 2020 00:38:17 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=20161025;
h=from:to:subject:date:message-id:user-agent:mime-version;
bh=u+qOEjMwwEeNOPx3ohEjKMOERfmghBuz8RtMujx1SPk=;
b=T3ACb0kAJ3ckPQtFmH7dJA5YQTugdgeCm7jt1Es2eEunfBXyH1Wo+D9HC+saQitRcO
pAJxK1CKojPGayBYIHgDEUXsMiETTy+zmhcLb8VD3LfKVKi6oO95T1jIX4z/CRoUHA96
ByWvr44Ge/h4mbr+cmk8kx+SvzdRl4QW9zTkQJ66X4Brv+XJz50vEjLW8MugCFFXszjL
CamrQCNvdO0oAMep4OFSi1+Z6KbLS4LO36GtGK/Bk4+wuGYiLRjCPo4zFvKEmwaV8DE/
bqozCGZ08vpdJNSxEmnRz8pgFqs2LE783UgVPKQvCyzvNqE/+04jRWPKZ4hATC868uhT
CBaA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20161025;
h=x-gm-message-state:from:to:subject:date:message-id:user-agent
:mime-version;
bh=u+qOEjMwwEeNOPx3ohEjKMOERfmghBuz8RtMujx1SPk=;
b=ktKt92JP0rxnp1vyH38J63lTxizSOW8nS+hONT6wpTeYBm3QqLpHpuQgiekDTH8gRc
ORGE1DNE6it4sRsMneCjyq7DoXQptnKcjlErnLtUJ3vQ0s0KhhocQPgWtk/GAFVGufkw
YWL5SjzyUAXXBm3dt+8ryS2+Xp5QaQsU1GHd1+nmvhqmHmgmGiYlCS/lGGiUMFlPkggb
r83L+IdbTaO6JhTJ0JHeWCbYTaO6d1ZZPPttyOS0NLM4HK7/hqDPvOb5YD7fYRv+bCp8
lB6Bm9JobTDBZrjMrYf1E0dSNw3UTjgAz8vmV7oZdLuHfOrb4XQyOcXrTyt2N1xEr/fD
is0g==
X-Gm-Message-State: AOAM5338BktLwO3q0kfl2VyCWXA1RGTqPzL9ryATji8rob8IcPKjm4pa
mLeiWK7AMlL933pvxk13FvC9pL2KKyw=
X-Google-Smtp-Source: ABdhPJytQA3uoowE7hLw7XcvqTHQ86IWRXvgsUEAJkiNNUPU/HP75uJlDo+X6mQFlIMndnxYWpLzLA==
X-Received: by 2002:a19:4319:: with SMTP id q25mr842846lfa.353.1601019496103;
Fri, 25 Sep 2020 00:38:16 -0700 (PDT)
Return-Path:
Received: from localhost ([95.165.9.116])
by smtp.gmail.com with ESMTPSA id x11sm1703916ljh.106.2020.09.25.00.38.15
for <9front@9front.org>
(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
Fri, 25 Sep 2020 00:38:15 -0700 (PDT)
From: Peter Kosyh
To: 9front@9front.org
Subject: [PATCH] EeePC battery status
Date: Fri, 25 Sep 2020 10:38:13 +0300
Message-ID: <8736362tne.fsf@factor-ts.ru>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
List-ID: <9front.9front.org>
List-Help:
X-Glyph: ➈
X-Bullshit: shared high-performance-based XML over HTTP rich-client hardware
--=-=-=
Content-Type: text/plain
Hi all!
Here is the patch to make my EeePC 1000px show battery status via
aux/acpi. Hope it can be useful for someone.
P.S. The main problem with EeePC running 9front is that network
interfaces wifi/ethernet are not supported by 9front. I will try port
them from some BSD, but i am not sure how long time it can take. :)
--=-=-=
Content-Type: text/x-patch
Content-Disposition: inline; filename=eeepc-battery.diff
diff -r 5ca47d85e288 sys/src/cmd/aux/acpi.c
--- a/sys/src/cmd/aux/acpi.c Mon Sep 21 11:43:31 2020 -0700
+++ b/sys/src/cmd/aux/acpi.c Fri Sep 25 10:16:52 2020 +0300
@@ -83,7 +83,39 @@
{{Qcputemp}, "cputemp", 0444, tmpread, nil},
{{Qctl}, "ctl", 0666, ctlread, ctlwrite},
};
+static char*
+eisaid(void *v)
+{
+ static char id[8];
+ ulong b, l;
+ int i;
+ if(amltag(v) == 's')
+ return v;
+ b = amlint(v);
+ for(l = 0, i=24; i>=0; i -= 8, b >>= 8)
+ l |= (b & 0xFF) << i;
+ id[7] = 0;
+ for(i=6; i>=3; i--, l >>= 4)
+ id[i] = "0123456789ABCDEF"[l & 0xF];
+ for(i=2; i>=0; i--, l >>= 5)
+ id[i] = '@' + (l & 0x1F);
+ return id;
+}
+static int
+enumec(void *dot, void *)
+{
+ void *p;
+ char *id;
+ id = eisaid(amlval(amlwalk(dot, "^_HID")));
+ if (id == nil || strcmp(id, "PNP0C09") != 0)
+ return 1;
+ p = amlwalk(dot, "^_REG");
+ if (p != nil) {
+ amleval(p, "ii", 0x3, 1, nil);
+ }
+ return 1;
+}
static int
enumbat(void *dot, void *)
{
@@ -501,6 +533,7 @@
}
close(fd);
+ amlenum(amlroot, "_HID", enumec, nil);
amlenum(amlroot, "_BIF", enumbat, nil);
amlenum(amlroot, "_PSL", enumtmp, nil);
--=-=-=--