Merge tag 'platform-drivers-x86-v5.13-3' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86

Pull x86 platform driver fixes from Hans de Goede:
"Assorted pdx86 bug-fixes and some hardware-id additions for 5.13.

The mlxreg-hotplug revert is a regression-fix"

* tag 'platform-drivers-x86-v5.13-3' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86:
platform/mellanox: mlxreg-hotplug: Revert "move to use request_irq by IRQF_NO_AUTOEN flag"
platform/surface: dtx: Add missing mutex_destroy() call in failure path
platform/surface: aggregator: Fix event disable function
platform/x86: thinkpad_acpi: Add X1 Carbon Gen 9 second fan support
platform/surface: aggregator_registry: Add support for 13" Intel Surface Laptop 4
platform/surface: aggregator_registry: Update comments for 15" AMD Surface Laptop 4

+10 -5
+2 -2
drivers/platform/mellanox/mlxreg-hotplug.c
··· 683 683 684 684 err = devm_request_irq(&pdev->dev, priv->irq, 685 685 mlxreg_hotplug_irq_handler, IRQF_TRIGGER_FALLING 686 - | IRQF_SHARED | IRQF_NO_AUTOEN, 687 - "mlxreg-hotplug", priv); 686 + | IRQF_SHARED, "mlxreg-hotplug", priv); 688 687 if (err) { 689 688 dev_err(&pdev->dev, "Failed to request irq: %d\n", err); 690 689 return err; 691 690 } 692 691 692 + disable_irq(priv->irq); 693 693 spin_lock_init(&priv->lock); 694 694 INIT_DELAYED_WORK(&priv->dwork_irq, mlxreg_hotplug_work_handler); 695 695 dev_set_drvdata(&pdev->dev, priv);
+1 -1
drivers/platform/surface/aggregator/controller.c
··· 1907 1907 { 1908 1908 int status; 1909 1909 1910 - status = __ssam_ssh_event_request(ctrl, reg, reg.cid_enable, id, flags); 1910 + status = __ssam_ssh_event_request(ctrl, reg, reg.cid_disable, id, flags); 1911 1911 1912 1912 if (status < 0 && status != -EINVAL) { 1913 1913 ssam_err(ctrl,
+5 -2
drivers/platform/surface/surface_aggregator_registry.c
··· 156 156 NULL, 157 157 }; 158 158 159 - /* Devices for Surface Laptop 3. */ 159 + /* Devices for Surface Laptop 3 and 4. */ 160 160 static const struct software_node *ssam_node_group_sl3[] = { 161 161 &ssam_node_root, 162 162 &ssam_node_bat_ac, ··· 521 521 /* Surface Laptop 3 (13", Intel) */ 522 522 { "MSHW0114", (unsigned long)ssam_node_group_sl3 }, 523 523 524 - /* Surface Laptop 3 (15", AMD) */ 524 + /* Surface Laptop 3 (15", AMD) and 4 (15", AMD) */ 525 525 { "MSHW0110", (unsigned long)ssam_node_group_sl3 }, 526 + 527 + /* Surface Laptop 4 (13", Intel) */ 528 + { "MSHW0250", (unsigned long)ssam_node_group_sl3 }, 526 529 527 530 /* Surface Laptop Go 1 */ 528 531 { "MSHW0118", (unsigned long)ssam_node_group_slg1 },
+1
drivers/platform/surface/surface_dtx.c
··· 427 427 */ 428 428 if (test_bit(SDTX_DEVICE_SHUTDOWN_BIT, &ddev->flags)) { 429 429 up_write(&ddev->client_lock); 430 + mutex_destroy(&client->read_lock); 430 431 sdtx_device_put(client->ddev); 431 432 kfree(client); 432 433 return -ENODEV;
+1
drivers/platform/x86/thinkpad_acpi.c
··· 8853 8853 TPACPI_Q_LNV3('N', '2', 'O', TPACPI_FAN_2CTL), /* P1 / X1 Extreme (2nd gen) */ 8854 8854 TPACPI_Q_LNV3('N', '2', 'V', TPACPI_FAN_2CTL), /* P1 / X1 Extreme (3nd gen) */ 8855 8855 TPACPI_Q_LNV3('N', '3', '0', TPACPI_FAN_2CTL), /* P15 (1st gen) / P15v (1st gen) */ 8856 + TPACPI_Q_LNV3('N', '3', '2', TPACPI_FAN_2CTL), /* X1 Carbon (9th gen) */ 8856 8857 }; 8857 8858 8858 8859 static int __init fan_init(struct ibm_init_struct *iibm)