Date: Tue, 22 Jul 2008 11:37:51 +0300 From: "Oleg V. Nauman" <oleg@opentransfer.com> To: John Baldwin <jhb@freebsd.org> Cc: Jeremy Chadwick <koitsu@freebsd.org>, freebsd-stable@freebsd.org Subject: Re: ACPI regression on recent 7.0-STABLE: HPET stops working Message-ID: <20080722113751.qp8znc0duswkgs8g@webmail.opentransfer.com> In-Reply-To: <200807211800.12415.jhb@freebsd.org> References: <20080719100315.2td4dl2q5ck88wkw@webmail.opentransfer.com> <20080719111838.il32fec2880wok4g@webmail.opentransfer.com> <20080721130752.pstwcwkz88wso8cs@webmail.opentransfer.com> <200807211800.12415.jhb@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Quoting John Baldwin <jhb@freebsd.org>: > On Monday 21 July 2008 06:07:52 am Oleg V. Nauman wrote: >> Quoting "Oleg V. Nauman" <oleg@opentransfer.com>: >> >> > Quoting Jeremy Chadwick <koitsu@FreeBSD.org>: >> > >> >> On Sat, Jul 19, 2008 at 10:03:15AM +0300, Oleg V. Nauman wrote: >> >>> It seems to be something was changed with ACPI support on 7.0-STABLE = so >> >>> my next system upgrade ended with ACPI HPET not working anymore on my >> >>> ASUS A9Rp laptop. >> >>> >> >>> Here is the part of /var/log/dmesg.today dated July 13: >> >>> >> >>> FreeBSD 7.0-STABLE #65: Tue Jul 8 22:05:07 EEST 2008 >> >>> root@rainhaven.theweb.org.ua:/usr/src/sys/i386/compile/oleg2 >> >>> [..] >> >>> acpi0: <A M I OEMRSDT> on motherboard >> >>> acpi0: Overriding SCI Interrupt from IRQ 9 to IRQ 21 >> >>> acpi0: [ITHREAD] >> >>> acpi0: Power Button (fixed) >> >>> acpi0: reservation of 0, a0000 (3) failed >> >>> acpi0: reservation of 100000, 77f00000 (3) failed >> >>> Timecounter "ACPI-safe" frequency 3579545 Hz quality 850 >> >>> acpi_timer0: <32-bit timer at 3.579545MHz> port 0x808-0x80b on acpi0 >> >>> acpi_ec0: <Embedded Controller: GPE 0x18> port 0x62,0x66 on acpi0 >> >>> acpi_hpet0: <High Precision Event Timer> iomem >> >>> 0xfed00000-0xfed003ff on acpi0 >> >>> Timecounter "HPET" frequency 14318180 Hz quality 900 >> >>> >> >>> Here is the fresh dmesg output info: >> >>> >> >>> FreeBSD 7.0-STABLE #66: Tue Jul 15 22:11:27 EEST 2008 >> >>> root@rainhaven.theweb.org.ua:/usr/src/sys/i386/compile/oleg2 >> >>> [..] >> >>> acpi0: <A M I OEMRSDT> on motherboard >> >>> acpi0: Overriding SCI Interrupt from IRQ 9 to IRQ 21 >> >>> acpi0: [ITHREAD] >> >>> acpi0: Power Button (fixed) >> >>> acpi0: reservation of 0, a0000 (3) failed >> >>> acpi0: reservation of 100000, 77f00000 (3) failed >> >>> Timecounter "ACPI-safe" frequency 3579545 Hz quality 850 >> >>> acpi_timer0: <32-bit timer at 3.579545MHz> port 0x808-0x80b on acpi0 >> >>> [..] >> >>> acpi_hpet0: <High Precision Event Timer> iomem >> >>> 0xfed00000-0xfed003ff on acpi0 >> >>> device_attach: acpi_hpet0 attach returned 12 >> >>> >> >>> And the part of actual sysctl kern.timecounter output: >> >>> >> >>> kern.timecounter.choice: TSC(800) ACPI-safe(850) i8254(0) > dummy(-1000000) >> >>> kern.timecounter.hardware: ACPI-safe >> >> >> >> Seems okay here: >> >> >> >> FreeBSD icarus.home.lan 7.0-STABLE FreeBSD 7.0-STABLE #0: Sat Jul >> >> 12 10:53:08 PDT 2008 >> >> root@icarus.home.lan:/usr/obj/usr/src/sys/PDSMI_PLUS_amd64 amd64 >> >> >> >> acpi_timer0: <24-bit timer at 3.579545MHz> port 0x1008-0x100b on acpi0 >> >> acpi_hpet0: <High Precision Event Timer> iomem >> >> 0xfed00000-0xfed003ff on acpi0 >> >> Timecounter "i8254" frequency 1193182 Hz quality 0 >> >> Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000 >> >> Timecounter "HPET" frequency 14318180 Hz quality 900 >> >> Timecounters tick every 1.000 msec >> >> >> >> kern.timecounter.choice: TSC(-100) HPET(900) ACPI-fast(1000) >> >> i8254(0) dummy(-1000000) >> >> kern.timecounter.hardware: ACPI-fast >> >> >> >> You sure you haven't upgraded your BIOS or something and forgot to >> >> re-enable HPET? >> > >> > No it was not upgraded.. Have no option to enable/disable HPET through >> > BIOS settings though >> >> I was unclear a bit or so. There are no ACPI related settings in my >> laptop's BIOS. >> >> Well.. Backout 1.243.2.3 revision of /usr/src/sys/dev/acpica/acpi.c >> (committed to RELENG_7 at July 10 by jhb) fixes this issue for me: >> >> acpi_hpet0: <High Precision Event Timer> iomem 0xfed00000-0xfed003ff on > acpi0 >> Timecounter "HPET" frequency 14318180 Hz quality 900 >> >> kern.timecounter.choice: TSC(800) HPET(900) ACPI-safe(850) i8254(0) >> dummy(-1000000) >> kern.timecounter.hardware: HPET >> >> Hopefully it helps to understand what is went wrong there. > > Ok, so the attempt to allocate the resource is failing for some reason. C= an > you get output from 'devinfo -r' and 'devinfo -u'? Of course.. The kernel with 1.243.2.2 revision of /usr/src/sys/dev/acpica/acpi.c =20 (so HPET working for me): devinfo -r output: nexus0 apic0 ram0 I/O memory addresses: 0x0-0x9efff 0x100000-0x77fcffff npx0 acpi0 Interrupt request lines: 21 I/O ports: 0x10-0x1f 0x22-0x3f 0x63 0x65 0x67-0x6f 0x72-0x7f 0x80 0x84-0x86 0x88 0x8c-0x8e 0x90-0x9f 0xa2-0xbf 0xe0-0xef 0x250-0x25f 0x40b 0x480-0x4bf 0x4d0-0x4d1 0x4d6 0x500-0x53f 0x800-0x89f 0x900-0x90f 0x910-0x91f 0xc00-0xc01 0xc14 0xc50-0xc51 0xc52 0xc6c 0xc6f 0xcd4-0xcd5 0xcd6-0xcd7 0xcd8-0xcdf 0x4000-0x4004 0x4005-0x40ff I/O memory addresses: 0xc0000-0xcffff 0xe0000-0xfffff 0xe0000000-0xefffffff 0xfec00000-0xfec00fff 0xfee00000-0xfee00fff 0xfff80000-0xffffffff cpu0 ACPI I/O ports: 0x814 0x815 coretemp0 p4tcc0 cpufreq0 pcib0 pci0 hostb0 pcib1 pci1 vgapci0 I/O ports: 0x9800-0x98ff I/O memory addresses: 0xc0000000-0xcfffffff 0xfe1f0000-0xfe1fffff ohci0 Interrupt request lines: 19 I/O memory addresses: 0xfebff000-0xfebfffff usb0 uhub0 ums0 ohci1 I/O memory addresses: 0xfebfe000-0xfebfefff usb1 uhub1 ehci0 I/O memory addresses: 0xfebfd000-0xfebfdfff usb2 uhub2 atapci0 I/O ports: 0x170-0x177 0x1f0-0x1f7 0x376 0x3f6 0xff00-0xff0f ata0 Interrupt request lines: 14 acd0 atapicam0 ata1 Interrupt request lines: 15 ad2 atapicam1 pcm0 Interrupt request lines: 16 I/O memory addresses: 0xfebf8000-0xfebfbfff isab0 isa0 sc0 vga0 I/O ports: 0x3c0-0x3df I/O memory addresses: 0xa0000-0xbffff orm0 ACPI I/O memory addresses: 0xc0000-0xccfff pmtimer0 pcib2 pci2 rl0 Interrupt request lines: 20 I/O ports: 0xb800-0xb8ff I/O memory addresses: 0xfeaffc00-0xfeaffcff miibus0 rlphy0 cbb0 I/O memory addresses: 0xfe200000-0xfe200fff cardbus0 pccard0 atpic0 atdma0 attimer0 attimer1 npxisa0 acpi_sysresource0 acpi_sysresource1 atkbdc0 I/O ports: 0x60 0x64 atkbd0 Interrupt request lines: 1 psmcpnp0 acpi_sysresource2 acpi_ec0 I/O ports: 0x62 0x66 acpi_lid0 acpi_sysresource3 acpi_acad0 battery0 acpi_sysresource4 pci_link0 pci_link1 pci_link2 pci_link3 pci_link4 pci_link5 pci_link6 pci_link7 acpi_button0 acpi_button1 acpi_tz0 acpi_timer0 ACPI I/O ports: 0x808-0x80b acpi_hpet0 I/O memory addresses: 0xfed00000-0xfed003ff devinfo -u output: Interrupt request lines: 0 (root0) 1 (atkbd0) 3-8 (root0) 10-13 (root0) 14 (ata0) 15 (ata1) 16 (pcm0) 17-18 (root0) 19 (ohci0) 20 (rl0) 21 (acpi0) 22-23 (root0) DMA request lines: 0-7 (root0) I/O ports: 0x0-0xf (root0) 0x10-0x1f (acpi0) 0x20-0x21 (root0) 0x22-0x3f (acpi0) 0x40-0x5f (root0) 0x60 (atkbdc0) 0x61 (root0) 0x62 (acpi_ec0) 0x63 (acpi0) 0x64 (atkbdc0) 0x65 (acpi0) 0x66 (acpi_ec0) 0x67-0x6f (acpi0) 0x70-0x71 (root0) 0x72-0x7f (acpi0) 0x80 (acpi0) 0x81-0x83 (root0) 0x84-0x86 (acpi0) 0x87 (root0) 0x88 (acpi0) 0x89-0x8b (root0) 0x8c-0x8e (acpi0) 0x8f (root0) 0x90-0x9f (acpi0) 0xa0-0xa1 (root0) 0xa2-0xbf (acpi0) 0xc0-0xdf (root0) 0xe0-0xef (acpi0) 0xf0-0x16f (root0) 0x170-0x177 (atapci0) 0x178-0x1ef (root0) 0x1f0-0x1f7 (atapci0) 0x1f8-0x24f (root0) 0x250-0x25f (acpi0) 0x260-0x375 (root0) 0x376 (atapci0) 0x377-0x3bf (root0) 0x3c0-0x3df (vga0) 0x3e0-0x3f5 (root0) 0x3f6 (atapci0) 0x3f7-0x40a (root0) 0x40b (acpi0) 0x40c-0x47f (root0) 0x480-0x4bf (acpi0) 0x4c0-0x4cf (root0) 0x4d0-0x4d1 (acpi0) 0x4d2-0x4d5 (root0) 0x4d6 (acpi0) 0x4d7-0x4ff (root0) 0x500-0x53f (acpi0) 0x540-0x7ff (root0) 0x800-0x89f (acpi0) 0x8a0-0x8ff (root0) 0x900-0x90f (acpi0) 0x910-0x91f (acpi0) 0x920-0xaff (root0) 0xb00-0xb0f (ichsmb0) 0xb10-0xbff (root0) 0xc00-0xc01 (acpi0) 0xc02-0xc13 (root0) 0xc14 (acpi0) 0xc15-0xc4f (root0) 0xc50-0xc51 (acpi0) 0xc52 (acpi0) 0xc53-0xc6b (root0) 0xc6c (acpi0) 0xc6d-0xc6e (root0) 0xc6f (acpi0) 0xc70-0xcd3 (root0) 0xcd4-0xcd5 (acpi0) 0xcd6-0xcd7 (acpi0) 0xcd8-0xcdf (acpi0) 0xce0-0x3fff (root0) 0x4000-0x4004 (acpi0) 0x4005-0x40ff (acpi0) 0x4100-0x97ff (root0) 0x9800-0x98ff (vgapci0) 0x9900-0xb7ff (root0) 0xb800-0xb8ff (rl0) 0xb900-0xfeff (root0) 0xff00-0xff0f (atapci0) 0xff10-0xffff (root0) I/O memory addresses: 0x0-0x9efff (ram0) 0x9f000-0x9ffff (root0) 0xa0000-0xbffff (vga0) 0xc0000-0xcffff (acpi0) 0xd0000-0xdffff (root0) 0xe0000-0xfffff (acpi0) 0x100000-0x77fcffff (ram0) 0x77fd0000-0xbfffffff (root0) 0xc0000000-0xcfffffff (vgapci0) 0xd0000000-0xdfffffff (root0) 0xe0000000-0xefffffff (acpi0) 0xf0000000-0xfe1effff (root0) 0xfe1f0000-0xfe1fffff (vgapci0) 0xfe200000-0xfe200fff (cbb0) 0xfe201000-0xfeaff3ff (root0) 0xfeaff400-0xfeaff4ff ---- 0xfeaff500-0xfeaff7ff (root0) 0xfeaff800-0xfeaff8ff ---- 0xfeaff900-0xfeaffbff (root0) 0xfeaffc00-0xfeaffcff (rl0) 0xfeaffd00-0xfebf7fff (root0) 0xfebf8000-0xfebfbfff (pcm0) 0xfebfc000-0xfebfcfff (root0) 0xfebfd000-0xfebfdfff (ehci0) 0xfebfe000-0xfebfefff (ohci1) 0xfebff000-0xfebfffff (ohci0) 0xfec00000-0xfec00fff (acpi0) 0xfec01000-0xfecfffff (root0) 0xfed00000-0xfed003ff (acpi_hpet0) 0xfed00400-0xfedfffff (root0) 0xfee00000-0xfee00fff (acpi0) 0xfee01000-0xfff7ffff (root0) 0xfff80000-0xffffffff (acpi0) ACPI I/O ports: 0x10-0x1f (root0) 0x22-0x3f (root0) 0x63 (root0) 0x65 (root0) 0x67-0x6f (root0) 0x72-0x80 (root0) 0x84-0x86 (root0) 0x88 (root0) 0x8c-0x8e (root0) 0x90-0x9f (root0) 0xa2-0xbf (root0) 0xe0-0xef (root0) 0x250-0x25f (root0) 0x40b (root0) 0x480-0x4bf (root0) 0x4d0-0x4d1 (root0) 0x4d6 (root0) 0x500-0x53f (root0) 0x800-0x807 (root0) 0x808-0x80b (acpi_timer0) 0x80c-0x813 (root0) 0x814 (cpu0) 0x815 (cpu0) 0x816-0x89f (root0) 0x900-0x91f (root0) 0xc00-0xc01 (root0) 0xc14 (root0) 0xc50-0xc52 (root0) 0xc6c (root0) 0xc6f (root0) 0xcd4-0xcdf (root0) 0x4000-0x40ff (root0) ACPI I/O memory addresses: 0xc0000-0xccfff (orm0) 0xcd000-0xcffff (root0) 0xe0000-0xfffff (root0) 0xe0000000-0xefffffff (root0) 0xfec00000-0xfec00fff (root0) 0xfee00000-0xfee00fff (root0) 0xfff80000-0xffffffff (root0) For the kernel with 1.243.2.3 revision of =20 /usr/src/sys/dev/acpica/acpi.c ( so HPET is not working for me): Will not provide with full listings but just a diff comparing two =20 states (this good one with HPET working and bad w/o it): rainhaven# diff devinfo.r.good devinfo.r.bad 177,179d176 < acpi_hpet0 < I/O memory addresses: < 0xfed00000-0xfed003ff rainhaven# diff devinfo.u.good devinfo.u.bad 128c128 < 0xfed00000-0xfed003ff (acpi_hpet0) --- > 0xfed00000-0xfed003ff (ichsmb0) So kernel with 1.243.2.3 revision of /usr/src/sys/dev/acpica/acpi.c =20 allocates the region required to ichsmb0 instead HPET (it not helps to =20 ichsmb0 because it never was working on my laptop but it is another =20 story I think). Thank you for looking into. > > -- > John Baldwin >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080722113751.qp8znc0duswkgs8g>