mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 04:18:39 +08:00
platform-drivers-x86 for v6.11-4
Changes: - ISST: Fix an error-handling corner case. - platform/surface: aggregator: Minor corner case fix and new HW support. The following is an automated shortlog grouped by driver: asus-wmi: - Add quirk for ROG Ally X ISST: - Fix return value on last invalid resource surface: aggregator: - Fix warning when controller is destroyed in probe surface: aggregator_registry: - Add fan and thermal sensor support for Surface Laptop 5 - Add support for Surface Laptop 6 - Add support for Surface Laptop Go 3 - Add support for Surface Laptop Studio 2 - Add Support for Surface Pro 10 -----BEGIN PGP SIGNATURE----- iHUEABYIAB0WIQSCSUwRdwTNL2MhaBlZrE9hU+XOMQUCZsWaDwAKCRBZrE9hU+XO MRSzAQDvXc77garXWSvOxZgHgReoASYgeFHJar7V96VQTH76HQEA1qJ/8+SN8CAw Voc10wW+FniTh3FY0f5rmgr8tPXh9Q0= =zn/Q -----END PGP SIGNATURE----- Merge tag 'platform-drivers-x86-v6.11-4' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86 Pull x86 platform driver fixes from Ilpo Järvinen: - ISST: Fix an error-handling corner case - platform/surface: aggregator: Minor corner case fix and new HW support * tag 'platform-drivers-x86-v6.11-4' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86: platform/x86: ISST: Fix return value on last invalid resource platform/surface: aggregator: Fix warning when controller is destroyed in probe platform/surface: aggregator_registry: Add support for Surface Laptop 6 platform/surface: aggregator_registry: Add fan and thermal sensor support for Surface Laptop 5 platform/surface: aggregator_registry: Add support for Surface Laptop Studio 2 platform/surface: aggregator_registry: Add support for Surface Laptop Go 3 platform/surface: aggregator_registry: Add Support for Surface Pro 10 platform/x86: asus-wmi: Add quirk for ROG Ally X
This commit is contained in:
commit
872cf28b8d
@ -1354,7 +1354,8 @@ void ssam_controller_destroy(struct ssam_controller *ctrl)
|
||||
if (ctrl->state == SSAM_CONTROLLER_UNINITIALIZED)
|
||||
return;
|
||||
|
||||
WARN_ON(ctrl->state != SSAM_CONTROLLER_STOPPED);
|
||||
WARN_ON(ctrl->state != SSAM_CONTROLLER_STOPPED &&
|
||||
ctrl->state != SSAM_CONTROLLER_INITIALIZED);
|
||||
|
||||
/*
|
||||
* Note: New events could still have been received after the previous
|
||||
|
@ -265,7 +265,9 @@ static const struct software_node *ssam_node_group_sl5[] = {
|
||||
&ssam_node_root,
|
||||
&ssam_node_bat_ac,
|
||||
&ssam_node_bat_main,
|
||||
&ssam_node_tmp_perf_profile,
|
||||
&ssam_node_tmp_perf_profile_with_fan,
|
||||
&ssam_node_tmp_sensors,
|
||||
&ssam_node_fan_speed,
|
||||
&ssam_node_hid_main_keyboard,
|
||||
&ssam_node_hid_main_touchpad,
|
||||
&ssam_node_hid_main_iid5,
|
||||
@ -273,8 +275,24 @@ static const struct software_node *ssam_node_group_sl5[] = {
|
||||
NULL,
|
||||
};
|
||||
|
||||
/* Devices for Surface Laptop Studio. */
|
||||
static const struct software_node *ssam_node_group_sls[] = {
|
||||
/* Devices for Surface Laptop 6. */
|
||||
static const struct software_node *ssam_node_group_sl6[] = {
|
||||
&ssam_node_root,
|
||||
&ssam_node_bat_ac,
|
||||
&ssam_node_bat_main,
|
||||
&ssam_node_tmp_perf_profile_with_fan,
|
||||
&ssam_node_tmp_sensors,
|
||||
&ssam_node_fan_speed,
|
||||
&ssam_node_hid_main_keyboard,
|
||||
&ssam_node_hid_main_touchpad,
|
||||
&ssam_node_hid_main_iid5,
|
||||
&ssam_node_hid_sam_sensors,
|
||||
&ssam_node_hid_sam_ucm_ucsi,
|
||||
NULL,
|
||||
};
|
||||
|
||||
/* Devices for Surface Laptop Studio 1. */
|
||||
static const struct software_node *ssam_node_group_sls1[] = {
|
||||
&ssam_node_root,
|
||||
&ssam_node_bat_ac,
|
||||
&ssam_node_bat_main,
|
||||
@ -289,6 +307,22 @@ static const struct software_node *ssam_node_group_sls[] = {
|
||||
NULL,
|
||||
};
|
||||
|
||||
/* Devices for Surface Laptop Studio 2. */
|
||||
static const struct software_node *ssam_node_group_sls2[] = {
|
||||
&ssam_node_root,
|
||||
&ssam_node_bat_ac,
|
||||
&ssam_node_bat_main,
|
||||
&ssam_node_tmp_perf_profile_with_fan,
|
||||
&ssam_node_tmp_sensors,
|
||||
&ssam_node_fan_speed,
|
||||
&ssam_node_pos_tablet_switch,
|
||||
&ssam_node_hid_sam_keyboard,
|
||||
&ssam_node_hid_sam_penstash,
|
||||
&ssam_node_hid_sam_sensors,
|
||||
&ssam_node_hid_sam_ucm_ucsi,
|
||||
NULL,
|
||||
};
|
||||
|
||||
/* Devices for Surface Laptop Go. */
|
||||
static const struct software_node *ssam_node_group_slg1[] = {
|
||||
&ssam_node_root,
|
||||
@ -324,7 +358,7 @@ static const struct software_node *ssam_node_group_sp8[] = {
|
||||
NULL,
|
||||
};
|
||||
|
||||
/* Devices for Surface Pro 9 */
|
||||
/* Devices for Surface Pro 9 and 10 */
|
||||
static const struct software_node *ssam_node_group_sp9[] = {
|
||||
&ssam_node_root,
|
||||
&ssam_node_hub_kip,
|
||||
@ -365,6 +399,9 @@ static const struct acpi_device_id ssam_platform_hub_match[] = {
|
||||
/* Surface Pro 9 */
|
||||
{ "MSHW0343", (unsigned long)ssam_node_group_sp9 },
|
||||
|
||||
/* Surface Pro 10 */
|
||||
{ "MSHW0510", (unsigned long)ssam_node_group_sp9 },
|
||||
|
||||
/* Surface Book 2 */
|
||||
{ "MSHW0107", (unsigned long)ssam_node_group_gen5 },
|
||||
|
||||
@ -389,14 +426,23 @@ static const struct acpi_device_id ssam_platform_hub_match[] = {
|
||||
/* Surface Laptop 5 */
|
||||
{ "MSHW0350", (unsigned long)ssam_node_group_sl5 },
|
||||
|
||||
/* Surface Laptop 6 */
|
||||
{ "MSHW0530", (unsigned long)ssam_node_group_sl6 },
|
||||
|
||||
/* Surface Laptop Go 1 */
|
||||
{ "MSHW0118", (unsigned long)ssam_node_group_slg1 },
|
||||
|
||||
/* Surface Laptop Go 2 */
|
||||
{ "MSHW0290", (unsigned long)ssam_node_group_slg1 },
|
||||
|
||||
/* Surface Laptop Studio */
|
||||
{ "MSHW0123", (unsigned long)ssam_node_group_sls },
|
||||
/* Surface Laptop Go 3 */
|
||||
{ "MSHW0440", (unsigned long)ssam_node_group_slg1 },
|
||||
|
||||
/* Surface Laptop Studio 1 */
|
||||
{ "MSHW0123", (unsigned long)ssam_node_group_sls1 },
|
||||
|
||||
/* Surface Laptop Studio 2 */
|
||||
{ "MSHW0360", (unsigned long)ssam_node_group_sls2 },
|
||||
|
||||
{ },
|
||||
};
|
||||
|
@ -146,6 +146,20 @@ static const char * const ashs_ids[] = { "ATK4001", "ATK4002", NULL };
|
||||
|
||||
static int throttle_thermal_policy_write(struct asus_wmi *);
|
||||
|
||||
static const struct dmi_system_id asus_ally_mcu_quirk[] = {
|
||||
{
|
||||
.matches = {
|
||||
DMI_MATCH(DMI_BOARD_NAME, "RC71L"),
|
||||
},
|
||||
},
|
||||
{
|
||||
.matches = {
|
||||
DMI_MATCH(DMI_BOARD_NAME, "RC72L"),
|
||||
},
|
||||
},
|
||||
{ },
|
||||
};
|
||||
|
||||
static bool ashs_present(void)
|
||||
{
|
||||
int i = 0;
|
||||
@ -4685,7 +4699,7 @@ static int asus_wmi_add(struct platform_device *pdev)
|
||||
asus->dgpu_disable_available = asus_wmi_dev_is_present(asus, ASUS_WMI_DEVID_DGPU);
|
||||
asus->kbd_rgb_state_available = asus_wmi_dev_is_present(asus, ASUS_WMI_DEVID_TUF_RGB_STATE);
|
||||
asus->ally_mcu_usb_switch = acpi_has_method(NULL, ASUS_USB0_PWR_EC0_CSEE)
|
||||
&& dmi_match(DMI_BOARD_NAME, "RC71L");
|
||||
&& dmi_check_system(asus_ally_mcu_quirk);
|
||||
|
||||
if (asus_wmi_dev_is_present(asus, ASUS_WMI_DEVID_MINI_LED_MODE))
|
||||
asus->mini_led_dev_id = ASUS_WMI_DEVID_MINI_LED_MODE;
|
||||
|
@ -1549,8 +1549,7 @@ int tpmi_sst_dev_add(struct auxiliary_device *auxdev)
|
||||
goto unlock_free;
|
||||
}
|
||||
|
||||
ret = sst_main(auxdev, &pd_info[i]);
|
||||
if (ret) {
|
||||
if (sst_main(auxdev, &pd_info[i])) {
|
||||
/*
|
||||
* This entry is not valid, hardware can partially
|
||||
* populate dies. In this case MMIO will have 0xFFs.
|
||||
|
Loading…
Reference in New Issue
Block a user