Blog

TL;DR

The InfinityBook 14” v2 is a fanless 14” notebook. It is an excellent choice for running OpenBSD - but order it with the supported wireless card (see below.).

I’ve set it up in a dual-boot configuration so that I can switch between Linux and OpenBSD - mainly to spot differences in the drivers. TUXEDO allows a variety of configurations through their webshop.

The dual boot setup with grub2 and EFI boot will be covered in a separate blogpost. My tests were done with OpenBSD-current - which is as of writing flagged as 6.6-beta.

Before we dive into the specifics, here is the full dmesg.

InfinityBook 14 v2 Desktop

CPU

It features an Intel Core i5-8200Y. This is the 8th generation of the i5, called Amber Lake Y.

cpu0 at mainbus0: apid 0 (boot processor)
cpu0: Intel(R) Core(TM) i5-8200Y CPU @ 1.30GHz, 1293.77 MHz, 06-8e-09
cpu0: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,PCLMUL,DTES64,MWAIT,DS-CPL,VMX,EST,TM2,SSSE3,SDBG,FMA3,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,DEADLINE,AES,XSAVE,AVX,F16C,RDRAND,NXE,PAGE1GB,RDTSCP,LONG,LAHF,ABM,3DNOWP,PERF,ITSC,FSGSBASE,TSC_ADJUST,SGX,BMI1,AVX2,SMEP,BMI2,ERMS,INVPCID,MPX,RDSEED,ADX,SMAP,CLFLUSHOPT,PT,IBRS,IBPB,STIBP,L1DF,SSBD,SENSOR,ARAT,XSAVEOPT,XSAVEC,XGETBV1,XSAVES,MELTDOWN
c
[...]
cpu0: Enhanced SpeedStep 1293 MHz: speeds: 1601, 1600, 1500, 1400, 1300, 1200, 1100, 1000, 900, 800, 700, 600, 500, 400 MHz

The CPU is a dual core CPU with 4 threads.

$ sysctl -a | grep cpu
kern.ccpu=1948
hw.ncpu=4
hw.sensors.cpu0.temp0=55.00 degC
hw.cpuspeed=400
hw.ncpufound=4
hw.ncpuonline=2
machdep.cpuvendor=GenuineIntel
machdep.cpuid=0x806e9
machdep.cpufeature=0xbffbfbff

Wireless communication

Since the device does not come with an ethernet port, wireless communication is even more important, so I’ll cover this first.

Initially when they announced this model it was announced with an Intel Dual AC 9260 wireless card. This card is currently not supported by the iwm(4) driver (in none of the BSDs). Due to that TUXEDO added the Intel Dual AC 8265 to the device selection. The 8265 is supported by iwm(4).

iwm0 at pci1 dev 0 function 0 "Intel Dual Band Wireless-AC 8265" rev 0x78, msi
[...]
iwm0: hw rev 0x230, fw ver 22.361476.0, address 38:de:ad:94:6c:b3

The card features bluetooth as well. Since OpenBSD has no bluetooth support, the bluetooth part just attaches as ugen.

ugen0 at uhub0 port 7 "Intel Bluetooth" rev 2.00/0.10 addr 4

Video

The device comes with an Intel UHD Graphics 615.

inteldrm0 at pci0 dev 2 function 0 "Intel UHD Graphics 615" rev 0x02
drm0 at inteldrm0
inteldrm0: msi
[...]
inteldrm0: 1920x1080, 32bpp
wsdisplay0 at inteldrm0 mux 1: console (std, vt100 emulation), using wskbd0
wsdisplay0: screen 1-5 added (std, vt100 emulation)

I am very happy that the display is not one of those high-gloss displays but instead comes matte with a resolution of 1920x1080 IPS.

The installation went flawlessly, the needed intel firmware is being installed after installation automatically via fw_update(1).

Out of the box the graphics works and once installed the machine presents the login.

External video is working just fine as well. The machine offers a Micro-HDMI port as well as a USB 3.1 Type C with DisplayPort. I’ve only tested the DisplayPort connection on the USB Type C but that worked just perfect. The DisplayPort delivers 4K at 60 Hz. The laptop can be charged through the USB Type-C as well. This allows me to travel with once charger (for the MacBook as well as this device).

The buttons for adjusting brightness (fn+f5 and fn+f6) are not working. Instead one has to use wsconsctl(8) to adjust the brightness.

$ doas wsconsctl display.brightness
display.brightness=70.00%
$ doas wsconsctl -w display.brightness=10
display.brightness -> 10.00%

I’m in touch with TUXEDO to get some details on this to see whether that can be fixed. Same goes for the function keys to switch to an external display. The external display was detected automatically for me. Detail setup I did via xrandr(1).

Webcam

The webcam is fully supported and works nicely. For the privacy-savy ones: The webcam can be disabled in the bios.

uvideo0 at uhub0 port 3 configuration 1 interface 0 "Alcor Micro HD Webcam" rev 2.00/11.00 addr 3
video0 at uvideo0

Audio

The azalia(4) chipset is being used for audio processing. Volume can be adjusted through the function keys (fn+f10 - mute, fn+f11 and fn+f12) or through mixerctl(1).

azalia0 at pci0 dev 31 function 3 "Intel 200 Series HD Audio" rev 0x21: msi
azalia0: codecs: Realtek ALC269, Intel/0x280b, using Realtek ALC269
audio0 at azalia0

ACPI

I am very happy that both suspend as well as hibernation works. However the function keys can’t be used, I just used the corresponding cli commands apm(8) commands (zzz and ZZZ). However closing the lid works just fine as well. The corresponding sysctl is set by default to 1.

$ sysctl machdep.lidaction
machdep.lidaction=1

The other functions keys work just fine:

  • LCD on/off works (fn+f8)
  • Keyboard backlight dimming works (fn+space)

Battery

The device comes with a 39.96 Wh battery. The battery can be changed by opening the base plate. The battery status is available through acpibat(4).

acpibat0 at acpi0: BAT1 model "BASE-BAT" serial 123456789 type LiP oem "Render"

Touchpad

pms0 at pckbc0 (aux slot)
wsmouse0 at pms0 mux 0
pms0: Elantech Clickpad, version 4, firmware 0x461f15

Can be controlled via wsconsctl(8).

Micro-SD Card Reader

The device comes with a Micro SD-Card reader:

sdhc0 at pci0 dev 30 function 4 "Intel 100 Series eMMC" rev 0x21: apic 2 int 21
sdhc0: SDHC 3.0, 200 MHz base clock
sdmmc0 at sdhc0: 8-bit, sd high-speed, mmc high-speed, dma
sdhc1 at pci0 dev 30 function 6 "Intel 100 Series SDXC" rev 0x21: apic 2 int 23
sdhc1: SDHC 3.0, 200 MHz base clock
sdmmc1 at sdhc1: 4-bit, sd high-speed, mmc high-speed, dma

Actually something that I don’t have much use for, so I actually only tested it for sake of completeness. Turned out that while being properly detected and initialized, upon inserting a card the driver has problems initializing the card.

With SDMMC_DEBUG:

dmmc0: attach card
sdmmc0: cmd 52 arg=0x80000c08 data=0x0 dlen=0 flags=0x1c01 proc="sdmmc0" (error 60)
sdmmc0: cmd 5 arg=0 data=0x0 dlen=0 flags=0x1031 proc="sdmmc0" (error 60)
sdmmc0: cmd 0 arg=0 data=0x0 dlen=0 flags=0x21 proc="sdmmc0" (error 0)
sdmmc0: resp=
sdmmc0: cmd 55 arg=0 data=0x0 dlen=0 flags=0x1c01 proc="sdmmc0" (error 60)
sdmmc0: cmd 1 arg=0x40000000 data=0x0 dlen=0 flags=0x1031 proc="sdmmc0" (error 60)
sdmmc0: can't read memory OCR
sdmmc0: can't enable card
sdmmc0: detach card

There I’ll have to dig in a bit to see how I can get that working properly.

Hardware compat overview

This table is inspired by jcs who has - for each of the devices he tests with OpenBSD - such a table on his site:

Component Works Notes
Audio yes azalia(4)
Battery status yes acpibat(4)
Bluetooth no OpenBSD has no bluetooth support
Hibernation yes apm(4) - triggered by ZZZ
Keyboard backlight yes Fn+space - three different states
Micro SD Card Reader no theoretically supported by sdmmc(4), but problems initalizing cards
Suspend/Resume yes apm(4) - triggered by zzz
Touchpad yes pms(4)
USB yes all USB ports work fine, including the USB Type C
Video yes inteldrm(4)
Webcam yes uvideo(4) can be disabled in BIOS
Wireless yes iwm(4) - order it with the 8265 chip