# HP Laptop; FreeBSD no brightness control, PC-BSD works...



## ikbendeman (Dec 16, 2009)

For the life of me I haven't been able to control the brightness of my display in FreeBSD on this laptop, well untill a couple days ago I managed to be able to do it with a sysctl variable w/

```
kldload acpi_video
```
However, the Fn+F7 (Brightness Down) and Fn+F8 (Brightness Up) keys would not work... even with

```
kldload acpi_hp
```
and I even tried this in my rc.conf:

```
acpi_load="YES"
acpi_hp_load="YES"
acpi_video_load="YES"
```
I think the variable I used in FreeBSD was 

```
sysctl hw.acpi.video.0.brightness=x
```
where x was one of the available numbers in another hw.acpi.video.0.* variable.

Whats weirder is that F7 and F8 work on PC-BSD with no acpi_video loaded:

```
[ikbendeman@pcbsd /usr/home/nick]$ kldstat
Id Refs Address    Size     Name
 1   21 0xc0400000 b1ad40   kernel
 2    2 0xc0f1b000 29b5c    linux.ko
 3    1 0xc0f45000 3818     ulpt.ko
 4    1 0xc0f49000 6a48c    acpi.ko
 5    1 0xc6593000 7000     linprocfs.ko
 6    1 0xc66c6000 19000    snd_hda.ko
 7    1 0xc6b02000 5e000    radeon.ko
 8    1 0xc6b60000 13000    drm.ko
```

And PC-BSD's /boot/loader.conf:

```
linux_load="YES"
ulpt_load="YES"
#vesa_load="YES"
#splash_pcx_load="YES"
#bitmap_load="YES"
#bitmap_name="/boot/loading-screen.pcx"
hw.ata.atapi_dma="1"
autoboot_delay="5"
kern.ipc.shmseg=1024
kern.ipc.shmmni=1024
legal.intel_iwi.license_ack=1
legal.intel_wpi.license_ack=1
wpi_load="YES"
```

I don't think wpi loaded on FreeBSD, except MAYBE when I loaded acpi_hp, but then i think it may have been acpi_hp_wpi. Anybody have any ideas? Also, can FreeBSD use DSDTs from linux or PC-BSD? Because this laptop works with both of those OS's. I'll also post the dmesg for PC-BSD. If anybody has any suggestions please let me know. I can also post "sysctl -a" from PC-BSD or anything else you might need, just let me know. Unfortunately, I don't have both FreeBSD and PC-BSD on here anymore due to not being able to resize UFS but I know what I had in most of my config files if you have any questions there. Thanks in advance.


----------



## ikbendeman (Dec 16, 2009)

*dmesg*


```
Copyright (c) 1992-2009 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
	The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 7.2-STABLE #11: Wed Jun 24 18:36:21 EDT 2009
    root@build7x32.pcbsd.org:/usr/obj/pcbsd-build72/cvs/7.2-src/sys/PCBSD
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: AMD Turion(tm) X2 Ultra Dual-Core Mobile ZM-80 (2099.15-MHz 686-class CPU)
  Origin = "AuthenticAMD"  Id = 0x200f31  Stepping = 1
  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=0x2001<SSE3,CX16>
  AMD Features=0xea500800<SYSCALL,NX,MMX+,FFXSR,RDTSCP,LM,3DNow!+,3DNow!>
  AMD Features2=0x131f<LAHF,CMP,SVM,ExtAPIC,CR8,Prefetch,OSVW,SKINIT>
  TSC: P-state invariant
  Cores per package: 2
real memory  = 2951663616 (2814 MB)
avail memory = 2881011712 (2747 MB)
ACPI APIC Table: <HP     30F2    >
FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs
 cpu0 (BSP): APIC ID:  0
 cpu1 (AP): APIC ID:  1
ioapic0: Changing APIC ID to 4
ioapic0 <Version 2.1> irqs 0-23 on motherboard
kbd1 at kbdmux0
acpi0: <HPQOEM SLIC-MPC> on motherboard
acpi0: [ITHREAD]
acpi0: Power Button (fixed)
Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000
acpi_timer0: <32-bit timer at 3.579545MHz> port 0x408-0x40b on acpi0
acpi_ec0: <Embedded Controller: GPE 0x3> port 0x62,0x66 on acpi0
acpi_hpet0: <High Precision Event Timer> iomem 0xfed00000-0xfed003ff on acpi0
acpi_hpet0: HPET never increments, disabling
device_attach: acpi_hpet0 attach returned 6
acpi_button0: <Power Button> on acpi0
acpi_button1: <Sleep Button> on acpi0
pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
pci0: <ACPI PCI bus> on pcib0
pcib1: <ACPI PCI-PCI bridge> at device 1.0 on pci0
pci1: <ACPI PCI bus> on pcib1
vgapci0: <VGA-compatible display> port 0x5000-0x50ff mem 0xc0000000-0xcfffffff,0xd2300000-0xd230ffff,0xd2200000-0xd22fffff irq 18 at device 5.0 on pci1
pci1: <multimedia, HDA> at device 5.1 (no driver attached)
pcib2: <ACPI PCI-PCI bridge> at device 4.0 on pci0
pci2: <ACPI PCI bus> on pcib2
pcib3: <ACPI PCI-PCI bridge> at device 5.0 on pci0
pci8: <ACPI PCI bus> on pcib3
ath0: <Atheros 5424/2424> mem 0xd1100000-0xd110ffff irq 17 at device 0.0 on pci8
ath0: [ITHREAD]
ath0: WARNING: using obsoleted if_watchdog interface
ath0: Ethernet address: 00:1f:e2:8c:c9:8f
ath0: mac 14.2 phy 7.0 radio 10.2
pcib4: <ACPI PCI-PCI bridge> at device 6.0 on pci0
pci9: <ACPI PCI bus> on pcib4
re0: <RealTek 8101E/8102E/8102EL PCIe 10/100baseTX> port 0x2000-0x20ff mem 0xd1010000-0xd1010fff,0xd1000000-0xd100ffff irq 18 at device 0.0 on pci9
re0: Using 1 MSI messages
re0: Chip rev. 0x34800000
re0: MAC rev. 0x00000000
miibus0: <MII bus> on re0
rlphy0: <RTL8201L 10/100 media interface> PHY 1 on miibus0
rlphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
re0: Ethernet address: 00:1e:68:95:91:43
re0: [FILTER]
atapci0: <ATI AHCI controller> port 0x6038-0x603f,0x604c-0x604f,0x6030-0x6037,0x6048-0x604b,0x6010-0x601f mem 0xd2408000-0xd24083ff irq 22 at device 17.0 on pci0
atapci0: [ITHREAD]
atapci0: AHCI Version 01.10 controller with 6 ports detected
ata2: <ATA channel 0> on atapci0
ata2: [ITHREAD]
ata3: <ATA channel 1> on atapci0
ata3: [ITHREAD]
ata4: <ATA channel 2> on atapci0
ata4: [ITHREAD]
ata5: <ATA channel 3> on atapci0
ata5: [ITHREAD]
ata6: <ATA channel 4> on atapci0
ata6: [ITHREAD]
ata7: <ATA channel 5> on atapci0
ata7: [ITHREAD]
ohci0: <OHCI (generic) USB controller> mem 0xd2407000-0xd2407fff irq 16 at device 18.0 on pci0
ohci0: [GIANT-LOCKED]
ohci0: [ITHREAD]
usb0: OHCI version 1.0, legacy support
usb0: SMM does not respond, resetting
usb0: <OHCI (generic) USB controller> on ohci0
usb0: USB revision 1.0
uhub0: <ATI OHCI root hub, class 9/0, rev 1.00/1.00, addr 1> on usb0
uhub0: 3 ports with 3 removable, self powered
ohci1: <OHCI (generic) USB controller> mem 0xd2406000-0xd2406fff irq 16 at device 18.1 on pci0
ohci1: [GIANT-LOCKED]
ohci1: [ITHREAD]
usb1: OHCI version 1.0, legacy support
usb1: SMM does not respond, resetting
usb1: <OHCI (generic) USB controller> on ohci1
usb1: USB revision 1.0
uhub1: <ATI OHCI root hub, class 9/0, rev 1.00/1.00, addr 1> on usb1
uhub1: 3 ports with 3 removable, self powered
ehci0: <EHCI (generic) USB 2.0 controller> mem 0xd2408500-0xd24085ff irq 17 at device 18.2 on pci0
ehci0: [GIANT-LOCKED]
ehci0: [ITHREAD]
usb2: waiting for BIOS to give up control
usb2: EHCI version 1.0
usb2: companion controllers, 3 ports each: usb0 usb1
usb2: <EHCI (generic) USB 2.0 controller> on ehci0
usb2: USB revision 2.0
uhub2: <ATI EHCI root hub, class 9/0, rev 2.00/1.00, addr 1> on usb2
uhub2: 6 ports with 6 removable, self powered
ugen0: <Vimicro Co.,ltd HP Webcam, class 239/2, rev 2.00/0.05, addr 2> on uhub2
umass0: <Generic USB2.0-CRW, class 0/0, rev 2.00/58.87, addr 3> on uhub2
ohci2: <OHCI (generic) USB controller> mem 0xd2405000-0xd2405fff irq 18 at device 19.0 on pci0
ohci2: [GIANT-LOCKED]
ohci2: [ITHREAD]
usb3: OHCI version 1.0, legacy support
usb3: SMM does not respond, resetting
usb3: <OHCI (generic) USB controller> on ohci2
usb3: USB revision 1.0
uhub3: <ATI OHCI root hub, class 9/0, rev 1.00/1.00, addr 1> on usb3
uhub3: 3 ports with 3 removable, self powered
ohci3: <OHCI (generic) USB controller> mem 0xd2404000-0xd2404fff irq 18 at device 19.1 on pci0
ohci3: [GIANT-LOCKED]
ohci3: [ITHREAD]
usb4: OHCI version 1.0, legacy support
usb4: SMM does not respond, resetting
usb4: <OHCI (generic) USB controller> on ohci3
usb4: USB revision 1.0
uhub4: <ATI OHCI root hub, class 9/0, rev 1.00/1.00, addr 1> on usb4
uhub4: 3 ports with 3 removable, self powered
ehci1: <EHCI (generic) USB 2.0 controller> mem 0xd2408400-0xd24084ff irq 19 at device 19.2 on pci0
ehci1: [GIANT-LOCKED]
ehci1: [ITHREAD]
usb5: waiting for BIOS to give up control
usb5: EHCI version 1.0
usb5: companion controllers, 3 ports each: usb3 usb4
usb5: <EHCI (generic) USB 2.0 controller> on ehci1
usb5: USB revision 2.0
uhub5: <ATI EHCI root hub, class 9/0, rev 2.00/1.00, addr 1> on usb5
uhub5: 6 ports with 6 removable, self powered
pci0: <serial bus, SMBus> at device 20.0 (no driver attached)
atapci1: <ATI IXP700 UDMA133 controller> port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0x6000-0x600f irq 16 at device 20.1 on pci0
ata0: <ATA channel 0> on atapci1
ata0: [ITHREAD]
pci0: <multimedia, HDA> at device 20.2 (no driver attached)
isab0: <PCI-ISA bridge> at device 20.3 on pci0
isa0: <ISA bus> on isab0
pcib5: <ACPI PCI-PCI bridge> at device 20.4 on pci0
pci128: <ACPI PCI bus> on pcib5
battery0: <ACPI Control Method Battery> on acpi0
acpi_acad0: <AC Adapter> on acpi0
acpi_lid0: <Control Method Lid Switch> on acpi0
acpi_tz0: <Thermal Zone> on acpi0
acpi_tz0: _CRT value is absurd, ignored (-260.4C)
acpi_tz0: _HOT value is absurd, ignored (-260.4C)
atkbdc0: <Keyboard controller (i8042)> port 0x60,0x64 irq 1 on acpi0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
kbd0 at atkbd0
atkbd0: [GIANT-LOCKED]
atkbd0: [ITHREAD]
psm0: <PS/2 Mouse> flags 0x1000 irq 12 on atkbdc0
psm0: [GIANT-LOCKED]
psm0: [ITHREAD]
psm0: model Generic PS/2 mouse, device ID 0
cpu0: <ACPI CPU> on acpi0
acpi_throttle0: <ACPI CPU Throttling> on cpu0
cpu1: <ACPI CPU> on acpi0
```


----------



## ikbendeman (Dec 16, 2009)

*dmesg continued*


```
acpi_hpet0: <High Precision Event Timer> iomem 0xfed00000-0xfed003ff on acpi0
Timecounter "HPET" frequency 14318180 Hz quality 900
pmtimer0 on isa0
ppc0: parallel port not found.
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
sio0: configured irq 4 not in bitmap of probed irqs 0
sio0: port may not be enabled
sio0: configured irq 4 not in bitmap of probed irqs 0
sio0: port may not be enabled
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 8250 or not responding
sio0: [FILTER]
sio1: configured irq 3 not in bitmap of probed irqs 0
sio1: port may not be enabled
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
ugen1: <vendor 0x0a12 product 0x0001, class 224/1, rev 2.00/31.64, addr 2> on uhub3
Timecounters tick every 1.000 msec
ipfw2 (+ipv6) initialized, divert enabled, nat loadable, rule-based forwarding disabled, default to accept, logging disabled
ad0: 238475MB <WDC WD2500BEVS-60UST0 01.01A01> at ata2-master SATA150
acd0: DVDR <TSSTcorp CDDVDW TS-L633L/0400> at ata3-master SATA150
GEOM_LABEL: Label for provider ad0s1a is ufsid/4b28fcbf72b0287c.
cpufreq0: rejecting change, SMP not started yet
acpi_tz0: failed to set new freq, disabling passive cooling
(probe1:umass-sim0:0:0:0): TEST UNIT READY. CDB: 0 0 0 0 0 0 
(probe1:umass-sim0:0:0:0): CAM Status: SCSI Status Error
(probe1:umass-sim0:0:0:0): SCSI Status: Check Condition
(probe1:umass-sim0:0:0:0): NOT READY asc:3a,0
(probe1:umass-sim0:0:0:0): Medium not present
(probe1:umass-sim0:0:0:0): Unretryable error
acd0: FAILURE - INQUIRY ILLEGAL REQUEST asc=0x24 ascq=0x00 
(probe0:ata2:0:0:0): TEST UNIT READY. CDB: 0 0 0 0 0 0 
(probe0:ata2:0:0:0): CAM Status: SCSI Status Error
(probe0:ata2:0:0:0): SCSI Status: Check Condition
(probe0:ata2:0:0:0): NOT READY asc:3a,2
(probe0:ata2:0:0:0): Medium not present - tray open
(probe0:ata2:0:0:0): Unretryable error
acd0: FAILURE - INQUIRY ILLEGAL REQUEST asc=0x24 ascq=0x00 
SMP: AP CPU #1 Launched!
da0 at umass-sim0 bus 0 target 0 lun 0
da0: <Generic- Multi-Card 1.00> Removable Direct Access SCSI-0 device 
da0: 40.000MB/s transfers
da0: Attempt to query device size failed: NOT READY, Medium not present
cd0 at ata2 bus 0 target 0 lun 0
cd0: <TSSTcorp CDDVDW TS-L633L 0400> Removable CD-ROM SCSI-0 device 
cd0: 3.300MB/s transfers
cd0: Attempt to query device size failed: NOT READY, Medium not present - tray open
Trying to mount root from ufs:/dev/ad0s1a
GEOM_LABEL: Label ufsid/4b28fcbf72b0287c removed.
GEOM_LABEL: Label for provider ad0s1a is ufsid/4b28fcbf72b0287c.
GEOM_LABEL: Label ufsid/4b28fcbf72b0287c removed.
GEOM_LABEL: Label for provider md0 is ufsid/4b2971388b70d8f6.
GEOM_LABEL: Label ufsid/4b2971388b70d8f6 removed.
hdac0: <ATI SB600 High Definition Audio Controller> mem 0xd2400000-0xd2403fff irq 16 at device 20.2 on pci0
hdac0: HDA Driver Revision: 20090329_0131
hdac0: [ITHREAD]
hdac0: HDA Codec #0: IDT 92HD71B7
hdac0: HDA Codec #1: Lucent/Agere Systems (Unknown)
hdac1: <ATI RS780 High Definition Audio Controller> mem 0xd2310000-0xd2313fff irq 19 at device 5.1 on pci1
hdac1: HDA Driver Revision: 20090329_0131
hdac1: [ITHREAD]
hdac1: HDA Codec #0: ATI RS690/780 HDMI
pcm0: <HDA IDT 92HD71B7 PCM #0 Analog> at cad 0 nid 1 on hdac0
pcm1: <HDA IDT 92HD71B7 PCM #1 Analog> at cad 0 nid 1 on hdac0
pcm2: <HDA IDT 92HD71B7 PCM #2 Digital> at cad 0 nid 1 on hdac0
pcm3: <HDA ATI RS690/780 HDMI PCM #0 Digital> at cad 0 nid 1 on hdac1
drm0: <ATI Radeon HD 3200 Graphics> on vgapci0
info: [drm] MSI enabled 1 message(s)
vgapci0: child drm0 requested pci_enable_busmaster
info: [drm] Initialized radeon 1.29.0 20080528
info: [drm] Setting GART location based on new memory map
info: [drm] Loading RS780 Microcode
info: [drm] Resetting GPU
info: [drm] writeback test succeeded in 1 usecs
drm0: [ITHREAD]
info: [drm] Resetting GPU
info: [drm] Setting GART location based on new memory map
info: [drm] Loading RS780 Microcode
info: [drm] Resetting GPU
info: [drm] writeback test succeeded in 1 usecs
drm0: [ITHREAD]
info: [drm] Resetting GPU
pid 4261 (nepomukservicestub), uid 1001: exited on signal 6
pid 4275 (nepomukservicestub), uid 1001: exited on signal 6
pid 4276 (nepomukservicestub), uid 1001: exited on signal 6
ath0: link state changed to UP
```


----------



## ikbendeman (Dec 16, 2009)

(On PC-BSD) I ran:

```
#acpidump -t -d -o ~/dv5-1004nr.dst > ~/dv5-1004nr.asl

[url=http://pastebin.com/f23f9f488]cat ~/dv5-1004nr.asl (http://pastebin.com/f23f9f488)[/URL]
```

If this can be useful on FreeBSD someone help me know how to implement it. If anyone needs the dv5-1004nr.dst i can send it to you... or upload it somewhere if anyone knows where...


----------



## ikbendeman (Dec 16, 2009)

and I managed to figure out how to make the dv5-1004nr.dsl file:


> cat dv5-1004.dsl ([url=http://pastebin.com/f66757ae2]http://pastebin.com/f66757ae2)[/url]



I believe this is the one you would compile with iasl to make the new DSDT. I believe I can maybe figure this out, but can someone tell me how I can implement the new DSDT into the FreeBSD kernel?


----------



## ikbendeman (Dec 17, 2009)

I recompiled my DSDT and fixed all errors during compilation (related to only returning values if TPOS, 0x40 which is Windows Vista.) I'll see if this makes any difference, but I doubt it... 

For anyone else who needs to know how to do this:

1) Extract your DSDT

```
# acpidump -t -d -o ~/dsdt.dst > ~/dsdt.asl
```

2) Disassemble the DSDT

```
# iasl -d ~/dsdt.dst
```
this will create dsdt.dsl, which you will need to edit if there are any errors on recompiling

3) Recompile dsl -> aml, to check for errors

```
# iasl -tc ~/dsdt.dsl
```
If any errors are encountered search google for solutions, I will post my solution at a later date, but its on here: https://wiki.edubuntu.org/LaptopTestingTeam/HPdv5z. I have a HP dv5-1004nr.

4) From the FreeBSD handbook, setup your system to boot from fixed & recompiled DSDT:
   a) copy dsdt file to /boot/

```
# cp ~/dsdt.aml /boot/dsdt.aml
```
   b) edit /boot/loader.conf to tell your system to use custom dsdt:

```
# printf "%s\n" "acpi_dsdt_load="YES"" "acpi_dsdt_name="/boot/dsdt.aml"" >> /boot/loader.conf
```


----------



## honk (Dec 17, 2009)

I've no solution but some thoughts...



			
				ikbendeman said:
			
		

> I don't think wpi loaded on FreeBSD, except MAYBE when I loaded acpi_hp, but then i think it may have been acpi_hp_wpi. Anybody have any ideas?



I think wpi is the Intel 3945ABG Wireless LAN IEEE 802.11 driver.


Did you saw this thread? Maybe your FreeBSD installation should be updated? I think acpi_wmi is related, not wpi. Also I don't see FN F7/F8 on the feature list of acpi_hp. As acpi_hp is new, maybe the developer is interested in feedback via the mailing list? Maybe PCBSD maps FN F7/F8 on to the xbacklight program???


cheers,
honk


----------



## alie (Feb 4, 2010)

Can you please post your PCBSD sysctl.conf


----------



## kpedersen (Feb 4, 2010)

It might be a PC-BSD KDE thing that is monitoring those keys.

In PC-BSD switch to another vtm (ctrl-alt-F4) and see if those keys are working now?


----------



## alie (Feb 4, 2010)

kpedersen said:
			
		

> It might be a PC-BSD KDE thing that is monitoring those keys.
> 
> In PC-BSD switch to another vtm (ctrl-alt-F4) and see if those keys are working now?



Dunno for PCBSD, but its working for my FreeBSD 8


----------



## tvas80 (Feb 19, 2010)

honk said:
			
		

> I've no solution but some thoughts...
> 
> 
> 
> ...



Hmmm yeah dude why'd you use wpi anyway? Dont even include it in your kernel you have Atheros - > ath0 is your wireless interface, let me know if you need any help configuring it its working flawless so far (atm im updating to 8.* release so will update my post accordingly). Im fellow DV5-1004nr owner. And funny as it is my 2nd(old) laptop Toshiba has wpi wireless and thats exactly the NOTORIOUS Intel 3945ABG haha i cant remember how many months it took me to get it up and working.


P.S. Want to say "Hi" to everyone, this is my first post since i have just joined today. I am a newbie and i would appreciate any help/tips and critics. Thanks.


----------



## ikbendeman (Feb 21, 2010)

sorry, I meant to type wmi. I don't have PC-BSD installed on here anymore, but I'll try to figure out a way to do that so i can post that, thank you for your responses.


----------



## ikbendeman (Feb 21, 2010)

alie said:
			
		

> Dunno for PCBSD, but its working for my FreeBSD 8



can you post all your config files (sysctl.conf, loader.conf, rc.conf, xorg.conf, anything that COULD be related so I could maybe figure out what I need to do?) please?


----------

