Did it work?

On Sat, Jun 19, 2010 at 02:41:10PM +0200, Jan Johansson wrote:
> [email protected] wrote:
> > This patch is for an issue seen with ACPI on a HP Laptop but wanted to get
> > some additional testing done.  Some debugging prints in for now.
> 
> Had some problem with the last hunk but applied it manually cvs
> diff is at the bottom for verification.
> 
> For more info on the machine see PR 6379 or send me a note.
> 
> OpenBSD 4.7-current (GENERIC.MP) #0: Sat Jun 19 11:33:25 CEST 2010
>     [email protected]:/usr/src/sys/arch/i386/compile/GENERIC.MP
> cpu0: Intel(R) Core(TM)2 Duo CPU T7300 @ 2.00GHz ("GenuineIntel" 686-class) 2 
> GHz
> cpu0: 
> FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,SBF,SSE3,MWAIT,DS-CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM
> real mem  = 1047818240 (999MB)
> avail mem = 1005146112 (958MB)
> mainbus0 at root
> bios0 at mainbus0: AT/286+ BIOS, date 11/04/08, BIOS32 rev. 0 @ 0xf0000, 
> SMBIOS rev. 2.4 @ 0xf3253 (27 entries)
> bios0: vendor Hewlett-Packard version "68MCU Ver. F.17" date 11/04/2008
> bios0: Hewlett-Packard HP Compaq 6910p
> acpi0 at bios0: rev 2
> acpi0: tables DSDT FACP SLIC HPET APIC MCFG TCPA ASF! SSDT SSDT SSDT SSDT SSDT
> acpi0: wakeup devices C0B0(S5) C108(S3) C10F(S3) C110(S3) C111(S3) C119(S3) 
> C11A(S3) C11B(S3) C131(S5) C2A7(S5) C132(S5) C2A8(S5) C134(S5) C2A8(S5) 
> C137(S0) C23D(S5)
> acpitimer0 at acpi0: 3579545 Hz, 24 bits
> acpihpet0 at acpi0: 14318179 Hz
> acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat
> cpu0 at mainbus0: apid 0 (boot processor)
> cpu0: apic clock running at 199MHz
> cpu1 at mainbus0: apid 1 (application processor)
> cpu1: Intel(R) Core(TM)2 Duo CPU T7300 @ 2.00GHz ("GenuineIntel" 686-class) 2 
> GHz
> cpu1: 
> FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,SBF,SSE3,MWAIT,DS-CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM
> ioapic0 at mainbus0: apid 1 pa 0xfec00000, version 20, 24 pins
> ioapic0: misconfigured as apic 0, remapped to apid 1
> copy objref: 5b12 \\_OSI
> MULTI: \\_SB_.C3C3.C3CD.C3CE
> acpiprt0 at acpi0: bus 2 (C0B0)
> acpiprt1 at acpi0: bus 8 (C11D)
> acpiprt2 at acpi0: bus 16 (C131)
> acpiprt3 at acpi0: bus 40 (C134)
> acpiprt4 at acpi0: bus 0 (C003)
> acpiec0 at acpi0
> acpicpu0 at acpi0MULTI: \\_PR_.CPU0._OSC.UID0
> MULTI: \\_PR_.CPU0._OSC.UID0
> : C3, C2, C1, PSS
> acpicpu1 at acpi0MULTI: \\_PR_.CPU1._OSC.UID1
> MULTI: \\_PR_.CPU1._OSC.UID1
> : C3, C2, C1, PSS
> acpipwrres0 at acpi0: C272
> acpipwrres1 at acpi0: C27A
> acpipwrres2 at acpi0: C281
> acpipwrres3 at acpi0: C29D
> acpipwrres4 at acpi0: C1C5
> acpipwrres5 at acpi0: C3B9
> acpipwrres6 at acpi0: C3BA
> acpipwrres7 at acpi0: C3BB
> acpipwrres8 at acpi0: C3BC
> acpipwrres9 at acpi0: C3BD
> acpitz0 at acpi0: critical temperature 105 degC
> acpitz1 at acpi0: critical temperature 105 degC
> acpitz2 at acpi0: critical temperature 110 degC
> acpitz3 at acpi0: critical temperature 256 degC
> acpitz4 at acpi0: critical temperature 105 degC
> acpibat0 at acpi0: C23B model "Primary" serial 36496 2024/12/16 type LIon oem 
> "Hewlett-Packard"
> acpibat1 at acpi0: C23A not present
> acpiac0 at acpi0: AC unit offline
> acpibtn0 at acpi0: C2BB
> acpibtn1 at acpi0: C153
> acpivideo0 at acpi0: C098
> copy objref: 5b12 \\_SB_.C003.C098.C1AC
> acpivout0 at acpivideo0: C1AD
> acpivout1 at acpivideo0: C1B2
> acpivout2 at acpivideo0: C1B3
> acpivout3 at acpivideo0: C1B4
> bios0: ROM list: 0xc0000/0xee00!
> cpu0: Enhanced SpeedStep 1996 MHz: speeds: 2001, 2000, 1600, 1200, 800 MHz
> pci0 at mainbus0 bus 0: configuration mode 1 (bios)
> pchb0 at pci0 dev 0 function 0 "Intel GM965 Host" rev 0x0c
> vga1 at pci0 dev 2 function 0 "Intel GM965 Video" rev 0x0c
> wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
> wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
> intagp0 at vga1
> agp0 at intagp0: aperture at 0xd0000000, size 0x10000000
> inteldrm0 at vga1: apic 1 int 16 (irq 10)
> drm0 at inteldrm0
> "Intel GM965 Video" rev 0x0c at pci0 dev 2 function 1 not configured
> vendor "Intel", unknown product 0x2a04 (class communications subclass 
> miscellaneous, rev 0x0c) at pci0 dev 3 function 0 not configured
> pciide0 at pci0 dev 3 function 2 "Intel GM965 PT IDER" rev 0x0c: DMA 
> (unsupported), channel 0 wired to native-PCI, channel 1 wired to native-PCI
> pciide0: using apic 1 int 18 (irq 11) for native-PCI interrupt
> pciide0: channel 0 ignored (not responding; disabled or no drives?)
> pciide0: channel 1 ignored (not responding; disabled or no drives?)
> "Intel GM965 KT" rev 0x0c at pci0 dev 3 function 3 not configured
> em0 at pci0 dev 25 function 0 "Intel ICH8 IGP M AMT" rev 0x03: apic 1 int 22 
> (irq 11), address 00:1b:38:95:e7:c6
> uhci0 at pci0 dev 26 function 0 "Intel 82801H USB" rev 0x03: apic 1 int 16 
> (irq 10)
> uhci1 at pci0 dev 26 function 1 "Intel 82801H USB" rev 0x03: apic 1 int 17 
> (irq 10)
> ehci0 at pci0 dev 26 function 7 "Intel 82801H USB" rev 0x03: apic 1 int 18 
> (irq 11)
> usb0 at ehci0: USB revision 2.0
> uhub0 at usb0 "Intel EHCI root hub" rev 2.00/1.00 addr 1
> azalia0 at pci0 dev 27 function 0 "Intel 82801H HD Audio" rev 0x03: apic 1 
> int 17 (irq 10)
> azalia0: codecs: Analog Devices AD1981HD
> audio0 at azalia0
> ppb0 at pci0 dev 28 function 0 "Intel 82801H PCIE" rev 0x03
> pci1 at ppb0 bus 8
> ppb1 at pci0 dev 28 function 1 "Intel 82801H PCIE" rev 0x03
> pci2 at ppb1 bus 16
> iwn0 at pci2 dev 0 function 0 "Intel Wireless WiFi Link 4965" rev 0x61: apic 
> 1 int 17 (irq 10), MIMO 2T3R, MoW2, address 00:13:e8:ee:8d:b7
> ppb2 at pci0 dev 28 function 4 "Intel 82801H PCIE" rev 0x03: apic 1 int 16 
> (irq 10)
> pci3 at ppb2 bus 40
> uhci2 at pci0 dev 29 function 0 "Intel 82801H USB" rev 0x03: apic 1 int 20 
> (irq 10)
> uhci3 at pci0 dev 29 function 1 "Intel 82801H USB" rev 0x03: apic 1 int 22 
> (irq 11)
> uhci4 at pci0 dev 29 function 2 "Intel 82801H USB" rev 0x03: apic 1 int 18 
> (irq 11)
> ehci1 at pci0 dev 29 function 7 "Intel 82801H USB" rev 0x03: apic 1 int 20 
> (irq 10)
> usb1 at ehci1: USB revision 2.0
> uhub1 at usb1 "Intel EHCI root hub" rev 2.00/1.00 addr 1
> ppb3 at pci0 dev 30 function 0 "Intel 82801BAM Hub-to-PCI" rev 0xf3
> pci4 at ppb3 bus 2
> cbb0 at pci4 dev 6 function 0 "Ricoh 5C476 CardBus" rev 0xb9: apic 1 int 18 
> (irq 11)
> cbb1 at pci4 dev 6 function 1 "Ricoh 5C476 CardBus" rev 0xb9: apic 1 int 19 
> (irq 5)
> cardslot0 at cbb0 slot 0 flags 0
> cardbus0 at cardslot0: bus 3 device 0 cacheline 0x0, lattimer 0x20
> pcmcia0 at cardslot0
> cardslot1 at cbb1 slot 1 flags 0
> cardbus1 at cardslot1: bus 4 device 0 cacheline 0x0, lattimer 0x20
> pcmcia1 at cardslot1
> pcib0 at pci0 dev 31 function 0 "Intel 82801HEM LPC" rev 0x03
> pciide1 at pci0 dev 31 function 1 "Intel 82801HBM IDE" rev 0x03: DMA, channel 
> 0 configured to compatibility, channel 1 configured to compatibility
> atapiscsi0 at pciide1 channel 0 drive 0
> scsibus0 at atapiscsi0: 2 targets
> cd0 at scsibus0 targ 0 lun 0: <MATSHITA, DVD-RAM UJ-842S, 1.01> ATAPI 5/cdrom 
> removable
> cd0(pciide1:0:0): using PIO mode 4, DMA mode 2
> pciide1: channel 1 ignored (disabled)
> ahci0 at pci0 dev 31 function 2 "Intel 82801HBM AHCI" rev 0x03: apic 1 int 21 
> (irq 5), AHCI 1.1
> scsibus1 at ahci0: 32 targets
> sd0 at scsibus1 targ 0 lun 0: <ATA, ST9120823AS, 3.BH> SCSI3 0/direct fixed
> sd0: 114473MB, 512 bytes/sec, 234441648 sec total
> usb2 at uhci0: USB revision 1.0
> uhub2 at usb2 "Intel UHCI root hub" rev 1.00/1.00 addr 1
> usb3 at uhci1: USB revision 1.0
> uhub3 at usb3 "Intel UHCI root hub" rev 1.00/1.00 addr 1
> usb4 at uhci2: USB revision 1.0
> uhub4 at usb4 "Intel UHCI root hub" rev 1.00/1.00 addr 1
> usb5 at uhci3: USB revision 1.0
> uhub5 at usb5 "Intel UHCI root hub" rev 1.00/1.00 addr 1
> usb6 at uhci4: USB revision 1.0
> uhub6 at usb6 "Intel UHCI root hub" rev 1.00/1.00 addr 1
> isa0 at pcib0
> isadma0 at isa0
> pckbc0 at isa0 port 0x60/5
> pckbd0 at pckbc0 (kbd slot)
> pckbc0: using irq 1 for kbd slot
> wskbd0 at pckbd0: console keyboard, using wsdisplay0
> pmsi0 at pckbc0 (aux slot)
> pckbc0: using irq 12 for aux slot
> wsmouse0 at pmsi0 mux 0
> pcppi0 at isa0 port 0x61
> midi0 at pcppi0: <PC speaker>
> spkr0 at pcppi0
> npx0 at isa0 port 0xf0/16: reported by CPUID; using exception 16
> mtrr: Pentium Pro MTRR support
> "RICOH, Bay8Controller" (manufacturer 0x0, product 0x0) at pcmcia1 function 0 
> not configured
> vscsi0 at root
> scsibus2 at vscsi0: 256 targets
> softraid0 at root
> root on sd0a swap on sd0b dump on sd0b
> 
> 
> Index: dsdt.c
> ===================================================================
> RCS file: /cvs/src/sys/dev/acpi/dsdt.c,v
> retrieving revision 1.157
> diff -u -r1.157 dsdt.c
> --- dsdt.c    5 Dec 2009 02:38:11 -0000       1.157
> +++ dsdt.c    19 Jun 2010 12:39:45 -0000
> @@ -699,6 +699,11 @@
>  
>               aml_delchildren(onode);
>  
> +             if (onode->value && onode->value->refcnt > 1) {
> +                     printf("MULTI: %s\n", aml_nodename(onode));
> +                     onode->value->node = NULL;
> +             }
> +
>               /* Decrease reference count */
>               aml_xdelref(&onode->value, "");
>  
> @@ -976,6 +981,9 @@
>               break;
>       case AML_OBJTYPE_OBJREF:
>               lhs->v_objref = rhs->v_objref;
> +             aml_xaddref(lhs->v_objref.ref, "");
> +             printf("copy objref: %x %s\n", lhs->v_objref.type,
> +                     aml_nodename(lhs->v_objref.ref->node));
>               break;
>       default:
>               printf("copyvalue: %x", rhs->type);
> @@ -3626,12 +3634,12 @@
>               /* CondRef: rr => I */
>               ival = 0;
>               if (opargs[0]->node != NULL) {
> -                     aml_freevalue(opargs[1]);
> -
>                       /* Create Object Reference */
> -                     _aml_setvalue(opargs[1], AML_OBJTYPE_OBJREF, opcode, 
> opargs[0]);
> -                     aml_xaddref(opargs[1], "CondRef");
> -                     
> +                     opargs[2] = aml_allocvalue(AML_OBJTYPE_OBJREF, opcode,
> +                             opargs[0]);
> +                     aml_xaddref(opargs[0], "CondRef");
> +                     aml_xstore(scope, opargs[1], 0, opargs[2]);
> +
>                       /* Mark that we found it */
>                       ival = -1;
>               }

Reply via email to