File:  [NetBSD Developer Wiki] / wikisrc / laptops.mdwn
Revision 1.20: download - view: text, annotated - select for diffs
Sat Jul 18 11:22:36 2020 UTC (3 months, 1 week ago) by nia
Branches: MAIN
CVS tags: HEAD
generic information about laptops, remove ancient stuff

    1: This page lists and links to pages about laptops, notebooks,
    2: and portable computers that work well with NetBSD, are of interest
    3: to developers, and are standardized or easy to find.
    4: 
    5: For i386-based netbooks also see
    6: <http://www.netbsd.org/ports/i386/netbook.html>.
    7: 
    8: [[!toc ]]
    9: 
   10: ---
   11: 
   12: # Generic laptop support
   13: 
   14: ## Graphics
   15: 
   16: NetBSD 9.0 supports Intel integrated graphics up to Kaby Lake,
   17: Nvidia graphics up to Maxwell, and AMD graphics up to GCNv1.
   18: 
   19: Anything newer than this will work, but will use `llvmpipe`
   20: instead of hardware acceleration for OpenGL.
   21: 
   22: ## CPU frequency adjustment
   23: 
   24: On most ACPI and some non-ACPI laptops, the `sysutils/estd` package
   25: can be used to automatically adjust the CPU frequency depending on
   26: system load, and potentially prolong battery life. This modifies the
   27: `frequency` variables exposed by
   28: [[!template id=man name="sysctl" section="8"]].
   29: 
   30: ## Suspend
   31: 
   32: On ACPI systems, suspend-to-RAM is supported through
   33: `sysctl hw.acpi.sleep.state=3`.  This can be triggered through various
   34: events (such as lid close) with
   35: [[!template id=man name="powerd" section="8"]].
   36: 
   37: Suspend on NetBSD currently seems to work best on Thinkpads.
   38: 
   39: ## Input
   40: 
   41: Many x86 laptops use Synaptics touchpads over an emulated PS/2 interface,
   42: which is supported through [[!template id=man name="pms" section="4"]],
   43: with various adjustable sysctl variables.
   44: 
   45: ## WiFi
   46: 
   47: Many x86 laptops with Intel processors will have WiFi cards supported
   48: by the
   49: [[!template id=man name="iwm" section="4"]] driver, or 
   50: [[!template id=man name="iwn" section="4"]] for older models.
   51: Atheros 11n miniPCIe cards are supported by the
   52: [[!template id=man name="athn" section="4"]] driver.
   53: 
   54: See the
   55: [[!template id=man name="afterboot" section="8"]] man page for details
   56: on connecting to a WPA network.  For connecting to a non-WPA network,
   57: simply specify `ssid networkname up` in 
   58: [[!template id=man name="ifconfig" section="8"]], and make sure
   59: [[!template id=man name="dhcpcd" section="8"]] is running.
   60: 
   61: USB WiFI adapters such as
   62: [[!template id=man name="urtwn" section="4"]] and
   63: [[!template id=man name="run" section="4"]] can also be used,
   64: and most/all generic USB ethernet adapters are also well supported.
   65: For a fairly complete list, see 
   66: [[!template id=man name="usb" section="4"]].
   67: 
   68: ## Audio
   69: 
   70: Most modern x86 laptops use the 
   71: [[!template id=man name="hdaudio" section="4"]] driver.
   72: 
   73: In the case that switching between speakers and the headphone port
   74: is not handled automatically by the hardware, the `dacsel`
   75: [[!template id=man name="mixerctl" section="1"]] variable can be
   76: modified.
   77: 
   78: ---
   79: 
   80: # IBM / Lenovo
   81: 
   82: The [[!template id=man name="thinkpad" section="4"]] driver provides
   83: support for various Thinkpad-specific sensors and function keys.
   84: 
   85: ## ThinkPad T22
   86: 
   87: Works perfect (sound, display, all devices, infrared port not tested).
   88: 
   89: ## ThinkPad T61
   90: 
   91: Used it since NetBSD 4.x.
   92: With Intel GMA, X works great.
   93: Cardbus port doesn't work properly.
   94: Expresscard not tested/tried.
   95: 
   96: ## ThinkPad X60s
   97: 
   98: Everything works.
   99: 
  100: ## ThinkPad X41
  101: 
  102: Works fine (sound, display, all devices, bluetooth, modem not tested).
  103: Standby is broken for me in -current (~2012-01-12) but worked in 5.1.
  104: 
  105: ## ThinkPad X61s
  106: 
  107: Everything works. Requires `PCI_BUS_FIXUP` and `PCI_ADDR_FIXUP` [[!template
  108: id=man name="options" section="4"]].
  109: 
  110: ## Thinkpad X201
  111: 
  112: Running -current since March 2011.
  113: Working graphics (with the vesa driver), audio, trackpoint, wired
  114: and wireless LAN.
  115: Does not wake up after suspend (drives spin up but the display
  116: stays black and the LED indicating a sleep state stays lit).
  117: 
  118: ## Thinkpad X220
  119: 
  120: From user reports, in NetBSD 9.0:
  121: 
  122: * Video acceleration works, but when using `xf86-video-intel` (the default),
  123:   it's advisable to set `Option "AccelMethod"  "uxa"` in `xorg.conf`.
  124: * Ethernet is supported through the [[!template id=man name="wm" section="4"]] driver.
  125: * WiFi is supported through the [[!template id=man name="iwn" section="4"]] driver.
  126: * Suspend and resume work.
  127: 
  128: ## Thinkpad X230
  129: 
  130: From user reports, in NetBSD 9.0:
  131: 
  132: * Ethernet is supported through the [[!template id=man name="wm" section="4"]] driver.
  133: * WiFi is supported through the [[!template id=man name="iwn" section="4"]] driver.
  134: 
  135: ## Thinkpad X250
  136: 
  137: Nearly perfect. Running NetBSD 9.0 and -current since 2019.
  138: 
  139: * Accelerated graphics with the i915 driver. Connecting externals displays
  140:   works with the miniDP and VGA ports.
  141: * SD card reader is supported through the [[!template id=man name="rtsx" section="4"]] driver.
  142: * Ethernet is supported through the [[!template id=man name="wm" section="4"]] driver.
  143: * WiFi is supported through the [[!template id=man name="iwm" section="4"]] driver.
  144: * For the extra trackpoint buttons to work correctly, needs a patch to
  145:   synaptics.c that is in -current and will be in 9.1.
  146:   Tapping and the clickpad have always been fine.
  147: * Brightness buttons do not work in 9 by default. You can bind them to
  148:   xrandr in your window manager.
  149: * Webcam will depend on upcoming xhci isochronous pipe support.
  150: * To record from the internal mic, set `mixerctl -w record.source=ADC02`
  151: * Wakes up after suspend. I have mine set to suspend on lid close with
  152:   powerd.
  153: 
  154: ## Thinkpad X260
  155: 
  156: Likely very similar to the X250.
  157: 
  158: From user reports, in NetBSD 9.0:
  159: 
  160: * SD card reader is supported through the [[!template id=man name="rtsx" section="4"]] driver.
  161: * Ethernet is supported through the [[!template id=man name="wm" section="4"]] driver.
  162: * WiFi is supported through the [[!template id=man name="iwm" section="4"]] driver.
  163: * For the extra trackpoint buttons to work correctly, needs a patch to
  164:   synaptics.c that is in -current and will be in 9.1.
  165:   Tapping and the clickpad have always been fine.
  166: 
  167: ---
  168: 
  169: # PINE64
  170: 
  171: ## Pinebook (Allwinner A64)
  172: 
  173: The Pinebook does not use ACPI so certain aspects are different
  174: compared to x86 laptops.
  175: 
  176: From user reports to port-arm@, in NetBSD 9.0:
  177: 
  178: * [[!template id=man name="uvideo" section="4"]] webcam works.
  179: * External WiFI adapters can be used. Support for the internal WiFi - after WiFi system rework?
  180: * Plugging in external monitors works via the HDMI port.
  181: * The CPU frequency can be adjusted with `sysctl machdep.cpufreq.*`.
  182: * Mesa llvmpipe is currently used for 3D/OpenGL.
  183: 
  184: ## Pinebook Pro
  185: 
  186: The Pinebook Pro does not use ACPI so certain aspects are different
  187: compared to x86 laptops.
  188: 
  189: * [[!template id=man name="uvideo" section="4"]] webcam works.
  190: * Internal Broadcom WiFi is supported via the [[!template id=man name="bwfm" section="4"]] driver in 9_STABLE.
  191:   External adapters may still be more stable.
  192: * The CPU frequency can be adjusted automatically with `estd` or with `sysctl machdep.cpufreq.*`.
  193: * The display backlight can be adjusted with `sysctl`.
  194: * Mesa llvmpipe is currently used for 3D/OpenGL.

CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb