No support for P950ER

Issue #46 new
Jesse Litton created an issue

I'll take a stab at adding this myself and submitting a patch tonight or tomorrow, but wanted to put the details here in case I get sidetracked with my other projects.

uname:

Linux P950ER 4.17.0-041700rc4-generic #201805070430 SMP Mon May 7 04:31:46 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

dmesg:

[ 7323.599344] input: Clevo Airplane-Mode Hotkey as /devices/platform/clevo_xsm_wmi/input/input32
[ 7323.599436] clevo_xsm_wmi: Polling thread started (PID: 3129), polling at 5 Hz
[ 7323.602195] clevo_xsm_wmi clevo_xsm_wmi: hwmon_device_register() is deprecated. Please convert the driver to use hwmon_device_register_with_info().
11:51:20 evil@P950ER ~» sudo dmidecode
[sudo] password for evil: 
# dmidecode 3.1
Getting SMBIOS data from sysfs.
SMBIOS 3.1.1 present.
Table at 0x7A999000.

Handle 0x0000, DMI type 0, 26 bytes
BIOS Information
        Vendor: American Megatrends Inc.
        Version: 1.05.04dRLS2
        Release Date: 04/25/2018
        Address: 0xF0000
        Runtime Size: 64 kB
        ROM Size: 8192 kB
        Characteristics:
                PCI is supported
                BIOS is upgradeable
                BIOS shadowing is allowed
                Boot from CD is supported
                Selectable boot is supported
                EDD is supported
                Print screen service is supported (int 5h)
                8042 keyboard services are supported (int 9h)
                Printer services are supported (int 17h)
                ACPI is supported
                USB legacy is supported
                BIOS boot specification is supported
                Targeted content distribution is supported
                UEFI is supported
        BIOS Revision: 5.13

Handle 0x0001, DMI type 1, 27 bytes
System Information
        Manufacturer: Notebook                        
        Product Name: P95xER                         
        Version: Not Applicable                  
        Serial Number: Not Applicable                  
        UUID: 03000200-0400-0500-0006-000700080009
        Wake-up Type: Power Switch
        SKU Number: Not Applicable                  
        Family: Not Applicable                  

Handle 0x0002, DMI type 2, 15 bytes
Base Board Information
        Manufacturer: Notebook                        
        Product Name: P95xER                         
        Version: Not Applicable                  
        Serial Number: Not Applicable                  
        Asset Tag: Tag 12345
        Features:
                Board is a hosting board
                Board is replaceable
        Location In Chassis: Not Applicable
        Chassis Handle: 0x0003
        Type: Motherboard
        Contained Object Handles: 0

Handle 0x0003, DMI type 3, 22 bytes
Chassis Information
        Manufacturer: No Enclosure                    
        Type: Notebook
        Lock: Not Present
        Version: N/A                             
        Serial Number: None                            
        Asset Tag: No Asset Tag
        Boot-up State: Safe
        Power Supply State: Safe
        Thermal State: Safe
        Security Status: None
        OEM Information: 0x00000000
        Height: Unspecified
        Number Of Power Cords: 1
        Contained Elements: 0
        SKU Number: Default string

Handle 0x0004, DMI type 8, 9 bytes
Port Connector Information
        Internal Reference Designator: J_HDMI1
        Internal Connector Type: None
        External Reference Designator: HDMI
        External Connector Type: Other
        Port Type: Video Port

Handle 0x0005, DMI type 8, 9 bytes
Port Connector Information
        Internal Reference Designator: J_CRT1
        Internal Connector Type: None
        External Reference Designator: CRT
        External Connector Type: Other
        Port Type: Video Port

Handle 0x0006, DMI type 8, 9 bytes
Port Connector Information
        Internal Reference Designator: J_MIC1
        Internal Connector Type: None
        External Reference Designator: MIC
        External Connector Type: Other
        Port Type: Audio Port

Handle 0x0007, DMI type 8, 9 bytes
Port Connector Information
        Internal Reference Designator: J_HP1
        Internal Connector Type: None
        External Reference Designator: HP
        External Connector Type: Mini Jack (headphones)
        Port Type: Audio Port

Handle 0x0008, DMI type 8, 9 bytes
Port Connector Information
        Internal Reference Designator: J_TYPEC1
        Internal Connector Type: None
        External Reference Designator: USB Type C
        External Connector Type: Access Bus (USB)
        Port Type: USB

Handle 0x0009, DMI type 8, 9 bytes
Port Connector Information
        Internal Reference Designator: J_USB3_1
        Internal Connector Type: None
        External Reference Designator: USB 3.1
        External Connector Type: Access Bus (USB)
        Port Type: USB

Handle 0x000A, DMI type 8, 9 bytes
Port Connector Information
        Internal Reference Designator: J_USB3_2
        Internal Connector Type: None
        External Reference Designator: USB 3
        External Connector Type: Access Bus (USB)
        Port Type: USB

Handle 0x000B, DMI type 8, 9 bytes
Port Connector Information
        Internal Reference Designator: J_USB3_3
        Internal Connector Type: None
        External Reference Designator: USB 3
        External Connector Type: Access Bus (USB)
        Port Type: USB

Handle 0x000C, DMI type 8, 9 bytes
Port Connector Information
        Internal Reference Designator: J_USB3_4
        Internal Connector Type: None
        External Reference Designator: USB 3
        External Connector Type: Access Bus (USB)
        Port Type: USB

Handle 0x000D, DMI type 8, 9 bytes
Port Connector Information
        Internal Reference Designator: J_CARD-REV1
        Internal Connector Type: None
        External Reference Designator: Card Reader
        External Connector Type: Other
        Port Type: Other

Handle 0x000E, DMI type 8, 9 bytes
Port Connector Information
        Internal Reference Designator: J_RJ1
        Internal Connector Type: None
        External Reference Designator: Giga Lan 1
        External Connector Type: RJ-45
        Port Type: Network Port

Handle 0x000F, DMI type 9, 17 bytes
System Slot Information
        Designation: PCI Express Slot J_WLAN1
        Type: x1 PCI Express
        Current Usage: In Use
        Length: Short
        ID: 3
        Characteristics:
                3.3 V is provided
                Opening is shared
                PME signal is supported
        Bus Address: 0000:00:01.0

Handle 0x0010, DMI type 10, 8 bytes
On Board Device 1 Information
        Type: Sound
        Status: Enabled
        Description: HD-Audio
On Board Device 2 Information
        Type: Ethernet
        Status: Enabled
        Description: Giga Lan

Handle 0x0011, DMI type 11, 5 bytes
OEM Strings
        String 1: 1558
        String 2: OEM String
        String 3: Default string
        String 4: Default string
        String 5: BIOS:1.05.04dRLS2

Handle 0x0012, DMI type 12, 5 bytes
System Configuration Options
        Option 1: Default string

Handle 0x0013, DMI type 32, 20 bytes
System Boot Information
        Status: No errors detected

Handle 0x0014, DMI type 16, 23 bytes
Physical Memory Array
        Location: System Board Or Motherboard
        Use: System Memory
        Error Correction Type: None
        Maximum Capacity: 64 GB
        Error Information Handle: Not Provided
        Number Of Devices: 2

Handle 0x0015, DMI type 17, 40 bytes
Memory Device
        Array Handle: 0x0014
        Error Information Handle: Not Provided
        Total Width: 64 bits
        Data Width: 64 bits
        Size: 16384 MB
        Form Factor: SODIMM
        Set: None
        Locator: ChannelA-DIMM0
        Bank Locator: BANK 0
        Type: DDR4
        Type Detail: Synchronous
        Speed: 2400 MT/s
        Manufacturer: 8945
        Serial Number: 01010101
        Asset Tag: 9876543210
        Part Number: GKE160SO102408-2400 
        Rank: 2
        Configured Clock Speed: 2400 MT/s
        Minimum Voltage: 1.2 V
        Maximum Voltage: 1.2 V
        Configured Voltage: 1.2 V

Handle 0x0016, DMI type 17, 40 bytes
Memory Device
        Array Handle: 0x0014
        Error Information Handle: Not Provided
        Total Width: 64 bits
        Data Width: 64 bits
        Size: 16384 MB
        Form Factor: SODIMM
        Set: None
        Locator: ChannelB-DIMM0
        Bank Locator: BANK 2
        Type: DDR4
        Type Detail: Synchronous
        Speed: 2400 MT/s
        Manufacturer: 8945
        Serial Number: 01010101
        Asset Tag: 9876543210
        Part Number: GKE160SO102408-2400 
        Rank: 2
        Configured Clock Speed: 2400 MT/s
        Minimum Voltage: Unknown
        Maximum Voltage: Unknown
        Configured Voltage: 1.2 V

Handle 0x0017, DMI type 19, 31 bytes
Memory Array Mapped Address
        Starting Address: 0x00000000000
        Ending Address: 0x007FFFFFFFF
        Range Size: 32 GB
        Physical Array Handle: 0x0014
        Partition Width: 2

Handle 0x0018, DMI type 221, 26 bytes
OEM-specific Type
        Header and Data:
                DD 1A 18 00 03 01 00 07 00 25 34 00 02 00 00 00
                00 84 00 03 00 FF FF FF FF FF
        Strings:
                Reference Code - CPU
                uCode Version
                TXT ACM version

Handle 0x0019, DMI type 221, 26 bytes
OEM-specific Type
        Header and Data:
                DD 1A 19 00 03 01 00 07 00 25 34 00 02 00 0A 00
                00 01 00 03 04 0C 00 00 2D 04
        Strings:
                Reference Code - ME 11.0
                MEBx version
                ME Firmware Version
                Consumer SKU

Handle 0x001A, DMI type 221, 89 bytes
OEM-specific Type
        Header and Data:
                DD 59 1A 00 0C 01 00 07 00 25 34 00 02 03 FF FF
                FF FF FF 04 00 FF FF FF 10 00 05 00 FF FF FF 10
                00 06 00 FF FF FF FF FF 07 00 02 00 00 00 00 08
                00 09 00 00 00 00 09 00 07 00 00 00 00 0A 00 13
                00 00 00 00 0B 00 07 00 00 00 00 0C 00 06 00 00
                00 00 0D 00 03 00 00 00 00
        Strings:
                Reference Code - CNL PCH
                PCH-CRID Status
                Disabled
                PCH-CRID Original Value
                PCH-CRID New Value
                OPROM - RST - RAID
                CNL PCH H A0 Hsio Version
                CNL PCH H Ax Hsio Version
                CNL PCH H Bx Hsio Version
                CNL PCH LP Ax Hsio Version
                CNL PCH LP B0 Hsio Version
                CNL PCH LP Bx Hsio Version
                CNL PCH LP Dx Hsio Version

Handle 0x001B, DMI type 221, 54 bytes
OEM-specific Type
        Header and Data:
                DD 36 1B 00 07 01 00 07 00 25 34 00 02 00 00 07
                01 31 00 03 00 07 00 25 34 00 04 05 FF FF FF FF
                FF 06 00 00 00 00 07 00 07 00 00 00 00 07 00 08
                00 FF FF FF FF FF
        Strings:
                Reference Code - SA - System Agent
                Reference Code - MRC
                SA - PCIe Version
                SA-CRID Status
                Disabled
                SA-CRID Original Value
                SA-CRID New Value
                OPROM - VBIOS

Handle 0x001C, DMI type 221, 12 bytes
OEM-specific Type
        Header and Data:
                DD 0C 1C 00 01 00 00 04 00 00 00 00
        Strings:
                FSP Binary Version

Handle 0x001D, DMI type 7, 19 bytes
Cache Information
        Socket Designation: L1 Cache
        Configuration: Enabled, Not Socketed, Level 1
        Operational Mode: Write Back
        Location: Internal
        Installed Size: 384 kB
        Maximum Size: 384 kB
        Supported SRAM Types:
                Synchronous
        Installed SRAM Type: Synchronous
        Speed: Unknown
        Error Correction Type: Parity
        System Type: Unified
        Associativity: 8-way Set-associative

Handle 0x001E, DMI type 7, 19 bytes
Cache Information
        Socket Designation: L2 Cache
        Configuration: Enabled, Not Socketed, Level 2
        Operational Mode: Write Back
        Location: Internal
        Installed Size: 1536 kB
        Maximum Size: 1536 kB
        Supported SRAM Types:
                Synchronous
        Installed SRAM Type: Synchronous
        Speed: Unknown
        Error Correction Type: Single-bit ECC
        System Type: Unified
        Associativity: 4-way Set-associative

Handle 0x001F, DMI type 7, 19 bytes
Cache Information
        Socket Designation: L3 Cache
        Configuration: Enabled, Not Socketed, Level 3
        Operational Mode: Write Back
        Location: Internal
        Installed Size: 9216 kB
        Maximum Size: 9216 kB
        Supported SRAM Types:
                Synchronous
        Installed SRAM Type: Synchronous
        Speed: Unknown
        Error Correction Type: Multi-bit ECC
        System Type: Unified
        Associativity: 12-way Set-associative

Handle 0x0020, DMI type 4, 48 bytes
Processor Information
        Socket Designation: U3E1
        Type: Central Processor
        Family: Core i7
        Manufacturer: Intel(R) Corporation
        ID: EA 06 09 00 FF FB EB BF
        Signature: Type 0, Family 6, Model 158, Stepping 10
        Flags:
                FPU (Floating-point unit on-chip)
                VME (Virtual mode extension)
                DE (Debugging extension)
                PSE (Page size extension)
                TSC (Time stamp counter)
                MSR (Model specific registers)
                PAE (Physical address extension)
                MCE (Machine check exception)
                CX8 (CMPXCHG8 instruction supported)
                APIC (On-chip APIC hardware supported)
                SEP (Fast system call)
                MTRR (Memory type range registers)
                PGE (Page global enable)
                MCA (Machine check architecture)
                CMOV (Conditional move instruction supported)
                PAT (Page attribute table)
                PSE-36 (36-bit page size extension)
                CLFSH (CLFLUSH instruction supported)
                DS (Debug store)
                ACPI (ACPI supported)
                MMX (MMX technology supported)
                FXSR (FXSAVE and FXSTOR instructions supported)
                SSE (Streaming SIMD extensions)
                SSE2 (Streaming SIMD extensions 2)
                SS (Self-snoop)
                HTT (Multi-threading)
                TM (Thermal monitor supported)
                PBE (Pending break enabled)
        Version: Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
        Voltage: 0.8 V
        External Clock: 100 MHz
        Max Speed: 8300 MHz
        Current Speed: 2100 MHz
        Status: Populated, Enabled
        Upgrade: Other
        L1 Cache Handle: 0x001D
        L2 Cache Handle: 0x001E
        L3 Cache Handle: 0x001F
        Serial Number: To Be Filled By O.E.M.
        Asset Tag: To Be Filled By O.E.M.
        Part Number: To Be Filled By O.E.M.
        Core Count: 6
        Core Enabled: 6
        Thread Count: 12
        Characteristics:
                64-bit capable
                Multi-Core
                Hardware Thread
                Execute Protection
                Enhanced Virtualization
                Power/Performance Control

Handle 0x0021, DMI type 20, 35 bytes
Memory Device Mapped Address
        Starting Address: 0x00000000000
        Ending Address: 0x003FFFFFFFF
        Range Size: 16 GB
        Physical Device Handle: 0x0015
        Memory Array Mapped Address Handle: 0x0017
        Partition Row Position: Unknown
        Interleave Position: 1
        Interleaved Data Depth: 2

Handle 0x0022, DMI type 20, 35 bytes
Memory Device Mapped Address
        Starting Address: 0x00400000000
        Ending Address: 0x007FFFFFFFF
        Range Size: 16 GB
        Physical Device Handle: 0x0016
        Memory Array Mapped Address Handle: 0x0017
        Partition Row Position: Unknown
        Interleave Position: 2
        Interleaved Data Depth: 2

Handle 0x0023, DMI type 130, 20 bytes
OEM-specific Type
        Header and Data:
                82 14 23 00 24 41 4D 54 00 00 00 00 00 A5 AF 02
                C0 00 00 00

Handle 0x0024, DMI type 131, 64 bytes
OEM-specific Type
        Header and Data:
                83 40 24 00 31 00 00 00 0A 00 00 00 00 00 01 00
                F8 00 0D A3 00 00 00 00 01 00 00 00 00 00 0C 00
                2D 04 00 00 00 00 00 00 FE 00 FF FF 00 00 00 00
                00 00 00 00 22 00 00 00 76 50 72 6F 00 00 00 00

Handle 0x0025, DMI type 13, 22 bytes
BIOS Language Information
        Language Description Format: Long
        Installable Languages: 1
                en|US|iso8859-1
        Currently Installed Language: en|US|iso8859-1

Handle 0x0026, DMI type 41, 11 bytes
Onboard Device
        Reference Designation: Onboard - Other
        Type: Other
        Status: Enabled
        Type Instance: 1
        Bus Address: 0000:00:00.0

Handle 0x0027, DMI type 41, 11 bytes
Onboard Device
        Reference Designation: Onboard - Video
        Type: Video
        Status: Enabled
        Type Instance: 1
        Bus Address: 0000:00:02.0

Handle 0x0028, DMI type 41, 11 bytes
Onboard Device
        Reference Designation: Onboard - Other
        Type: Other
        Status: Enabled
        Type Instance: 2
        Bus Address: 0000:00:08.0

Handle 0x0029, DMI type 41, 11 bytes
Onboard Device
        Reference Designation: Onboard - Other
        Type: Other
        Status: Enabled
        Type Instance: 3
        Bus Address: 0000:00:12.0

Handle 0x002A, DMI type 41, 11 bytes
Onboard Device
        Reference Designation: Onboard - Other
        Type: Other
        Status: Enabled
        Type Instance: 4
        Bus Address: 0000:00:14.0

Handle 0x002B, DMI type 41, 11 bytes
Onboard Device
        Reference Designation: Onboard - Other
        Type: Other
        Status: Enabled
        Type Instance: 5
        Bus Address: 0000:00:14.2

Handle 0x002C, DMI type 41, 11 bytes
Onboard Device
        Reference Designation: Onboard - Ethernet
        Type: Ethernet
        Status: Enabled
        Type Instance: 1
        Bus Address: 0000:00:14.3

Handle 0x002D, DMI type 41, 11 bytes
Onboard Device
        Reference Designation: Onboard - Other
        Type: Other
        Status: Enabled
        Type Instance: 6
        Bus Address: 0000:00:16.0

Handle 0x002E, DMI type 41, 11 bytes
Onboard Device
        Reference Designation: Onboard - SATA
        Type: SATA Controller
        Status: Enabled
        Type Instance: 1
        Bus Address: 0000:00:17.0

Handle 0x002F, DMI type 41, 11 bytes
Onboard Device
        Reference Designation: Onboard - Other
        Type: Other
        Status: Enabled
        Type Instance: 7
        Bus Address: 0000:00:1f.0

Handle 0x0030, DMI type 41, 11 bytes
Onboard Device
        Reference Designation: Onboard - Sound
        Type: Sound
        Status: Enabled
        Type Instance: 1
        Bus Address: 0000:00:1f.3

Handle 0x0031, DMI type 41, 11 bytes
Onboard Device
        Reference Designation: Onboard - Other
        Type: Other
        Status: Enabled
        Type Instance: 8
        Bus Address: 0000:00:1f.4

Handle 0x0032, DMI type 41, 11 bytes
Onboard Device
        Reference Designation: Onboard - Other
        Type: Other
        Status: Enabled
        Type Instance: 9
        Bus Address: 0000:00:1f.5

Handle 0x0033, DMI type 221, 89 bytes
OEM-specific Type
        Header and Data:
                DD 59 33 00 0C 01 00 FF FF FF FF FF 02 00 FF FF
                FF FF FF 03 04 FF FF FF FF FF 05 06 FF FF FF FF
                FF 07 08 FF FF FF FF FF 09 00 00 00 00 00 00 0A
                00 FF FF FF FF FF 0B 00 FF FF 00 00 00 0C 00 00
                09 00 73 10 0D 0E 01 04 01 00 00 0F 00 00 07 00
                00 00 10 00 00 02 00 0A 00
        Strings:
                Lan Phy Version
                Sensor Firmware Version
                Debug Mode Status
                Disabled
                Performance Mode Status
                Disabled
                Debug Use USB(Disabled:Serial)
                Disabled
                ICC Overclocking Version
                UNDI Version
                EC FW Version
                GOP Version
                Royal Park Version
                BP1.4.1.0_RP07
                Platform Version
                Client Silicon Version

Handle 0x0034, DMI type 136, 6 bytes
OEM-specific Type
        Header and Data:
                88 06 34 00 00 00

Handle 0x0035, DMI type 14, 23 bytes
Group Associations
        Name: Firmware Version Info
        Items: 6
                0x0018 (OEM-specific)
                0x0019 (OEM-specific)
                0x001A (OEM-specific)
                0x001B (OEM-specific)
                0x001C (OEM-specific)
                0x0033 (OEM-specific)

Handle 0x0036, DMI type 14, 8 bytes
Group Associations
        Name: $MEI
        Items: 1
                0x0000 (OEM-specific)

Handle 0x0037, DMI type 219, 106 bytes
OEM-specific Type
        Header and Data:
                DB 6A 37 00 01 04 01 45 02 00 90 06 01 85 36 20
                00 00 00 00 40 00 00 00 00 00 00 00 00 40 40 02
                FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                FF FF FF FF FF FF FF FF 03 00 00 00 80 00 00 00
                00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
                00 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00
                00 00 00 00 00 00 00 00 00 00
        Strings:
                MEI1
                MEI2
                MEI3
                MEI4

Handle 0x0038, DMI type 127, 4 bytes
End Of Table

Comments (4)

  1. Jesse Litton reporter

    Added:

        {
            .ident = "Clevo P950ER",
            .matches = {
                DMI_MATCH(DMI_PRODUCT_NAME, "P95xER"),
            },
            .callback = clevo_xsm_dmi_matched,
            .driver_data = &kb_full_color_ops,
        },
    

    Rebuild and reloaded the driver, yet it still doesn't work. :\

    dmesg:

    [75777.402276] clevo_xsm_wmi: Model Clevo P950ER found
    [75777.406957] input: Clevo Airplane-Mode Hotkey as /devices/platform/clevo_xsm_wmi/input/input42
    [75777.407081] clevo_xsm_wmi: Polling thread started (PID: 26796), polling at 5 Hz
    [75777.410847] clevo_xsm_wmi clevo_xsm_wmi: hwmon_device_register() is deprecated. Please convert the driver to use hwmon_device_register_with_info().
    
  2. Lauro Costa

    Just confirming this has worked on Linux Debian 4.18.6-1~bpo9+1, thanks.

    I've downloaded the current master HEAD dcf282992eb8c8e2bbeed891ed593c6ced19e4d4 and added:

    diff --git a/module/clevo-xsm-wmi.c b/module/clevo-xsm-wmi.c
    index e045d7e..2ee08f8 100644
    --- a/module/clevo-xsm-wmi.c
    +++ b/module/clevo-xsm-wmi.c
    @@ -1533,6 +1533,14 @@ static struct dmi_system_id clevo_xsm_dmi_table[] __initdata = {
                    .driver_data = &kb_full_color_ops,
            },
            {
    +                .ident = "Clevo P950ER",
    +                .matches = {
    +                        DMI_MATCH(DMI_PRODUCT_NAME, "P95xER"),
    +                },
    +                .callback = clevo_xsm_dmi_matched,
    +                .driver_data = &kb_full_color_ops,
    +       },
    +       {
                     .ident = "Clevo P95_HP",
                     .matches = {
                             DMI_MATCH(DMI_PRODUCT_NAME, "P95_HP"),
    

    I've this hardware on my hands for the next couple of weeks and can contribute doing tests as instructed, just let me know what is needed.

    • [x] plane mode LED works
    • [x] cpu fan speed reports correctly
    • [x] manual control of RGB keyboard backlight seems to work as expected (through /sys/../kb_{mode,color,brightness} interface}
    • [x] function keys keyboard brightness {up,down}, toggle backlight and cycle_colors work
  3. Log in to comment