# Hardware support and configuration in FreeBSD 9



## borish (Aug 3, 2012)

Hello,

I switched to Linux from the 7.x series because suspend never worked on my laptop and some other issues. Now, some years later the situation might have changed. On the other hand, I've become accustomed to some convenient features of Linux that I don't want to miss anymore. My questions to FreeBSD users:

- Does suspend mode generally work for laptops?
- Does intel centrino wifi work?
- Does frequency scaling for intel centrino work?
- Do laptop keys (eg volume, brightness) work?
- Do I have to edit system files to get mouse and a German keyboard working under X?
- Can X detect my graphics card automatically (since my Thinkpad has switchable graphics)?
- Can I switch from internal LCD to external LCD or beamer and vice-versa, without having to reboot or edit xorg.conf?
- Can usb printers be used without further configuration?
- Can usb sticks be mounted as normal user from nautilus, thunar or dolphin?

Regards,
Boris


----------



## plamaiziere (Aug 4, 2012)

borish said:
			
		

> Hello,
> 
> I switched to Linux from the 7.x series because suspend never worked on my laptop and some other issues. Now, some years later the situation might have changed. On the other hand, I've become accustomed to some convenient features of Linux that I don't want to miss anymore. My questions to FreeBSD users:
> 
> - Does suspend mode generally work for laptops?


No, never see this to work.


> - Does intel centrino wifi work?


Which one? iwi(4) worked in my previous centrino laptop.


> - Do laptop keys (eg volume, brightness) work?


That could, it depends of the laptop and acpi. Here (a Macbook PRO) this does not work.


> - Do I have to edit system files to get mouse and a German keyboard working under X?
> - Can X detect my graphics card automatically (since my Thinkpad has switchable graphics)?
> - Can I switch from internal LCD to external LCD or beamer and vice-versa, without having to reboot or edit xorg.conf?
> - Can usb printers be used without further configuration?
> - Can usb sticks be mounted as normal user from nautilus, thunar or dolphin?



Well, with FreeBSD you should be prepared to configure the system by hand... If not, Linux is a good option.


----------



## tingo (Aug 4, 2012)

For special keys, check out the various acpi drivers:

```
tingo@kg-v2$ apropos acpi
acpi(4)                  - Advanced Configuration and Power Management support
acpi_aiboost(4)          - ASUS AI Booster hardware monitor
acpi_asus(4)             - Asus Laptop Extras
acpi_dock(4)             - Laptop Docking Station device driver
acpi_fujitsu(4)          - Fujitsu Laptop Extras
acpi_hp(4)               - ACPI extras driver for HP laptops
acpi_ibm(4)              - ACPI extras driver for IBM laptops
acpi_panasonic(4)        - ACPI hotkey driver for Panasonic laptops
acpi_sony(4)             - ACPI notebook controller driver for Sony laptops
acpi_thermal(4)          - ACPI thermal management subsystem
acpi_toshiba(4)          - Toshiba HCI interface
acpi_video(4)            - ACPI Video Extensions driver
acpi_wmi(4)              - ACPI to WMI mapping driver
acpiconf(8)              - control ACPI power management
acpidb(8)                - ACPI DSDT debugger
acpidump(8)              - dump ACPI tables and ASL
aibs(4)                  - ASUSTeK AI Booster ACPI ATK0110 voltage, temperature and fan sensor
iasl(8)                  - Intel ACPI compiler/decompiler
zzz(8)                   - suspend an ACPI or APM system
```
This is from my workstation, running FreeBSD 8.3-stable:

```
tingo@kg-v2$ uname -a
FreeBSD kg-v2.kg4.no 8.3-STABLE FreeBSD 8.3-STABLE #6: Fri Apr 27 23:50:55 CEST 2012
     root@kg-v2.kg4.no:/usr/obj/usr/src/sys/GENERIC  amd64
```


----------



## mwatkins (Aug 4, 2012)

I was unable to get suspend/resume working reliably on my Thinkpad X220 despite some effort. There seem to be some out there that have had success with various versions of FreeBSD, KMS patches, etc, but I wasn't one of them and ultimately I needed a reliable suspend so have moved back to Linux, with huge regrets. I run nothing but FreeBSD on production servers and my development workstation so it's a pain for me to deal with Linux on one machine. I've opted for Linux Mint, Debian Edition, the XFCE flavour - and everything just works. (tm)

That said I think I'm going to move back to FreeBSD on the laptop but run it as a VirtualBox guest OS, on Windows, because I do need to maintain Windows 7 anyway for one photography application (not work related). Maximizing the running instance running dwm, I'm not going to even know or care that it is running as a VM.


----------



## borish (Aug 4, 2012)

Well, it's sad that suspend still doesn't work. So I'll stick with Debian Linux.


----------



## DwBSD (Aug 14, 2012)

Bone that BSD can we not suspend / hibernate the computer?, If that is a very basic how is it possible?
regards


----------



## kpa (Aug 14, 2012)

It would be "very basic" if there was a strict standard that the hardware manufactures would have to adhere to with suspend/resume. The reality is that manufacturers can do basically what they want and create hardware where suspend/resume is only possible with (their) closed source drivers that patch up what is missing in the ACPI BIOS.

And before you ask. Some open source operating system are better than others in implementing workarounds for those limitations than others, that's why Linux for example tends to work better on laptops than FreeBSD.


----------



## segfault (Aug 14, 2012)

Just curious why suspend is such a big "must have" anyways. With the boot up speeds of FreeBSD being so fast why not just shutdown instead of putting it to sleep?
My work laptop (Win7) takes a little longer to resume from suspend than my personal FreeBSD laptop takes to cold boot into SpectrWM with all my applications auto-launched.
Depending on your window manager, I'm sure you could achieve the same.
Also allows the machine to take a 'full' rest as well without having those pesky electrons pulsing through the semi-conductors constantly.

Just a thought.


----------



## bela (Aug 14, 2012)

segfault, how long does your FreeBSD laptop take to boot?
I recently had to move to OpenBSD specifically because suspend/resume didn't work on my Lenovo X60s... something I regret a bit since I have found FreeBSD to be more efficient otherwise. Now I can suspend resume in 5 to 7 seconds running wmii and a few apps. 
FreeBSD used to take about 50 to 55 seconds to boot. Yes, I time these things


----------



## vermaden (Aug 14, 2012)

borish said:
			
		

> - Does suspend mode generally work for laptops?


Yes, it works for mine.



> - Does intel centrino wifi work?


Yes, out of the box.



> - Does frequency scaling for intel centrino work?


Yes, out of the box with *powerd(8)*.



> - Do laptop keys (eg volume, brightness) work?


For the laptops I used they worked.



> - Do I have to edit system files to get mouse and a German keyboard working under X?


Depends if You use graphical PC-BSD or FreeBSD. For FreeBSD, You have to CONFIGURE EVERYTHING. PC-BSD is for desktop.



> - Can X detect my graphics card automatically (since my Thinkpad has switchable graphics)?


Switchable graphics are not even supported on Linux. You can use one or another, not both and definitely You can not have switchable graphics.



> - Can I switch from internal LCD to external LCD or beamer and vice-versa, without having to reboot or edit xorg.conf?


Sure, xrandr is for that (same in Linux). Personally I use graphical ARANDR for that (http://christian.amsuess.com/tools/arandr/)



> - Can usb printers be used without further configuration?


I do not have a printer, so I can not reply to this.



> - Can usb sticks be mounted as normal user from nautilus, thunar or dolphin?


They can surely be AUTOMOUNTED as You attach them to the computer, I wrote an *automount* for that (https://github.com/vermaden/automount), there is also *automounter *and automounting by using HALd.


----------



## segfault (Aug 14, 2012)

<begin hi-jack>
bela: Yes that is a fast resume for sure. My boot up process is stock and is running on an old celeron 1.2Ghz I think it is. Boot time is certainly upwards of a minute for me (though I have not timed any bootups since my slackware tweaking days. Might do that tonight actually now that you mention it!).
<end hi-jack>


----------



## borish (Aug 15, 2012)

segfault said:
			
		

> My work laptop (Win7) takes a little longer to resume from suspend than my personal FreeBSD laptop takes to cold boot into SpectrWM with all my applications auto-launched.



Indeed? My laptop needs ~7 s from power-on to show the Grub boot loader and ~40 s to boot Debian with Xfce4. Resume takes a few seconds.


----------



## borish (Aug 15, 2012)

vermaden said:
			
		

> Switchable graphics are not even supported on Linux. You can use one or another, not both and definitely You can not have switchable graphics.



No, but X detects the graphics card so you can select it in the BIOS and use it without having to supply an xorg.conf.


----------



## mwatkins (Aug 15, 2012)

segfault said:
			
		

> Just curious why suspend is such a big "must have" anyways.



My system is very fast but getting from a cold start to login to all applications loaded and the previous work state, for all applications, back in front of my eyes isn't nearly as fast as pressing a button or key, closing my eyes for a moment of contemplation, and opening them to find work just as I last left it. Multiply that benefit by a number of times during each work day and for me it adds up. 

Resume - when it works for FreeBSD or Linux - is much faster than even the BIOS POST. I do believe it is somewhat faster than Windows resume but that would be splitting hairs, both are acceptably fast on my system.

If suspend/resume doesn't work well it isn't worth fussing around with it - I'd rather leave it running 24x7 or restart as you suggest, but when it works, it's an advantage. How big? Dunno, but like indoor plumbing it isn't something I wish to do without.


----------



## segfault (Aug 15, 2012)

Concerning hibernate, looks like Maelstorm is taking action:
http://forums.freebsd.org/showthread.php?t=33980

Break out the jolt cola and the ambient techno music, a few late night coding sessions could help a lot of laptop use'n folks.


----------

