====== Thinkpad P14s Gen1 (Intel) ====== * Year introduced: 2020 ---- ===== Hardware ===== * CPU: Intel(R) Core(TM) i7-10610U CPU @ 1.80GHz (Comet Lake) * Ethernet: 1Gbps Intel I219-LM * Graphics: %%CometLake%%-U GT2 [UHD Graphics] + Nvidia Quadro P520 (Optimus) * Memory: 8 to 32 GB * Screen: 14.0" FHD (1920 x 1080) IPS, anti-glare, 250 nits * Storage: 1 TB NVme * Wireless: 2.4Ghz + 5Ghz [[/WiFi|WiFi]] 6 (Comet Lake PCH-LP CNVi [[/WiFi|WiFi]]) * Smart card reader: Generic EMV Smartcard Reader * %%MicroSD%% card reader (SD, SDHC, SDXC, MMC) * Thunderbolt 3 * Fingerprint reader * Integrated webcam: Azurewave Integrated Camera * Battery: LGC 5B10W13905 / 50500 mWh ---- ===== Support overview ===== ^ Component ^^ Status ^ Details ^ | Graphics | Graphical sessions | ✔ | | | Backlight (brightness) control | ✔ | | | Input devices | Keyboard backlight | ✔ | | | Touchpad | ✔ | | | Trackpoint | ✔ | | | Media keys | Brightness keys | ✔ | | ::: | Volume keys | ✘ | | Network | Ethernet | ✔ | | | ::: | Wi-Fi | ✔ | | | Other | Battery | ✔ | | | ::: | Bluetooth | ✔ | | | ::: | Fan | :!: | | | ::: | Fingerprint reader | ✘ | | | ::: | SD card reader | ✔ | | | ::: | SIM card slot | :!: | | | ::: | Smart card reader | :!: | | | ::: | Suspend & resume | ✘ | | | ::: | Webcam | ✔ | | | Ports | %%DisplayPort%% | ✔ | | | ::: | HDMI | ✔ | | | ::: | Thunderbolt | ✔ | | | ::: | USB | ✔ | | | Sound | Headphone jack | ✔ | | | ::: | Microphone jack | :!: | | | ::: | Speakers | ✔ | | | Last update: 2023-06-08 12:04:59 UTC |||| * **Legend** * ✔ OK * :?: Somewhat OK: requires additional tweaking or works worse than expected * :!: Present but status unknown or untested * ✘ Does not work * //nothing// Not sure if present ===== Hardware identification ===== ==== PCI ==== hostb0@pci0:0:0:0: class=0x060000 rev=0x0c hdr=0x00 vendor=0x8086 device=0x9b61 subvendor=0x17aa subdevice=0x22b1 vendor = 'Intel Corporation' device = 'Comet Lake-U v1 4c Host Bridge/DRAM Controller' class = bridge subclass = HOST-PCI vgapci0@pci0:0:2:0: class=0x030000 rev=0x02 hdr=0x00 vendor=0x8086 device=0x9b41 subvendor=0x17aa subdevice=0x22b2 vendor = 'Intel Corporation' device = 'CometLake-U GT2 [UHD Graphics]' class = display subclass = VGA none0@pci0:0:4:0: class=0x118000 rev=0x0c hdr=0x00 vendor=0x8086 device=0x1903 subvendor=0x17aa subdevice=0x22b1 vendor = 'Intel Corporation' device = 'Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem' class = dasp none1@pci0:0:8:0: class=0x088000 rev=0x00 hdr=0x00 vendor=0x8086 device=0x1911 subvendor=0x17aa subdevice=0x22b1 vendor = 'Intel Corporation' device = 'Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th/8th Gen Core Processor Gaussian Mixture Model' class = base peripheral pchtherm0@pci0:0:18:0: class=0x118000 rev=0x00 hdr=0x00 vendor=0x8086 device=0x02f9 subvendor=0x17aa subdevice=0x22b1 vendor = 'Intel Corporation' device = 'Comet Lake Thermal Subsytem' class = dasp xhci0@pci0:0:20:0: class=0x0c0330 rev=0x00 hdr=0x00 vendor=0x8086 device=0x02ed subvendor=0x17aa subdevice=0x22b1 vendor = 'Intel Corporation' device = 'Comet Lake PCH-LP USB 3.1 xHCI Host Controller' class = serial bus subclass = USB none2@pci0:0:20:2: class=0x050000 rev=0x00 hdr=0x00 vendor=0x8086 device=0x02ef subvendor=0x17aa subdevice=0x22b1 vendor = 'Intel Corporation' device = 'Comet Lake PCH-LP Shared SRAM' class = memory subclass = RAM iwlwifi0@pci0:0:20:3: class=0x028000 rev=0x00 hdr=0x00 vendor=0x8086 device=0x02f0 subvendor=0x8086 subdevice=0x0070 vendor = 'Intel Corporation' device = 'Comet Lake PCH-LP CNVi WiFi' class = network none3@pci0:0:22:0: class=0x078000 rev=0x00 hdr=0x00 vendor=0x8086 device=0x02e0 subvendor=0x17aa subdevice=0x22b1 vendor = 'Intel Corporation' device = 'Comet Lake Management Engine Interface' class = simple comms none4@pci0:0:22:3: class=0x070002 rev=0x00 hdr=0x00 vendor=0x8086 device=0x02e3 subvendor=0x17aa subdevice=0x22b1 vendor = 'Intel Corporation' class = simple comms subclass = UART pcib1@pci0:0:28:0: class=0x060400 rev=0xf0 hdr=0x01 vendor=0x8086 device=0x02b8 subvendor=0x17aa subdevice=0x22b1 vendor = 'Intel Corporation' device = 'Comet Lake PCI Express Root Port' class = bridge subclass = PCI-PCI pcib2@pci0:0:28:4: class=0x060400 rev=0xf0 hdr=0x01 vendor=0x8086 device=0x02bc subvendor=0x17aa subdevice=0x22b1 vendor = 'Intel Corporation' device = 'Comet Lake PCI Express Root Port' class = bridge subclass = PCI-PCI pcib3@pci0:0:29:0: class=0x060400 rev=0xf0 hdr=0x01 vendor=0x8086 device=0x02b0 subvendor=0x17aa subdevice=0x22b1 vendor = 'Intel Corporation' device = 'Comet Lake PCI Express Root Port' class = bridge subclass = PCI-PCI pcib4@pci0:0:29:4: class=0x060400 rev=0xf0 hdr=0x01 vendor=0x8086 device=0x02b4 subvendor=0x17aa subdevice=0x22b1 vendor = 'Intel Corporation' device = 'Comet Lake PCI Express Root Port' class = bridge subclass = PCI-PCI isab0@pci0:0:31:0: class=0x060100 rev=0x00 hdr=0x00 vendor=0x8086 device=0x0284 subvendor=0x17aa subdevice=0x22b1 vendor = 'Intel Corporation' device = 'Comet Lake PCH-LP LPC Premium Controller/eSPI Controller' class = bridge subclass = PCI-ISA hdac0@pci0:0:31:3: class=0x040380 rev=0x00 hdr=0x00 vendor=0x8086 device=0x02c8 subvendor=0x17aa subdevice=0x22b1 vendor = 'Intel Corporation' device = 'Comet Lake PCH-LP cAVS' class = multimedia subclass = HDA ichsmb0@pci0:0:31:4: class=0x0c0500 rev=0x00 hdr=0x00 vendor=0x8086 device=0x02a3 subvendor=0x17aa subdevice=0x22b1 vendor = 'Intel Corporation' device = 'Comet Lake PCH-LP SMBus Host Controller' class = serial bus subclass = SMBus none5@pci0:0:31:5: class=0x0c8000 rev=0x00 hdr=0x00 vendor=0x8086 device=0x02a4 subvendor=0x17aa subdevice=0x22b1 vendor = 'Intel Corporation' device = 'Comet Lake SPI (flash) Controller' class = serial bus em0@pci0:0:31:6: class=0x020000 rev=0x00 hdr=0x00 vendor=0x8086 device=0x0d4e subvendor=0x17aa subdevice=0x22b1 vendor = 'Intel Corporation' device = 'Ethernet Connection (10) I219-LM' class = network subclass = ethernet rtsx0@pci0:2:0:0: class=0xff0000 rev=0x01 hdr=0x00 vendor=0x10ec device=0x522a subvendor=0x17aa subdevice=0x22b1 vendor = 'Realtek Semiconductor Co., Ltd.' device = 'RTS522A PCI Express Card Reader' vgapci1@pci0:45:0:0: class=0x030200 rev=0xa1 hdr=0x00 vendor=0x10de device=0x1d34 subvendor=0x17aa subdevice=0x22b2 vendor = 'NVIDIA Corporation' device = 'GP108GLM [Quadro P520]' class = display subclass = 3D nvme0@pci0:46:0:0: class=0x010802 rev=0x00 hdr=0x00 vendor=0x15b7 device=0x5002 subvendor=0x15b7 subdevice=0x5002 vendor = 'Sandisk Corp' device = 'WD Black 2018/SN750 / PC SN720 NVMe SSD' class = mass storage subclass = NVM ==== USB ==== ugen0.1: at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=SAVE (0mA) ugen0.2: at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (50mA) ugen0.3: at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA) ugen0.4: at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (100mA) ugen0.5: at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (100mA) ===== Kernel modules ===== Sorted list of loaded modules: kldstat | grep ko | awk '{print $5}' | sort acpi_ibm.ko acpi_video.ko acpi_wmi.ko cc_htcp.ko coretemp.ko cpuctl.ko cryptodev.ko cuse.ko dmabuf.ko drm.ko fdescfs.ko fusefs.ko geom_linux_lvm.ko hidbus.ko hidraw.ko hkbd.ko i915kms.ko ichsmb.ko if_iwlwifi.ko iic.ko linprocfs.ko linsysfs.ko linux_common.ko linux.ko linux64.ko linuxkpi_gplv2.ko mac_ntpd.ko netgraph.ko netlink.ko ng_bluetooth.ko ng_btsocket.ko ng_hci.ko ng_l2cap.ko ng_socket.ko ng_ubt.ko pchtherm.ko pty.ko smbus.ko sysctlinfo.ko tmpfs.ko tpm.ko uhid.ko ums.ko usbhid.ko wmt.ko zfs.ko ===== Tweaks and Tips ===== ==== Network ==== Network is working //out of the box// using the following drivers: ^ Type ^ Driver ^ | **Ethernet** | em Intel(R) PRO/1000 Gigabit Ethernet adapter driver | | **[[/WiFi|WiFi]]** | iwlwifi Intel IEEE 802.11a/b/g/n/ac/ax wireless network driver | === Ethernet === * Load the driver The //em// driver will load automatically at boot time and nothing is really needed. However, if you want to force load the driver you may need the following line in your ''%%/boot/loader.conf%%'' if_em_load="YES" * Place your static network configuration settings in the ''%%/etc/rc.conf%%'' file as follow (adapt to your needs): ifconfig_em0="inet 192.168.1.1 netmask 255.255.255.0" defaultrouter="192.168.1.254" ifconfig_em0="up" * For a //DHCP// configuration place the following lines in the ''%%/etc/rc.conf%%'': ifconfig_em0="DHCP" ifconfig_em0="up" === WiFi === The //iwlwifi// driver will load automatically at boot time and nothing is really needed. However, if you want to force load the driver you may need the following line in your ''%%/etc/rc.conf%%'' kld_list="${kld_list} if_iwlwifi" It is discouraged to load the driver from ''%%/boot/loader.conf%%'' * Register all your //SSID// in ''%%/etc/wpa_supplicant.conf%%'': network={ ssid="My_Home_Network" # Here is your SSID scan_ssid=0 psk="AZERTYUIOP" # Here is you WiFi password priority=1 } # The following is needed for open WiFi networks network={ priority=0 key_mgmt=NONE } * Enable the //wpa_supplicant// service by adding the following in the ''%%/etc/rc.conf%%'' file # Enable wpa supplicant the service wpa_supplicant_enable="YES" # Name the wireless interface `wlan0` wlans_iwlwifi0="wlan0" * Configure the ''%%wlan0%%'' interface in your ''%%/etc/rc.conf%%'' file ifconfig_wlan0="WPA SYNCDHCP" defaultrouter="192.168.1.1" * Start the ''%%wpa_supplicant%%'' service service wpa_supplicant start ==== Webcam ==== === Device identification === The webcam is connected through //USB// and can be listed with the following command: usbconfig | grep Cam ugen0.5: at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA) The device is the 5th device on the first //USB// bus, so its identifier is ''%%ugen0.5%%''. === Service configuration and user settings === * Install the ''%%webcamd%%'' program pkg install webcamd * Add your user to the ''%%webcamd%%'' group pw groupmod webcamd -m Once the command issued, you will need to logout and login again to be part of the ''%%webcamd%%'' group. * Enable the ''%%webcamd%%'' service by adding the following line to the ''%%/etc/rc.conf%%'' file. webcamd_enable="YES" * Start the ''%%webcamd%%'' service service webcamd start At this point, applications launched by your user should have access to your webcam (it should be listed as available device). ==== Touchpad and trackpoint ==== //Touchpad// and //trackpoint// are seen as pointing device like the mouse. There is nothing particular to make them work as expected. Personnaly I find touchads annoying as my thumbs tends to rub against it and unexpectedly change window focus ! //Touchpad// can be disabled in the //BIOS// settings but it may not be sufficient to fully disable it. Add the following lines to the ''%%/boot/loader.conf%%'' to fully disable //touchpad// and enable the //trackpoint//. hw.psm.trackpoint_support="1" hw.psm.synaptics_support="0 ==== MicroSD card reader ==== Although not very practical to use, the //%%MicroSD%%// card reader located on the left edge of the laptop works right out of the box, nothing to configure here. ==== Bluetooth audio ==== //Bluetooth// works fine with the ''%%iwmbt-firmware%%''. Configuring //Bluetooth// to make it pair with your favorite audio speaker or headset is a bit tricky. * Install the firmware for your bluetooth pkg install iwmbt-firmware * Load the ''%%cuse%%'' (needed by ''%%virtual_oss%%'') and ''%%ng_ubt%%'' kernel modules at boot time by adding the following line in the ''%%/boot/loader.conf%%'' cuse_load="YES" ng_ubt_load="YES" Alternatively, you may load these modules manually with the following commands: kldload cuse kldload ng_ubt * Add the following lines in ''%%/etc/rc.conf%%'' hcsecd_enable="YES" devd_enable="YES" devd_flags="-q" bluetooth_enable="YES" * Start the ''%%devd%%'' service service devd start * Start the bluetooth stack service bluetooth start ubt0 Starting the ''%%bluetooth%%'' service maywill fail at the first try. Retry if needed. * Start the ''%%hcsed%%'' service service hcsed start * List all bluetooth devices around you with the following command hccontrol -n ubt0hci inquiry Locate your device and pick its ''%%BD_ADDR%%'' which is very like a //MAC// address. * Declare your device in ''%%/etc/bluetooth/hosts%%'' Declare your bluetooth audio speaker/headphone in the ''%%/etc/bluetooth/hosts%%'' by adding its ''%%BD_ADDR%%'' and its name. You may choose the name as it suits you. 4c:87:de:ad:be:ef Bose-Mini-Soundlink-II * Declare your device in ''%%/etc/bluetooth/hcsecd.conf%%'' Declare your bluetooth audio speaker/headphone in the ''%%/etc/bluetooth/hcsecd.conf%%'' file. The ''%%bdaddr%%'' value is the ''%%BD_ADDR%%'' value of your bluetooth speacker/headphone. The ''%%name%%'' value must be the same as the name declared in ''%%/etc/bluetooth/hosts%%''. If no PIN code is needed to connect to your bluetooth speaker/headphone declare ''%%pin "0000"%%''. device { bdaddr 4c:87:de:ad:be:ef; name "Bose-Mini-Soundlink-II"; key nokey; pin "0000"; } * Make it persistent Add those lines to the ''%%/etc/rc.local%%'' script (create it if needed) to connect to your Bluetooth audio speaker/headphone and set execution permissions on it. echo "Remove virtual_oss device" pkill virtual_oss echo "Disable write auth..." /usr/sbin/hccontrol -n ubt0hci write_authentication_enable 0 echo "Change local name..." /usr/sbin/hccontrol -n ubt0hci change_local_name $(hostname -s) echo "Connect to Bose-Mini-Soundlink-II..." /usr/sbin/hccontrol -n ubt0hci create_connection Bose-Mini-Soundlink-II echo "Write auth var..." /usr/sbin/hccontrol -n ubt0hci write_authentication_enable 1 echo "Create virtual_oss device..." /usr/local/sbin/virtual_oss -B -T /dev/sndstat -S -C 2 -c 2 -r 48000 -b 16 -s 8192 -O /dev/dsp0 -R /dev/dsp0 -P /dev/bluetooth/Bose-Mini-Soundlink-II -d dsp -d dsp4.0 -t vdsp.ctl * Make ''%%/etc/rc.local%%'' executable chmod 755 /etc/rc.local You may reboot and your laptop should reconnect //automagically// to your Blueetooth speaker/headphone. ==== Fn keys ==== The special //Fn keys// are keys accessed with the combination of the ''%%Fn%%'' key and one of the functionction keys ''%%F1%%'' to ''%%F12%%''. Those keys allow user predefined action to be accomplished by pressing a single key (i.e: increase / decrease volume or screen backlight). Support for the //Fn keys// is partial and may work or not depending on your hardware/firmware version. //YMMV//. * Load the //ACPI// kernel module To load the correct //ACPI// kernel module, add ''%%acpi_ibm%%'' to the kernel module list found in the ''%%/etc/rc.conf%%'' kld_list="${kld_list} acpi_ibm" * If not already enabled, enable the ''%%devd%%'' service by adding the following line to the ''%%/etc/rc.conf%%'' file: devd_enable="YES" devd_flags="-q" * Create the ''%%/usr/local/etc/devd/acpi_ibm.conf%%'' file and each //Fn key// with the desired action by adding the following lines to it: # IBM ACPI buttons notify 100 { match "system" "ACPI"; match "subsystem" "IBM"; match "notify" "0x10"; action "backlight incr"; }; notify 100 { match "system" "ACPI"; match "subsystem" "IBM"; match "notify" "0x11"; action "backlight decr"; }; notify 100 { match "system" "ACPI"; match "subsystem" "IBM"; match "notify" "0x1b"; action "logger $notify [Mic mute]"; }; notify 100 { match "system" "ACPI"; match "subsystem" "IBM"; match "notify" "0x07"; action "logger $notify [External display]"; }; notify 100 { match "system" "ACPI"; match "subsystem" "IBM"; match "notify" "0x05"; action "logger $notify [rfkill]"; }; notify 100 { match "system" "ACPI"; match "subsystem" "IBM"; match "notify" "0x17"; action "logger $notify [Notification]"; }; notify 100 { match "system" "ACPI"; match "subsystem" "IBM"; match "notify" "0x18"; action "logger $notify [Call]"; }; notify 100 { match "system" "ACPI"; match "subsystem" "IBM"; match "notify" "0x19"; action "logger $notify [Hang]"; }; notify 100 { match "system" "ACPI"; match "subsystem" "IBM"; action "logger $notify [Unidentfied]"; }; This file attach a //logger action// on most of the //Fn keys// (a log entry will appear in ''%%/var/log/messages%%'' when any of the //Fn keys// is pressed). It also bind the backlight control keys (''%%F5%%'' and ''%%F6%%'') to the ''%%backlight%%'' program to control the laptop main display backlight. Feel free to adapt this file to suit your needs. At this point, I have not found the ''%%$notify%%'' value for the //audio control// keys (''%%F1%%'' to ''%%F3%%''). However ''%%Mic mute%%'' (''%%F4%%'') is identified by ''%%0X1b%%''. * Install the ''%%backlight%%'' program pkg install backlight * Restart the ''%%devd%%'' service service devd restart Now the ''%%F5%%'' and ''%%F6%%'' keys, when pressed with the ''%%Fn%%'' modifier will increase/decrease the laptop screen backlight. * Set the default backlight level by adding the following lines in the ''%%/etc/rc.local%%'' file echo "Setting backlight to 50%" /usr/bin/backlight 50% * Set execution permissions on the ''%%/etc/rc.local%%'' file chmod 755 /etc/rc.local ==== Thunderbolt 3 ==== My laptop is connected to a [[https://support.lenovo.com/us/en/solutions/pd500503-thinkpad-universal-thunderbolt-4-dock-overview-and-service-parts|Lenovo Universal Thunderbolt 4 dock]]. Even if the laptop itself is equiped with only a //Thunderbolt 3// port, it works like a charm out of the box. When connected the docking station will add some extra //USB// devices: [...] ugen0.3: at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA) ugen0.4: at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (100mA) ugen0.5: at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (0mA) ugen0.6: at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA) ugen0.7: at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA) ugen0.8: at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (30mA) [...] ugen0.13: at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=SAVE (0mA) ugen0.14: at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=SAVE (0mA) ugen0.15: at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=SAVE (0mA) ugen0.16: at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=ON (72mA) Unfortunately when booting docked to the docking station, the //USB// device order will change. I have two 22" //HDMI// monitors connected to the docking station. One of them is connected to one of the two //Displayport// of the docking station through a //HDMI// to //DP// adapter. This setup works fine and the maximum resolution of the whole thing is 3 x 1920x1080 as follows: xrandr --listmonitors Monitors: 3 0: +*eDP-1 1920/309x1080/174+0+0 eDP-1 1: +DP-2-1-5 1920/521x1080/293+1920+0 DP-2-1-5 2: +DP-2-2 1920/521x1080/293+3840+0 DP-2-2 * The //Realtek Realtek LAN// device is a //Realtek 8153 USB network adapter// and is identified as ''%%ue0%%'' by ifconfig. * The //Lenovo %%ThinkPad%% Thunderbolt 4 Dock USB Audio// is identified as ''%%pcm2%%'' by the sound driver (''%%cat /dev/sndstat%%'') * For unknown reason, the monitor ''%%1%%'' is seen by ''%%xrandr%%'' as a //DP// monitor even though it is connected to the //HDMI// port of the docking station. * For another unknown reason, when the two external monitors are put asleep by //DPMS//, they may refuse to wake. I tried some settings but was unable to find a solution to this problem. === Workaround for unwakable DPMS monitors === The only workaround I found is: * Switch to another //TTY// with ''%%Ctrl+Alt+F2%%'' * Wait for the monitors to wake and display the console * Switch back to //Xorg// with ''%%Ctrl+Alt+F9%%''. This workaround may not always work or may need to be applied several times with the good timing between //TTY/Xorg// switch. //Your mileage may vary//. ---- ===== Files ===== ==== /etc/rc.conf ==== performance_cpu_freq="HIGH" clear_tmp_enable="YES" hostname="" keymap="fr.acc.kbd" kld_list="acpi_ibm acpi_video i915kms iic geom_linux_lvm fusefs" # WiFi wpa_supplicant_enable="YES" wlans_iwlwifi0="wlan0" ifconfig_wlan0="WPA SYNCDHCP" defaultrouter="192.168.1.1" # Services zfs_enable="YES" local_unbound_enable="YES" sshd_enable="YES" moused_enable="YES" ntpd_enable="YES" powerd_enable="YES" dumpdev="AUTO" dbus_enable="YES" hald_enable="YES" linux_enable="YES" pcscd_enable="YES" devd_enable="YES" devd_flags="-q" hcsecd_enable="YES" bluetooth_enable="YES" webcamd_enable="YES" syslogd_enable="YES" syslogd_flags="-s -v -v" sndiod_enable="YES" sndiod_flags="-f rsnd/4" smartd_enable="YES" devfs_system_ruleset="localrules" ==== /boot/loader.conf ==== kern.geom.label.disk_ident.enable="0" kern.geom.label.gptid.enable="0" cryptodev_load="YES" sysctlinfo_load="YES" zfs_load="YES" tpm_load="NO" cuse_load="YES" ng_ubt_load="YES" hidraw_load="YES" hkbd_load="YES" hw.usb.quirk.0="0x1050 0x0010 0 0xffff UQ_KBD_IGNORE" hw.usb.quirk.1="0x1050 0x0110 0 0xffff UQ_KBD_IGNORE" hw.usb.quirk.2="0x1050 0x0111 0 0xffff UQ_KBD_IGNORE" hw.usb.quirk.3="0x1050 0x0114 0 0xffff UQ_KBD_IGNORE" hw.usb.quirk.4="0x1050 0x0116 0 0xffff UQ_KBD_IGNORE" hw.usb.quirk.5="0x1050 0x0401 0 0xffff UQ_KBD_IGNORE" hw.usb.quirk.6="0x1050 0x0403 0 0xffff UQ_KBD_IGNORE" hw.usb.quirk.7="0x1050 0x0405 0 0xffff UQ_KBD_IGNORE" hw.usb.quirk.8="0x1050 0x0407 0 0xffff UQ_KBD_IGNORE" hw.usb.quirk.9="0x1050 0x0410 0 0xffff UQ_KBD_IGNORE" # Power saving hw.pci.do_power_nodriver="3" hint.acpi_throttle.0.disabled="1" hint.ahcich.0.pm_level="5" hint.ahcich.1.pm_level="5" hint.ahcich.2.pm_level="5" hint.ahcich.3.pm_level="5" hint.ahcich.4.pm_level="5" hint.ahcich.5.pm_level="5" # for intel cards only drm.i915.enable_rc6="7" drm.i915.semaphores="1" drm.i915.intel_iommu_enabled="1" # Video hw.acpi.reset_video="1" # Audio hw.snd.latency="7" hw.snd.default_auto="0" hint.pcm.0.eq="1" hint.pcm.1.eq="1" hint.pcm.2.eq="1" # Linux compat fdescfs_load="YES" linprocfs_load="YES" linsysfs_load="YES" tmpfs_load="YES" # Optimization autoboot_delay="2" kern.maxproc="100000" kern.ipc.shmseg="1024" kern.ipc.shmmni="1024" hw.psm.trackpoint_support="1" hw.psm.synaptics_support="0" cc_htcp_load="YES" cpuctl_load="YES" coretemp_load="YES" ==== /etc/sysctl.conf ==== #security.bsd.see_other_uids=0 kern.randompid=1 vfs.zfs.min_auto_ashift=12 hw.acpi.lid_switch_state=S3 hw.acpi.s4bios=0 kern.sched.preempt_thresh=224 # Set CPU to max power dev.hwpstate_intel.0.epp=0 dev.hwpstate_intel.1.epp=0 dev.hwpstate_intel.2.epp=0 dev.hwpstate_intel.3.epp=0 dev.hwpstate_intel.4.epp=0 dev.hwpstate_intel.5.epp=0 dev.hwpstate_intel.6.epp=0 dev.hwpstate_intel.7.epp=0 #net.inet6.ip6.auto_linklocal=0 ==== /usr/local/etc/devd/acpi_ibm.conf ==== # IBM ACPI buttons notify 100 { match "system" "ACPI"; match "subsystem" "IBM"; match "notify" "0x10"; action "backlight incr"; }; notify 100 { match "system" "ACPI"; match "subsystem" "IBM"; match "notify" "0x11"; action "backlight decr"; }; notify 100 { match "system" "ACPI"; match "subsystem" "IBM"; match "notify" "0x1b"; action "logger $notify [Mic mute]"; }; notify 100 { match "system" "ACPI"; match "subsystem" "IBM"; match "notify" "0x07"; action "logger $notify [External display]"; }; notify 100 { match "system" "ACPI"; match "subsystem" "IBM"; match "notify" "0x05"; action "logger $notify [rfkill]"; }; ---- {{tag>Laptop}}