diff options
author | mia soweli <inbox@tachibana-labs.org> | 2023-05-18 20:13:14 +0000 |
---|---|---|
committer | Sigrid Solveig Haflínudóttir <sigrid@ftrv.se> | 2023-05-18 20:13:14 +0000 |
commit | 93837692bbaab28e01ea1178d8867047bbcad11d (patch) | |
tree | e2dc7f78bb406fac21226106c3f3c86ce556e231 /sys/src/cmd/aux | |
parent | 0883ed0a61c38898ad926ea67eb0e9386dff4ecd (diff) |
libaml: tow eisaid inside the environment
Diffstat (limited to 'sys/src/cmd/aux')
-rw-r--r-- | sys/src/cmd/aux/acpi.c | 24 |
1 files changed, 3 insertions, 21 deletions
diff --git a/sys/src/cmd/aux/acpi.c b/sys/src/cmd/aux/acpi.c index dc362cfc6..697572949 100644 --- a/sys/src/cmd/aux/acpi.c +++ b/sys/src/cmd/aux/acpi.c @@ -63,32 +63,14 @@ static char *uid = "pm", *units[] = {"mW", "mA"}; static Therm therms[16]; static Bat bats[4]; -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"))); + + p = amlval(amlwalk(dot, "^_HID")); + id = amleisaid(p); if(id == nil || strcmp(id, "PNP0C09") != 0) return 1; p = amlwalk(dot, "^_REG"); |