Panasonic CF-SV9

From ArchWiki
Jump to navigation Jump to search

Panasonic CF-SV9 is portable and lightweight laptop, part of Panasonic's Let us Note series which is available only in Japanese market. CF-SV9 was introduced in late 2019 and features a 12.1" WUXGA display, 10-th Intel Core i5/i7 CPU ("Comet Lake" family), 8/16 Gb of soldered DDR3 RAM and Intel UHD 620 graphics.

To ensure you have this version, install the package dmidecode and run:

# dmidecode -s system-product-name
CFSV9-1
Device Working Modules
Intel graphics Yes i915
Wireless network Yes iwlmvm
Ethernet Yes e1000e
Audio Yes¹ snd_hda_intel
Microphone Yes snd_sof
Touchpad Yes i2c_hid
Camera Yes uvcvideo
IR Camera Yes uvcvideo
Fingerprint reader² No -
Card Reader Yes sdhci
Power management Yes ?
Bluetooth Yes btusb
Function/Multimedia keys Yes³ panasonic_laptop
Thunderbolt port Yes thunderbolt
DVD-RAM drive Yes cdrom
TPM Yes tpm
ALS⁴ Yes acpi_als
  1. There is an issue with headphones jack connect/disconnect detection with pulseaudio-gitAUR, which required workaround, check #Speaker/Headphones switching
  2. 06cb:00c6 Synaptics FS7600
  3. Most key combinations are working, see Keyboard section bellow for details
  4. Ambient Light Sensor. Works well with clightAUR

System configuration

Kernel 5.7.5-arch1-1

lspci

00:00.0 Host bridge: Intel Corporation Device 9b61 (rev 0c)
00:02.0 VGA compatible controller: Intel Corporation UHD Graphics (rev 02)
00:04.0 Signal processing controller: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem (rev 0c)
00:12.0 Signal processing controller: Intel Corporation Comet Lake Thermal Subsytem
00:14.0 USB controller: Intel Corporation Device 02ed
00:14.2 RAM memory: Intel Corporation Device 02ef
00:14.3 Network controller: Intel Corporation Wireless-AC 9462
00:15.0 Serial bus controller [0c80]: Intel Corporation Serial IO I2C Host Controller
00:16.0 Communication controller: Intel Corporation Comet Lake Management Engine Interface
00:17.0 SATA controller: Intel Corporation Comet Lake SATA AHCI Controller
00:1c.0 PCI bridge: Intel Corporation Device 02bc (rev f0)
00:1d.0 PCI bridge: Intel Corporation Device 02b2 (rev f0)
00:1d.4 PCI bridge: Intel Corporation Device 02b4 (rev f0)
00:1f.0 ISA bridge: Intel Corporation Device 0284
00:1f.3 Multimedia audio controller: Intel Corporation Device 02c8
00:1f.4 SMBus: Intel Corporation Device 02a3
00:1f.5 Serial bus controller [0c80]: Intel Corporation Comet Lake SPI (flash) Controller
00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (10) I219-V
01:00.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 2C 2018] (rev 06)
02:00.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 2C 2018] (rev 06)
02:01.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 2C 2018] (rev 06)
02:02.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 2C 2018] (rev 06)
03:00.0 System peripheral: Intel Corporation JHL7540 Thunderbolt 3 NHI [Titan Ridge 2C 2018] (rev 06)
39:00.0 USB controller: Intel Corporation JHL7540 Thunderbolt 3 USB Controller [Titan Ridge 2C 2018] (rev 06)
3a:00.0 SD Host controller: O2 Micro, Inc. SD/MMC Card Reader Controller (rev 01)
3b:00.0 Non-Volatile memory controller: Toshiba Corporation Device 011a

lsusb

Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 06cb:00c6 Synaptics, Inc. 
Bus 001 Device 003: ID 5986:1164 Acer, Inc USB HD Webcam
Bus 001 Device 005: ID 8087:0026 Intel Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Updates

System firmware, UEFI firmware, firmware for Thunderbolt controller and touchpad, SSD firmware can be udpated via fwupd:

$ fwupdmgr get-updates
• Thunderbolt Controller has no available firmware updates
• KXG60ZNV1T02 NVMe KIOXIA 1024GB has the latest available firmware version
• System Firmware has no available firmware updates
• Touchpad has no available firmware updates
• UEFI Device Firmware has no available firmware updates
• UEFI Device Firmware has no available firmware updates
• UEFI Device Firmware has no available firmware updates

Touchpad

Circular scrolling

Device has relatively small round-shape touchpad, so ability to configure circular scrolling is important for usability (since touchpad ares is too small for gestures). As of 06/27/2020, libinput does not have support for circular scrolling, which means you cannot get cirtular scrolling in Wayland. Under Xorg with xf86-input-synaptics installed circular scrolling works fine with following configuration section

/etc/X11/xorg.conf.d/70-synaptics.conf
Section "InputClass"
        Identifier "touchpad catchall"
        Driver "synaptics"
        MatchIsTouchpad "on"
        MatchDevicePath "/dev/input/event*"
        Option "TapButton1" "1"
        Option "TapButton2" "3"
        Option "TapButton3" "2"
        Option "CircularScrolling" "on"
        Option "CircScrollTrigger" "0"
        Option "CircularPad" "on"
        Option "LeftEdge" "80"
        Option "RightEdge" "450"
        Option "TopEdge" "80"
        Option "BottomEdge" "450"
EndSection

After saving the file, restart Xorg.

Fix touchpad delays after system wake from sleep

Touchpad starts to behave badly and introduce pointer moving delays after system wake up from sleep. To address the issue, i2c_hid kernel module must be unloaded and loaded back again. Following script does the job:

/lib/systemd/system-sleep/fix-touchpad.sh
#!/bin/sh

if [ "$1" = 'post' ]; then
    echo "Reloading i2c_hid module to fix touchpad behavior"
    modprobe -r i2c_hid && modprobe i2c_hid
fi

Audio

Firmware

Audio and microphone work out-of-the-box as of 5.7.5-arch1-1 using sof-firmware and the latest git version of PulseAudio (version 13.99, soon-to-be released as 14), available in AUR as pulseaudio-gitAUR

To make it work with pulseaudio package from repositories, some extra steps are required.

Speaker/Headphones switching

As of 07/19/2020 there is an issue with automatically switching to the headphones on headphones jack connect and back to the speaker on disconnect (upstream issue). Following workaround addresses the problem:

Create file

/etc/acpi/events/headphones_jack
event=jack/headphone
action=/etc/acpi/actions/switch_sink_port.sh %e

And executable script

/etc/acpi/actions/switch_sink_port.sh
#!/bin/sh 

if [ "$2" != "HEADPHONE" ]; then
    exit 0
fi

PREFIX="/usr/bin/machinectl shell USERNAME@ "
COMMAND="/usr/bin/pacmd set-sink-port alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__hw_sofhdadsp__sink [Out] "

case "$3" in
    plug)   ${PREFIX} ${COMMAND}Headphones  ;;
    unplug) ${PREFIX} ${COMMAND}Speaker     ;;
esac

Make sure to replace USERNAME with actual user running PulseAudio service. Restart acpid after adding the files.

Keyboard

Fn keys

Keys F1-F6 & F11-F12 work out of the box. Keys F7-F10 does not work and does not produce any key codes, according to drivers/platform/x86/panasonic-laptop.c, these buttons supposed to perform following functions:

{ KE_KEY, 7, { KEY_SLEEP } },
{ KE_KEY, 8, { KEY_PROG1 } }, /* Change CPU boost */
{ KE_KEY, 9, { KEY_BATTERY } },
{ KE_KEY, 10, { KEY_SUSPEND } },

Layout

Being targeted to Japanese internal market, laptop has keyboard with JIS layout. Comparing to ANSI, it has 6 additional buttons, which are not used in US layout and can be programmed for any custom usage or left inactive.