mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-27 11:19:37 +00:00
platform-drivers-x86 for v6.1-2
A small set of assorted fixes and hardware-id additions for 6.1. The following is an automated git shortlog grouped by driver: ACPI: - video: Fix missing native backlight on Chromebooks asus-wmi: - Add support for ROG X16 tablet mode leds: - simatic-ipc-leds-gpio: fix incorrect LED to GPIO mapping platform/x86/amd: - pmc: Read SMU version during suspend on Cezanne systems platform/x86/intel: - pmc/core: Add Raptor Lake support to pmc core driver thinkpad_acpi: - Fix reporting a non present second fan on some models -----BEGIN PGP SIGNATURE----- iQFIBAABCAAyFiEEuvA7XScYQRpenhd+kuxHeUQDJ9wFAmNXsBcUHGhkZWdvZWRl QHJlZGhhdC5jb20ACgkQkuxHeUQDJ9yvuwf6AgDXF0iVKlJWUx0OXwK54SQuGF7h Ae+9B1la3BTKJd6p9lXon5UKOhnnsUMv+Y+ZBsWZ6Al4VYASf6ZnsXKAiV7WLrUk rlqmZPodgdLSFmnff/knZ/8VbUFhgCkR82GVm47fRxynqPMkHjA6e8crLO4hmKZp 6OhA475bB+ZK8IfGp9OuwzA+I+V0NTF8k52vCZfycF2Csga8AZmiLqbVHUIvXxjt lpQJb+9b00WZ/uVbGeZpDHM5RJULnvJLKVHDApXlbTVFQ0fSxIh8nsk12qFIF80d CxRtDEv629AaybWVtRl9GRK5TkZ1W8W5WcDP8Azf0GMj5H+ckxXK9gIeBQ== =v6EI -----END PGP SIGNATURE----- Merge tag 'platform-drivers-x86-v6.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86 Pull x86 platform driver fixes from Hans de Goede: "The only thing which stands out is a fix for a backlight regression on Chromebooks (under drivers/acpi, with ack from Rafael). Other then that nothing special to report just various small fixes and hardware-id additions" * tag 'platform-drivers-x86-v6.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86: ACPI: video: Fix missing native backlight on Chromebooks platform/x86/intel: pmc/core: Add Raptor Lake support to pmc core driver leds: simatic-ipc-leds-gpio: fix incorrect LED to GPIO mapping platform/x86/amd: pmc: Read SMU version during suspend on Cezanne systems platform/x86: thinkpad_acpi: Fix reporting a non present second fan on some models platform/x86: asus-wmi: Add support for ROG X16 tablet mode
This commit is contained in:
commit
4dc12f37a8
6 changed files with 39 additions and 7 deletions
|
@ -668,6 +668,11 @@ static const struct dmi_system_id video_detect_dmi_table[] = {
|
|||
{ },
|
||||
};
|
||||
|
||||
static bool google_cros_ec_present(void)
|
||||
{
|
||||
return acpi_dev_found("GOOG0004");
|
||||
}
|
||||
|
||||
/*
|
||||
* Determine which type of backlight interface to use on this system,
|
||||
* First check cmdline, then dmi quirks, then do autodetect.
|
||||
|
@ -730,6 +735,13 @@ static enum acpi_backlight_type __acpi_video_get_backlight_type(bool native)
|
|||
return acpi_backlight_video;
|
||||
}
|
||||
|
||||
/*
|
||||
* Chromebooks that don't have backlight handle in ACPI table
|
||||
* are supposed to use native backlight if it's available.
|
||||
*/
|
||||
if (google_cros_ec_present() && native_available)
|
||||
return acpi_backlight_native;
|
||||
|
||||
/* No ACPI video (old hw), use vendor specific fw methods. */
|
||||
return acpi_backlight_vendor;
|
||||
}
|
||||
|
|
|
@ -20,12 +20,12 @@ static struct gpiod_lookup_table *simatic_ipc_led_gpio_table;
|
|||
static struct gpiod_lookup_table simatic_ipc_led_gpio_table_127e = {
|
||||
.dev_id = "leds-gpio",
|
||||
.table = {
|
||||
GPIO_LOOKUP_IDX("apollolake-pinctrl.0", 52, NULL, 1, GPIO_ACTIVE_LOW),
|
||||
GPIO_LOOKUP_IDX("apollolake-pinctrl.0", 53, NULL, 2, GPIO_ACTIVE_LOW),
|
||||
GPIO_LOOKUP_IDX("apollolake-pinctrl.0", 57, NULL, 3, GPIO_ACTIVE_LOW),
|
||||
GPIO_LOOKUP_IDX("apollolake-pinctrl.0", 58, NULL, 4, GPIO_ACTIVE_LOW),
|
||||
GPIO_LOOKUP_IDX("apollolake-pinctrl.0", 60, NULL, 5, GPIO_ACTIVE_LOW),
|
||||
GPIO_LOOKUP_IDX("apollolake-pinctrl.0", 51, NULL, 0, GPIO_ACTIVE_LOW),
|
||||
GPIO_LOOKUP_IDX("apollolake-pinctrl.0", 52, NULL, 0, GPIO_ACTIVE_LOW),
|
||||
GPIO_LOOKUP_IDX("apollolake-pinctrl.0", 53, NULL, 1, GPIO_ACTIVE_LOW),
|
||||
GPIO_LOOKUP_IDX("apollolake-pinctrl.0", 57, NULL, 2, GPIO_ACTIVE_LOW),
|
||||
GPIO_LOOKUP_IDX("apollolake-pinctrl.0", 58, NULL, 3, GPIO_ACTIVE_LOW),
|
||||
GPIO_LOOKUP_IDX("apollolake-pinctrl.0", 60, NULL, 4, GPIO_ACTIVE_LOW),
|
||||
GPIO_LOOKUP_IDX("apollolake-pinctrl.0", 51, NULL, 5, GPIO_ACTIVE_LOW),
|
||||
GPIO_LOOKUP_IDX("apollolake-pinctrl.0", 56, NULL, 6, GPIO_ACTIVE_LOW),
|
||||
GPIO_LOOKUP_IDX("apollolake-pinctrl.0", 59, NULL, 7, GPIO_ACTIVE_HIGH),
|
||||
},
|
||||
|
|
|
@ -663,6 +663,13 @@ static int amd_pmc_verify_czn_rtc(struct amd_pmc_dev *pdev, u32 *arg)
|
|||
struct rtc_time tm;
|
||||
int rc;
|
||||
|
||||
/* we haven't yet read SMU version */
|
||||
if (!pdev->major) {
|
||||
rc = amd_pmc_get_smu_version(pdev);
|
||||
if (rc)
|
||||
return rc;
|
||||
}
|
||||
|
||||
if (pdev->major < 64 || (pdev->major == 64 && pdev->minor < 53))
|
||||
return 0;
|
||||
|
||||
|
|
|
@ -464,6 +464,15 @@ static const struct dmi_system_id asus_quirks[] = {
|
|||
},
|
||||
.driver_data = &quirk_asus_tablet_mode,
|
||||
},
|
||||
{
|
||||
.callback = dmi_matched,
|
||||
.ident = "ASUS ROG FLOW X16",
|
||||
.matches = {
|
||||
DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
|
||||
DMI_MATCH(DMI_PRODUCT_NAME, "GV601R"),
|
||||
},
|
||||
.driver_data = &quirk_asus_tablet_mode,
|
||||
},
|
||||
{},
|
||||
};
|
||||
|
||||
|
|
|
@ -1914,6 +1914,8 @@ static const struct x86_cpu_id intel_pmc_core_ids[] = {
|
|||
X86_MATCH_INTEL_FAM6_MODEL(ALDERLAKE_N, &tgl_reg_map),
|
||||
X86_MATCH_INTEL_FAM6_MODEL(ALDERLAKE, &adl_reg_map),
|
||||
X86_MATCH_INTEL_FAM6_MODEL(RAPTORLAKE_P, &tgl_reg_map),
|
||||
X86_MATCH_INTEL_FAM6_MODEL(RAPTORLAKE, &adl_reg_map),
|
||||
X86_MATCH_INTEL_FAM6_MODEL(RAPTORLAKE_S, &adl_reg_map),
|
||||
{}
|
||||
};
|
||||
|
||||
|
|
|
@ -263,6 +263,8 @@ enum tpacpi_hkey_event_t {
|
|||
#define TPACPI_DBG_BRGHT 0x0020
|
||||
#define TPACPI_DBG_MIXER 0x0040
|
||||
|
||||
#define FAN_NOT_PRESENT 65535
|
||||
|
||||
#define strlencmp(a, b) (strncmp((a), (b), strlen(b)))
|
||||
|
||||
|
||||
|
@ -8876,7 +8878,7 @@ static int __init fan_init(struct ibm_init_struct *iibm)
|
|||
/* Try and probe the 2nd fan */
|
||||
tp_features.second_fan = 1; /* needed for get_speed to work */
|
||||
res = fan2_get_speed(&speed);
|
||||
if (res >= 0) {
|
||||
if (res >= 0 && speed != FAN_NOT_PRESENT) {
|
||||
/* It responded - so let's assume it's there */
|
||||
tp_features.second_fan = 1;
|
||||
tp_features.second_fan_ctl = 1;
|
||||
|
|
Loading…
Reference in a new issue