Date: Fri, 27 Mar 2015 21:54:10 +1000 From: Da Rock <freebsd-acpi@herveybayaustralia.com.au> To: Kevin Oberman <rkoberman@gmail.com> Cc: "freebsd-acpi@freebsd.org" <freebsd-acpi@freebsd.org> Subject: Re: HP Compaq CQ62/42 acpi Message-ID: <551544E2.4040205@herveybayaustralia.com.au> In-Reply-To: <CAN6yY1sm2C_5N0MomLDd%2BDxMCkUJDpTRw6D5iPAZq3kJBYn8Pw@mail.gmail.com> References: <55113B2D.2040609@herveybayaustralia.com.au> <CAN6yY1vs=M_1PWRq5pSiuczQc7hXqm333gtkHDPv5Vdc64k3Gg@mail.gmail.com> <551362EF.3080801@herveybayaustralia.com.au> <CAN6yY1sm2C_5N0MomLDd%2BDxMCkUJDpTRw6D5iPAZq3kJBYn8Pw@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 26/03/2015 14:22, Kevin Oberman wrote: > On Wed, Mar 25, 2015 at 6:37 PM, Da Rock > <freebsd-acpi@herveybayaustralia.com.au > <mailto:freebsd-acpi@herveybayaustralia.com.au>> wrote: > > On 03/25/15 09:52, Kevin Oberman wrote: >> On Tue, Mar 24, 2015 at 3:23 AM, Da Rock >> <freebsd-acpi@herveybayaustralia.com.au >> <mailto:freebsd-acpi@herveybayaustralia.com.au>> wrote: >> >> I have 2 laptops as mentioned, 3 all amd athlon based. The >> 3rd is an asus which I'm relatively happy with. >> >> What I have is when I pull the AC out of it, the sysctl for >> cpu speed goes from 2200 to 100 or 400. Basically the system >> becomes rather unusable. >> >> I tried the acpi_hp module, and it now switches to 800. This >> is better, but barely usable still. >> >> I'd like to see a response similar to the asus if its >> possible; this effectively stays the same, but drops speed if >> nothing is happening. >> >> Ideally, I'd think that it would be better if the system >> adjusted speed to use requirements during operation, but >> neither does that. I suspect that the asus should (in theory) >> as it does do it on battery only; but unless I'm really >> hammering all the time, it just doesn't seem to happen when >> I'm looking at it. >> >> The settings used on all for powerd is hiadaptive for AC, >> adaptive for battery. >> >> If I'm doing something wrong let me know, if more data is >> required I'm happy to help the cause :) >> >> TIA >> >> First, let's get a bit more information. Please provide: >> sysctl dev.cpu.0 (on AC and then on battery) > AC: > > dev.cpu.0.%desc: ACPI CPU > dev.cpu.0.%driver: cpu > dev.cpu.0.%location: handle=\_PR_.C000 > dev.cpu.0.%pnpinfo: _HID=none _UID=0 > dev.cpu.0.%parent: acpi0 > dev.cpu.0.temperature: 85.3C > dev.cpu.0.freq: 200 > dev.cpu.0.freq_levels: 2200/7543 1925/6600 1900/6150 1662/5381 > 1600/4777 1400/4179 1300/3750 1137/3281 975/2812 800/2091 700/1829 > 600/1568 500/1306 400/1045 300/784 200/522 100/261 > dev.cpu.0.cx_supported: C1/1/0 > dev.cpu.0.cx_lowest: C1 > dev.cpu.0.cx_usage: 100.00% last 682us > > Battery: > > dev.cpu.0.%desc: ACPI CPU > dev.cpu.0.%driver: cpu > dev.cpu.0.%location: handle=\_PR_.C000 > dev.cpu.0.%pnpinfo: _HID=none _UID=0 > dev.cpu.0.%parent: acpi0 > dev.cpu.0.temperature: 85.5C > dev.cpu.0.freq: 100 > dev.cpu.0.freq_levels: 2200/7543 1925/6600 1900/6150 1662/5381 > 1600/4777 1400/4179 1300/3750 1137/3281 975/2812 800/2091 700/1829 > 600/1568 500/1306 400/1045 300/784 200/522 100/261 > dev.cpu.0.cx_supported: C1/1/0 > dev.cpu.0.cx_lowest: C1 > dev.cpu.0.cx_usage: 100.00% last 901us >> uname -a > FreeBSD laptop1 10.0-RELEASE-p7 FreeBSD 10.0-RELEASE-p7 #0: Tue > Jul 8 06:37:44 UTC 2014 > root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC > <mailto:root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC> > amd64 >> /etc/sysctl.conf (If present) > vfs.usermount=1 > kern.ipc.shm_allow_removed=1 > compat.linux.osrelease=2.6.18 >> /boot/loader.conf (if present) > (like it wasn't going to be present :D who doesn't?) > vboxdrv_load=YES > tmpfs_load=YES > cuse4bsd_load=YES > acpi_video_load=YES > amdtemp_load=YES > fuse_load=YES > acpi_hp_load=YES > > I'd like to get this system running nicely if I can - its been > just getting there for too long now because of other projects > taking my attention and I've got bite the bullet and work this out. > > BTW, just to make a liar out of me after I sent that post, the > system did start to change the cpu speed on AC - but it took a > while. I had sat there monitoring the system with little activity > and it remained at 2200; when I gave up waiting and sent that post > I then started to really give it to it and the speed started > dropping and rising a little. However, given I was trying to do an > encoding with ffmpeg at the time, the speed probably should have > remained at 2200 as my frames encoded per second was about half of > normal. So I don't really know what to expect :) > > This is also in my dmesg: > > amdtemp0: <AMD CPU On-Die Thermal Sensors> on hostb4 > acpi_acad0: <AC Adapter> on acpi0 > battery0: <ACPI Control Method Battery> on acpi0 > acpi_lid0: <Control Method Lid Switch> on acpi0 > acpi_wmi0: <ACPI-WMI mapping> on acpi0 > acpi_hp0: <HP ACPI-WMI Mapping> on acpi_wmi0 > acpi_hp0: HP event GUID detected, installing event handler > ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160 > (bits) (20130823/dsopcode-249) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC] > (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD] > (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160 > (bits) (20130823/dsopcode-249) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC] > (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD] > (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160 > (bits) (20130823/dsopcode-249) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC] > (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD] > (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160 > (bits) (20130823/dsopcode-249) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC] > (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD] > (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160 > (bits) (20130823/dsopcode-249) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC] > (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD] > (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160 > (bits) (20130823/dsopcode-249) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC] > (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD] > (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160 > (bits) (20130823/dsopcode-249) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC] > (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD] > (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160 > (bits) (20130823/dsopcode-249) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC] > (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD] > (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160 > (bits) (20130823/dsopcode-249) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC] > (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD] > (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160 > (bits) (20130823/dsopcode-249) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC] > (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD] > (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160 > (bits) (20130823/dsopcode-249) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC] > (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD] > (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160 > (bits) (20130823/dsopcode-249) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC] > (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD] > (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160 > (bits) (20130823/dsopcode-249) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC] > (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD] > (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553) > acpi_tz0: <Thermal Zone> on acpi0 > acpi_tz0: _CRT value is absurd, ignored (-273.2C) > I should have clarified this before - can someone tell me what all this means? Can I do anything about it? > > > cat wmistat0: > > GUID INST EXPE METH STR EVENT OID > {5FB7F034-2C63-45E9-BE91-3D44E2C707E4} 1 NO WMAD NO NO AD > {95F24279-4D7B-4334-9387-ACCDC67EF61C} 1 NO NO NO 0x80+ - > {05901221-D566-11D1-B2F0-00A0C9062910} 1 NO NO NO NO AE > {D0992BD4-A47C-4EFE-B072-324AEC92296C} 1 NO NO NO NO BC > > What do I do now? > > TIA > > > First, I suggest checking the output of kldstat to see that > acpi_wmi.ko is loaded. See just above; that device is set with the module, and the module is loaded with acpi_hp. Check: kldstat: 8 1 0xffffffff8189f000 83c0 acpi_hp.ko 9 2 0xffffffff818a8000 7e10 acpi_wmi.ko > If not, add acpi_wmi_load=YES to loader.conf. wmi is an HP/Acer thing > and I really don't know much about it. Do you have powerd variables in > rc.conf? I assume you have powerd_enable="YES", but are you setting > any flags? Flags as initially provided in OP: hiadaptive on AC, adaptive on battery. > > I see that you are using P4TCC. (This is default in 10, but will > finally be fixed in 11.) You can turn it off by adding: > hint.p4tcc.0.disabled=1 > hint.acpi_throttle.0.disabled=1 > to loader.conf. It will remove a bunch of useless "frequencies" and > leave the useful values. It will make powerd much more responsive and > will prevent C-states from locking up the system when they are > enabled. I'd also suggest setting: > performance_cx_lowest="Cmax" > economy_cx_lowest="Cmax" > as C-states are by far and away the best power saving tool available. > (This also becomes default in 11.) So what exactly should I be seeing? This: dev.cpu.0.%desc: ACPI CPU dev.cpu.0.%driver: cpu dev.cpu.0.%location: handle=\_PR_.C000 dev.cpu.0.%pnpinfo: _HID=none _UID=0 dev.cpu.0.%parent: acpi0 dev.cpu.0.temperature: 82.5C dev.cpu.0.freq: 800 dev.cpu.0.freq_levels: 2200/7543 1900/6150 1600/4777 1300/3750 800/2091 dev.cpu.0.cx_supported: C1/1/0 dev.cpu.0.cx_lowest: C8 dev.cpu.0.cx_usage: 100.00% last 4934us Why is it at c8? And what does the cx_supported do then? > > For a lot of details on tuning power usage, read the article at > https://wiki.freebsd.org/TuningPowerConsumption. > > Finally, so a little debug. Kill powerd (service powerd stop) and run > it with verbose on a terminal ("powerd -v" plus whatever options you > have in powerd_flags) and watch what powerd is doing. powerd: using sysctl for AC line status powerd: using devd for AC line status load 0%, current freq 2200 MHz ( 0), wanted freq 2131 MHz load 0%, current freq 2200 MHz ( 0), wanted freq 2064 MHz load 6%, current freq 2200 MHz ( 0), wanted freq 1999 MHz load 9%, current freq 2200 MHz ( 0), wanted freq 1936 MHz load 8%, current freq 2200 MHz ( 0), wanted freq 1875 MHz changing clock speed from 2200 MHz to 1900 MHz load 4%, current freq 1900 MHz ( 1), wanted freq 1816 MHz load 0%, current freq 1900 MHz ( 1), wanted freq 1759 MHz load 4%, current freq 1900 MHz ( 1), wanted freq 1704 MHz load 0%, current freq 1900 MHz ( 1), wanted freq 1650 MHz load 0%, current freq 1900 MHz ( 1), wanted freq 1598 MHz changing clock speed from 1900 MHz to 1600 MHz load 3%, current freq 1600 MHz ( 2), wanted freq 1548 MHz load 10%, current freq 1600 MHz ( 2), wanted freq 1499 MHz load 6%, current freq 1600 MHz ( 2), wanted freq 1452 MHz load 6%, current freq 1600 MHz ( 2), wanted freq 1406 MHz load 7%, current freq 1600 MHz ( 2), wanted freq 1362 MHz load 4%, current freq 1600 MHz ( 2), wanted freq 1319 MHz load 4%, current freq 1600 MHz ( 2), wanted freq 1277 MHz changing clock speed from 1600 MHz to 1300 MHz load 6%, current freq 1300 MHz ( 3), wanted freq 1237 MHz load 13%, current freq 1300 MHz ( 3), wanted freq 1198 MHz load 3%, current freq 1300 MHz ( 3), wanted freq 1160 MHz load 3%, current freq 1300 MHz ( 3), wanted freq 1123 MHz load 6%, current freq 1300 MHz ( 3), wanted freq 1087 MHz load 22%, current freq 1300 MHz ( 3), wanted freq 1053 MHz load 8%, current freq 1300 MHz ( 3), wanted freq 1020 MHz load 3%, current freq 1300 MHz ( 3), wanted freq 988 MHz load 9%, current freq 1300 MHz ( 3), wanted freq 957 MHz load 21%, current freq 1300 MHz ( 3), wanted freq 927 MHz load 3%, current freq 1300 MHz ( 3), wanted freq 898 MHz load 7%, current freq 1300 MHz ( 3), wanted freq 869 MHz load 9%, current freq 1300 MHz ( 3), wanted freq 841 MHz load 7%, current freq 1300 MHz ( 3), wanted freq 814 MHz load 7%, current freq 1300 MHz ( 3), wanted freq 800 MHz changing clock speed from 1300 MHz to 800 MHz load 6%, current freq 800 MHz ( 4), wanted freq 800 MHz load 10%, current freq 800 MHz ( 4), wanted freq 800 MHz load 6%, current freq 800 MHz ( 4), wanted freq 800 MHz load 18%, current freq 800 MHz ( 4), wanted freq 800 MHz load 30%, current freq 800 MHz ( 4), wanted freq 800 MHz load 15%, current freq 800 MHz ( 4), wanted freq 800 MHz load 11%, current freq 800 MHz ( 4), wanted freq 800 MHz load 7%, current freq 800 MHz ( 4), wanted freq 800 MHz load 9%, current freq 800 MHz ( 4), wanted freq 800 MHz load 8%, current freq 800 MHz ( 4), wanted freq 800 MHz load 13%, current freq 800 MHz ( 4), wanted freq 800 MHz load 7%, current freq 800 MHz ( 4), wanted freq 800 MHz load 7%, current freq 800 MHz ( 4), wanted freq 800 MHz load 15%, current freq 800 MHz ( 4), wanted freq 800 MHz load 6%, current freq 800 MHz ( 4), wanted freq 800 MHz load 6%, current freq 800 MHz ( 4), wanted freq 800 MHz load 10%, current freq 800 MHz ( 4), wanted freq 800 MHz load 8%, current freq 800 MHz ( 4), wanted freq 800 MHz load 9%, current freq 800 MHz ( 4), wanted freq 800 MHz load 7%, current freq 800 MHz ( 4), wanted freq 800 MHz load 9%, current freq 800 MHz ( 4), wanted freq 800 MHz load 26%, current freq 800 MHz ( 4), wanted freq 800 MHz load 17%, current freq 800 MHz ( 4), wanted freq 800 MHz load 6%, current freq 800 MHz ( 4), wanted freq 800 MHz load 8%, current freq 800 MHz ( 4), wanted freq 800 MHz load 6%, current freq 800 MHz ( 4), wanted freq 800 MHz load 9%, current freq 800 MHz ( 4), wanted freq 800 MHz load 6%, current freq 800 MHz ( 4), wanted freq 800 MHz load 6%, current freq 800 MHz ( 4), wanted freq 800 MHz load 8%, current freq 800 MHz ( 4), wanted freq 800 MHz load 14%, current freq 800 MHz ( 4), wanted freq 800 MHz load 6%, current freq 800 MHz ( 4), wanted freq 800 MHz load 12%, current freq 800 MHz ( 4), wanted freq 800 MHz load 7%, current freq 800 MHz ( 4), wanted freq 800 MHz load 12%, current freq 800 MHz ( 4), wanted freq 800 MHz load 12%, current freq 800 MHz ( 4), wanted freq 800 MHz load 10%, current freq 800 MHz ( 4), wanted freq 800 MHz load 6%, current freq 800 MHz ( 4), wanted freq 800 MHz load 7%, current freq 800 MHz ( 4), wanted freq 800 MHz load 6%, current freq 800 MHz ( 4), wanted freq 800 MHz load 8%, current freq 800 MHz ( 4), wanted freq 800 MHz load 9%, current freq 800 MHz ( 4), wanted freq 800 MHz load 7%, current freq 800 MHz ( 4), wanted freq 800 MHz load 6%, current freq 800 MHz ( 4), wanted freq 800 MHz load 7%, current freq 800 MHz ( 4), wanted freq 800 MHz load 16%, current freq 800 MHz ( 4), wanted freq 800 MHz load 11%, current freq 800 MHz ( 4), wanted freq 800 MHz load 10%, current freq 800 MHz ( 4), wanted freq 800 MHz ^Ctotal joules used: 64.579 So aside from being informative, how can this help me? You guys mentioned locking up, was that happening each line here? The -i and -r seemed reasonable for my purposes, so no change there, at least until I get a better feel for things anyway. With regards powernow! I can't see it in dmesg (used grep), but est isn't used either as far as I can tell. How would I enable powernow in freebsd anyway? Or is it just a cpu thing and not a module? CPU: AMD Phenom(tm) II N970 Quad-Core Processor (2194.63-MHz K8-class CPU) Origin = "AuthenticAMD" Id = 0x100f53 Family = 0x10 Model = 0x5 Stepping = 3 Features=0x178bfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,MMX,FXSR,SSE,SSE2,HTT> Features2=0x802009<SSE3,MON,CX16,POPCNT> AMD Features=0xee500800<SYSCALL,NX,MMX+,FFXSR,Page1GB,RDTSCP,LM,3DNow!+,3DNow!> AMD Features2=0x837ff<LAHF,CMP,SVM,ExtAPIC,CR8,ABM,SSE4A,MAS,Prefetch,OSVW,IBS,SKINIT,WDT,NodeId> TSC: P-state invariant
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?551544E2.4040205>