ref: 3f09d4b623b0e47d0f1dc6ced19345c0d9454834
parent: f5e45a02d4e1621a9720b3abcadd6b12e7fb4be0
author: cinap_lenrek <cinap_lenrek@felloff.net>
date: Tue Nov 4 01:42:39 EST 2014
acpi: fix pcibusno() when PCI0._ADR = 0 libaml comresses zero integer as nil, so remove the nil check. this makes interrupts work in vmware with efi.
--- a/sys/src/9/pc/archacpi.c
+++ b/sys/src/9/pc/archacpi.c
@@ -260,9 +260,7 @@
if((x = amlwalk(dot, "^_BBN")) == nil)
if((x = amlwalk(dot, "^_ADR")) == nil)
return -1;
- if((p = amlval(x)) == nil)
- return -1;
- adr = amlint(p);
+ adr = amlint(amlval(x));
/* if root bridge, then we are done here */
if(id != nil && (strcmp(id, "PNP0A03")==0 || strcmp(id, "PNP0A08")==0))
return adr;