From 398a046a41364ac56a63fb8160492848e9ea09f5 Mon Sep 17 00:00:00 2001 From: Dorian Stoll Date: Sat, 9 Mar 2024 21:05:48 +0100 Subject: [PATCH] Update v6.6 patches Changes: - Add driver for changing the fan profile (Surface Pro 9) Links: - kernel: https://github.com/linux-surface/kernel/commit/fcc3a67ab0a98d69f26f090ab245bbe931823222 - fan profile driver: https://github.com/linux-surface/kernel/pull/145 --- patches/6.6/0001-surface3-oemb.patch | 8 +- patches/6.6/0002-mwifiex.patch | 20 +- patches/6.6/0003-ath10k.patch | 4 +- patches/6.6/0004-ipts.patch | 68 ++-- patches/6.6/0005-ithc.patch | 44 +-- patches/6.6/0006-surface-sam.patch | 368 ++++++++++++++++++-- patches/6.6/0007-surface-sam-over-hid.patch | 12 +- patches/6.6/0008-surface-button.patch | 8 +- patches/6.6/0009-surface-typecover.patch | 12 +- patches/6.6/0010-surface-shutdown.patch | 8 +- patches/6.6/0011-surface-gpe.patch | 4 +- patches/6.6/0012-cameras.patch | 42 +-- patches/6.6/0013-amd-gpio.patch | 8 +- patches/6.6/0014-rtc.patch | 4 +- 14 files changed, 468 insertions(+), 142 deletions(-) diff --git a/patches/6.6/0001-surface3-oemb.patch b/patches/6.6/0001-surface3-oemb.patch index 5fc34305f..0ca351314 100644 --- a/patches/6.6/0001-surface3-oemb.patch +++ b/patches/6.6/0001-surface3-oemb.patch @@ -40,7 +40,7 @@ Patchset: surface3-oemb 3 files changed, 24 insertions(+) diff --git a/drivers/platform/surface/surface3-wmi.c b/drivers/platform/surface/surface3-wmi.c -index ca4602bcc7dea..490b9731068ae 100644 +index ca4602bcc7de..490b9731068a 100644 --- a/drivers/platform/surface/surface3-wmi.c +++ b/drivers/platform/surface/surface3-wmi.c @@ -37,6 +37,13 @@ static const struct dmi_system_id surface3_dmi_table[] = { @@ -58,7 +58,7 @@ index ca4602bcc7dea..490b9731068ae 100644 { } }; diff --git a/sound/soc/codecs/rt5645.c b/sound/soc/codecs/rt5645.c -index 7938b52d741d8..2d5f83b0cdb0b 100644 +index 7938b52d741d..2d5f83b0cdb0 100644 --- a/sound/soc/codecs/rt5645.c +++ b/sound/soc/codecs/rt5645.c @@ -3746,6 +3746,15 @@ static const struct dmi_system_id dmi_platform_data[] = { @@ -78,7 +78,7 @@ index 7938b52d741d8..2d5f83b0cdb0b 100644 /* * Match for the GPDwin which unfortunately uses somewhat diff --git a/sound/soc/intel/common/soc-acpi-intel-cht-match.c b/sound/soc/intel/common/soc-acpi-intel-cht-match.c -index 5e2ec60e2954b..207868c699f29 100644 +index 5e2ec60e2954..207868c699f2 100644 --- a/sound/soc/intel/common/soc-acpi-intel-cht-match.c +++ b/sound/soc/intel/common/soc-acpi-intel-cht-match.c @@ -27,6 +27,14 @@ static const struct dmi_system_id cht_table[] = { @@ -97,5 +97,5 @@ index 5e2ec60e2954b..207868c699f29 100644 }; -- -2.43.0 +2.44.0 diff --git a/patches/6.6/0002-mwifiex.patch b/patches/6.6/0002-mwifiex.patch index a78d1f3ab..09a079e13 100644 --- a/patches/6.6/0002-mwifiex.patch +++ b/patches/6.6/0002-mwifiex.patch @@ -32,7 +32,7 @@ Patchset: mwifiex 3 files changed, 31 insertions(+), 8 deletions(-) diff --git a/drivers/net/wireless/marvell/mwifiex/pcie.c b/drivers/net/wireless/marvell/mwifiex/pcie.c -index 6697132ecc977..f06b4ebc5bd8e 100644 +index 6697132ecc97..f06b4ebc5bd8 100644 --- a/drivers/net/wireless/marvell/mwifiex/pcie.c +++ b/drivers/net/wireless/marvell/mwifiex/pcie.c @@ -1771,9 +1771,21 @@ mwifiex_pcie_send_boot_cmd(struct mwifiex_adapter *adapter, struct sk_buff *skb) @@ -58,7 +58,7 @@ index 6697132ecc977..f06b4ebc5bd8e 100644 if (mwifiex_write_reg(adapter, reg->rx_rdptr, card->rxbd_rdptr | tx_wrap)) { diff --git a/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c b/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c -index dd6d21f1dbfd7..f46b06f8d6435 100644 +index dd6d21f1dbfd..f46b06f8d643 100644 --- a/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c +++ b/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c @@ -13,7 +13,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = { @@ -151,7 +151,7 @@ index dd6d21f1dbfd7..f46b06f8d6435 100644 static void mwifiex_pcie_set_power_d3cold(struct pci_dev *pdev) diff --git a/drivers/net/wireless/marvell/mwifiex/pcie_quirks.h b/drivers/net/wireless/marvell/mwifiex/pcie_quirks.h -index d6ff964aec5bf..5d30ae39d65ec 100644 +index d6ff964aec5b..5d30ae39d65e 100644 --- a/drivers/net/wireless/marvell/mwifiex/pcie_quirks.h +++ b/drivers/net/wireless/marvell/mwifiex/pcie_quirks.h @@ -4,6 +4,7 @@ @@ -163,7 +163,7 @@ index d6ff964aec5bf..5d30ae39d65ec 100644 void mwifiex_initialize_quirks(struct pcie_service_card *card); int mwifiex_pcie_reset_d3cold_quirk(struct pci_dev *pdev); -- -2.43.0 +2.44.0 From d10371a089a968b913b9413e1f06bd3d9d154b21 Mon Sep 17 00:00:00 2001 From: Tsuchiya Yuto @@ -187,7 +187,7 @@ Patchset: mwifiex 3 files changed, 27 insertions(+), 8 deletions(-) diff --git a/drivers/net/wireless/marvell/mwifiex/pcie.c b/drivers/net/wireless/marvell/mwifiex/pcie.c -index f06b4ebc5bd8e..07f13b52ddb92 100644 +index f06b4ebc5bd8..07f13b52ddb9 100644 --- a/drivers/net/wireless/marvell/mwifiex/pcie.c +++ b/drivers/net/wireless/marvell/mwifiex/pcie.c @@ -370,6 +370,7 @@ static int mwifiex_pcie_probe(struct pci_dev *pdev, @@ -212,7 +212,7 @@ index f06b4ebc5bd8e..07f13b52ddb92 100644 } diff --git a/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c b/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c -index f46b06f8d6435..99b024ecbadea 100644 +index f46b06f8d643..99b024ecbade 100644 --- a/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c +++ b/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c @@ -14,7 +14,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = { @@ -306,7 +306,7 @@ index f46b06f8d6435..99b024ecbadea 100644 static void mwifiex_pcie_set_power_d3cold(struct pci_dev *pdev) diff --git a/drivers/net/wireless/marvell/mwifiex/pcie_quirks.h b/drivers/net/wireless/marvell/mwifiex/pcie_quirks.h -index 5d30ae39d65ec..c14eb56eb9118 100644 +index 5d30ae39d65e..c14eb56eb911 100644 --- a/drivers/net/wireless/marvell/mwifiex/pcie_quirks.h +++ b/drivers/net/wireless/marvell/mwifiex/pcie_quirks.h @@ -5,6 +5,7 @@ @@ -318,7 +318,7 @@ index 5d30ae39d65ec..c14eb56eb9118 100644 void mwifiex_initialize_quirks(struct pcie_service_card *card); int mwifiex_pcie_reset_d3cold_quirk(struct pci_dev *pdev); -- -2.43.0 +2.44.0 From 59d4464c43b8c4090372cbf2632fc116a0ca8b2a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20Dre=C3=9Fler?= @@ -356,7 +356,7 @@ Patchset: mwifiex 1 file changed, 15 insertions(+) diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c -index 66080fae072f2..68e2f2976a519 100644 +index 66080fae072f..68e2f2976a51 100644 --- a/drivers/bluetooth/btusb.c +++ b/drivers/bluetooth/btusb.c @@ -65,6 +65,7 @@ static struct usb_driver btusb_driver; @@ -396,5 +396,5 @@ index 66080fae072f2..68e2f2976a519 100644 (id->driver_info & BTUSB_MEDIATEK)) { hdev->setup = btusb_mtk_setup; -- -2.43.0 +2.44.0 diff --git a/patches/6.6/0003-ath10k.patch b/patches/6.6/0003-ath10k.patch index a84802fdf..f9ce08101 100644 --- a/patches/6.6/0003-ath10k.patch +++ b/patches/6.6/0003-ath10k.patch @@ -20,7 +20,7 @@ Patchset: ath10k 1 file changed, 58 insertions(+) diff --git a/drivers/net/wireless/ath/ath10k/core.c b/drivers/net/wireless/ath/ath10k/core.c -index 6cdb225b7eacc..19c036751fb16 100644 +index 6cdb225b7eac..19c036751fb1 100644 --- a/drivers/net/wireless/ath/ath10k/core.c +++ b/drivers/net/wireless/ath/ath10k/core.c @@ -38,6 +38,9 @@ static bool fw_diag_log; @@ -117,5 +117,5 @@ index 6cdb225b7eacc..19c036751fb16 100644 ret = firmware_request_nowarn(&fw, filename, ar->dev); ath10k_dbg(ar, ATH10K_DBG_BOOT, "boot fw request '%s': %d\n", -- -2.43.0 +2.44.0 diff --git a/patches/6.6/0004-ipts.patch b/patches/6.6/0004-ipts.patch index f0729a1a8..800ff06af 100644 --- a/patches/6.6/0004-ipts.patch +++ b/patches/6.6/0004-ipts.patch @@ -10,7 +10,7 @@ Patchset: ipts 2 files changed, 2 insertions(+) diff --git a/drivers/misc/mei/hw-me-regs.h b/drivers/misc/mei/hw-me-regs.h -index bdc65d50b945f..08723c01d7275 100644 +index bdc65d50b945..08723c01d727 100644 --- a/drivers/misc/mei/hw-me-regs.h +++ b/drivers/misc/mei/hw-me-regs.h @@ -92,6 +92,7 @@ @@ -22,7 +22,7 @@ index bdc65d50b945f..08723c01d7275 100644 #define MEI_DEV_ID_JSP_N 0x4DE0 /* Jasper Lake Point N */ diff --git a/drivers/misc/mei/pci-me.c b/drivers/misc/mei/pci-me.c -index 676d566f38ddf..6b37dd1f8b2a3 100644 +index 676d566f38dd..6b37dd1f8b2a 100644 --- a/drivers/misc/mei/pci-me.c +++ b/drivers/misc/mei/pci-me.c @@ -97,6 +97,7 @@ static const struct pci_device_id mei_me_pci_tbl[] = { @@ -34,7 +34,7 @@ index 676d566f38ddf..6b37dd1f8b2a3 100644 {MEI_PCI_DEVICE(MEI_DEV_ID_TGP_LP, MEI_ME_PCH15_CFG)}, -- -2.43.0 +2.44.0 From b81e81459d4077c94376c5680edd5b2fde70f297 Mon Sep 17 00:00:00 2001 From: Liban Hannan @@ -58,7 +58,7 @@ Patchset: ipts 1 file changed, 24 insertions(+) diff --git a/drivers/iommu/intel/iommu.c b/drivers/iommu/intel/iommu.c -index 744e4e6b8d72d..0cbe3a5212548 100644 +index 744e4e6b8d72..0cbe3a521254 100644 --- a/drivers/iommu/intel/iommu.c +++ b/drivers/iommu/intel/iommu.c @@ -38,6 +38,8 @@ @@ -134,7 +134,7 @@ index 744e4e6b8d72d..0cbe3a5212548 100644 { if (risky_device(dev)) -- -2.43.0 +2.44.0 From a16d734a58c18ef07813a8abe94320e69e0d77a7 Mon Sep 17 00:00:00 2001 From: Dorian Stoll @@ -203,7 +203,7 @@ Patchset: ipts create mode 100644 drivers/hid/ipts/thread.h diff --git a/drivers/hid/Kconfig b/drivers/hid/Kconfig -index 790aa908e2a78..0b9d245d10e54 100644 +index 790aa908e2a7..0b9d245d10e5 100644 --- a/drivers/hid/Kconfig +++ b/drivers/hid/Kconfig @@ -1345,4 +1345,6 @@ source "drivers/hid/amd-sfh-hid/Kconfig" @@ -214,7 +214,7 @@ index 790aa908e2a78..0b9d245d10e54 100644 + endif # HID_SUPPORT diff --git a/drivers/hid/Makefile b/drivers/hid/Makefile -index 8a06d0f840bcb..2ef21b257d0b5 100644 +index 8a06d0f840bc..2ef21b257d0b 100644 --- a/drivers/hid/Makefile +++ b/drivers/hid/Makefile @@ -169,3 +169,5 @@ obj-$(INTEL_ISH_FIRMWARE_DOWNLOADER) += intel-ish-hid/ @@ -225,7 +225,7 @@ index 8a06d0f840bcb..2ef21b257d0b5 100644 +obj-$(CONFIG_HID_IPTS) += ipts/ diff --git a/drivers/hid/ipts/Kconfig b/drivers/hid/ipts/Kconfig new file mode 100644 -index 0000000000000..297401bd388dd +index 000000000000..297401bd388d --- /dev/null +++ b/drivers/hid/ipts/Kconfig @@ -0,0 +1,14 @@ @@ -245,7 +245,7 @@ index 0000000000000..297401bd388dd + module will be called ipts. diff --git a/drivers/hid/ipts/Makefile b/drivers/hid/ipts/Makefile new file mode 100644 -index 0000000000000..883896f68e6ad +index 000000000000..883896f68e6a --- /dev/null +++ b/drivers/hid/ipts/Makefile @@ -0,0 +1,16 @@ @@ -267,7 +267,7 @@ index 0000000000000..883896f68e6ad +ipts-objs += thread.o diff --git a/drivers/hid/ipts/cmd.c b/drivers/hid/ipts/cmd.c new file mode 100644 -index 0000000000000..63a4934bbc5fa +index 000000000000..63a4934bbc5f --- /dev/null +++ b/drivers/hid/ipts/cmd.c @@ -0,0 +1,61 @@ @@ -334,7 +334,7 @@ index 0000000000000..63a4934bbc5fa +} diff --git a/drivers/hid/ipts/cmd.h b/drivers/hid/ipts/cmd.h new file mode 100644 -index 0000000000000..2b4079075b642 +index 000000000000..2b4079075b64 --- /dev/null +++ b/drivers/hid/ipts/cmd.h @@ -0,0 +1,60 @@ @@ -400,7 +400,7 @@ index 0000000000000..2b4079075b642 +#endif /* IPTS_CMD_H */ diff --git a/drivers/hid/ipts/context.h b/drivers/hid/ipts/context.h new file mode 100644 -index 0000000000000..ba33259f1f7c5 +index 000000000000..ba33259f1f7c --- /dev/null +++ b/drivers/hid/ipts/context.h @@ -0,0 +1,52 @@ @@ -458,7 +458,7 @@ index 0000000000000..ba33259f1f7c5 +#endif /* IPTS_CONTEXT_H */ diff --git a/drivers/hid/ipts/control.c b/drivers/hid/ipts/control.c new file mode 100644 -index 0000000000000..5360842d260ba +index 000000000000..5360842d260b --- /dev/null +++ b/drivers/hid/ipts/control.c @@ -0,0 +1,486 @@ @@ -950,7 +950,7 @@ index 0000000000000..5360842d260ba +} diff --git a/drivers/hid/ipts/control.h b/drivers/hid/ipts/control.h new file mode 100644 -index 0000000000000..26629c5144edb +index 000000000000..26629c5144ed --- /dev/null +++ b/drivers/hid/ipts/control.h @@ -0,0 +1,126 @@ @@ -1082,7 +1082,7 @@ index 0000000000000..26629c5144edb +#endif /* IPTS_CONTROL_H */ diff --git a/drivers/hid/ipts/desc.h b/drivers/hid/ipts/desc.h new file mode 100644 -index 0000000000000..307438c7c80cd +index 000000000000..307438c7c80c --- /dev/null +++ b/drivers/hid/ipts/desc.h @@ -0,0 +1,80 @@ @@ -1168,7 +1168,7 @@ index 0000000000000..307438c7c80cd +#endif /* IPTS_DESC_H */ diff --git a/drivers/hid/ipts/eds1.c b/drivers/hid/ipts/eds1.c new file mode 100644 -index 0000000000000..ecbb3a8bdaf60 +index 000000000000..ecbb3a8bdaf6 --- /dev/null +++ b/drivers/hid/ipts/eds1.c @@ -0,0 +1,103 @@ @@ -1277,7 +1277,7 @@ index 0000000000000..ecbb3a8bdaf60 +} diff --git a/drivers/hid/ipts/eds1.h b/drivers/hid/ipts/eds1.h new file mode 100644 -index 0000000000000..eeeb6575e3e89 +index 000000000000..eeeb6575e3e8 --- /dev/null +++ b/drivers/hid/ipts/eds1.h @@ -0,0 +1,35 @@ @@ -1318,7 +1318,7 @@ index 0000000000000..eeeb6575e3e89 + enum hid_report_type report_type, enum hid_class_request request_type); diff --git a/drivers/hid/ipts/eds2.c b/drivers/hid/ipts/eds2.c new file mode 100644 -index 0000000000000..198dc65d78876 +index 000000000000..198dc65d7887 --- /dev/null +++ b/drivers/hid/ipts/eds2.c @@ -0,0 +1,144 @@ @@ -1468,7 +1468,7 @@ index 0000000000000..198dc65d78876 +} diff --git a/drivers/hid/ipts/eds2.h b/drivers/hid/ipts/eds2.h new file mode 100644 -index 0000000000000..064e3716907ab +index 000000000000..064e3716907a --- /dev/null +++ b/drivers/hid/ipts/eds2.h @@ -0,0 +1,35 @@ @@ -1509,7 +1509,7 @@ index 0000000000000..064e3716907ab + enum hid_report_type report_type, enum hid_class_request request_type); diff --git a/drivers/hid/ipts/hid.c b/drivers/hid/ipts/hid.c new file mode 100644 -index 0000000000000..e34a1a4f9fa77 +index 000000000000..e34a1a4f9fa7 --- /dev/null +++ b/drivers/hid/ipts/hid.c @@ -0,0 +1,225 @@ @@ -1740,7 +1740,7 @@ index 0000000000000..e34a1a4f9fa77 +} diff --git a/drivers/hid/ipts/hid.h b/drivers/hid/ipts/hid.h new file mode 100644 -index 0000000000000..1ebe77447903a +index 000000000000..1ebe77447903 --- /dev/null +++ b/drivers/hid/ipts/hid.h @@ -0,0 +1,24 @@ @@ -1770,7 +1770,7 @@ index 0000000000000..1ebe77447903a +#endif /* IPTS_HID_H */ diff --git a/drivers/hid/ipts/main.c b/drivers/hid/ipts/main.c new file mode 100644 -index 0000000000000..fb5b5c13ee3ea +index 000000000000..fb5b5c13ee3e --- /dev/null +++ b/drivers/hid/ipts/main.c @@ -0,0 +1,126 @@ @@ -1902,7 +1902,7 @@ index 0000000000000..fb5b5c13ee3ea +MODULE_LICENSE("GPL"); diff --git a/drivers/hid/ipts/mei.c b/drivers/hid/ipts/mei.c new file mode 100644 -index 0000000000000..1e0395ceae4a4 +index 000000000000..1e0395ceae4a --- /dev/null +++ b/drivers/hid/ipts/mei.c @@ -0,0 +1,188 @@ @@ -2096,7 +2096,7 @@ index 0000000000000..1e0395ceae4a4 +} diff --git a/drivers/hid/ipts/mei.h b/drivers/hid/ipts/mei.h new file mode 100644 -index 0000000000000..973bade6b0fdd +index 000000000000..973bade6b0fd --- /dev/null +++ b/drivers/hid/ipts/mei.h @@ -0,0 +1,66 @@ @@ -2168,7 +2168,7 @@ index 0000000000000..973bade6b0fdd +#endif /* IPTS_MEI_H */ diff --git a/drivers/hid/ipts/receiver.c b/drivers/hid/ipts/receiver.c new file mode 100644 -index 0000000000000..ef66c3c9db807 +index 000000000000..ef66c3c9db80 --- /dev/null +++ b/drivers/hid/ipts/receiver.c @@ -0,0 +1,250 @@ @@ -2424,7 +2424,7 @@ index 0000000000000..ef66c3c9db807 +} diff --git a/drivers/hid/ipts/receiver.h b/drivers/hid/ipts/receiver.h new file mode 100644 -index 0000000000000..3de7da62d40c1 +index 000000000000..3de7da62d40c --- /dev/null +++ b/drivers/hid/ipts/receiver.h @@ -0,0 +1,16 @@ @@ -2446,7 +2446,7 @@ index 0000000000000..3de7da62d40c1 +#endif /* IPTS_RECEIVER_H */ diff --git a/drivers/hid/ipts/resources.c b/drivers/hid/ipts/resources.c new file mode 100644 -index 0000000000000..cc14653b2a9f5 +index 000000000000..cc14653b2a9f --- /dev/null +++ b/drivers/hid/ipts/resources.c @@ -0,0 +1,131 @@ @@ -2583,7 +2583,7 @@ index 0000000000000..cc14653b2a9f5 +} diff --git a/drivers/hid/ipts/resources.h b/drivers/hid/ipts/resources.h new file mode 100644 -index 0000000000000..2068e13285f0e +index 000000000000..2068e13285f0 --- /dev/null +++ b/drivers/hid/ipts/resources.h @@ -0,0 +1,41 @@ @@ -2630,7 +2630,7 @@ index 0000000000000..2068e13285f0e +#endif /* IPTS_RESOURCES_H */ diff --git a/drivers/hid/ipts/spec-data.h b/drivers/hid/ipts/spec-data.h new file mode 100644 -index 0000000000000..e8dd98895a7ee +index 000000000000..e8dd98895a7e --- /dev/null +++ b/drivers/hid/ipts/spec-data.h @@ -0,0 +1,100 @@ @@ -2736,7 +2736,7 @@ index 0000000000000..e8dd98895a7ee +#endif /* IPTS_SPEC_DATA_H */ diff --git a/drivers/hid/ipts/spec-device.h b/drivers/hid/ipts/spec-device.h new file mode 100644 -index 0000000000000..41845f9d90257 +index 000000000000..41845f9d9025 --- /dev/null +++ b/drivers/hid/ipts/spec-device.h @@ -0,0 +1,290 @@ @@ -3032,7 +3032,7 @@ index 0000000000000..41845f9d90257 +#endif /* IPTS_SPEC_DEVICE_H */ diff --git a/drivers/hid/ipts/spec-hid.h b/drivers/hid/ipts/spec-hid.h new file mode 100644 -index 0000000000000..5a58d4a0a610f +index 000000000000..5a58d4a0a610 --- /dev/null +++ b/drivers/hid/ipts/spec-hid.h @@ -0,0 +1,34 @@ @@ -3072,7 +3072,7 @@ index 0000000000000..5a58d4a0a610f +#endif /* IPTS_SPEC_HID_H */ diff --git a/drivers/hid/ipts/thread.c b/drivers/hid/ipts/thread.c new file mode 100644 -index 0000000000000..355e92bea26f8 +index 000000000000..355e92bea26f --- /dev/null +++ b/drivers/hid/ipts/thread.c @@ -0,0 +1,84 @@ @@ -3162,7 +3162,7 @@ index 0000000000000..355e92bea26f8 +} diff --git a/drivers/hid/ipts/thread.h b/drivers/hid/ipts/thread.h new file mode 100644 -index 0000000000000..1f966b8b32c45 +index 000000000000..1f966b8b32c4 --- /dev/null +++ b/drivers/hid/ipts/thread.h @@ -0,0 +1,59 @@ @@ -3226,5 +3226,5 @@ index 0000000000000..1f966b8b32c45 + +#endif /* IPTS_THREAD_H */ -- -2.43.0 +2.44.0 diff --git a/patches/6.6/0005-ithc.patch b/patches/6.6/0005-ithc.patch index 746bc94d7..b91f413f3 100644 --- a/patches/6.6/0005-ithc.patch +++ b/patches/6.6/0005-ithc.patch @@ -10,7 +10,7 @@ Patchset: ithc 1 file changed, 16 insertions(+) diff --git a/drivers/iommu/intel/irq_remapping.c b/drivers/iommu/intel/irq_remapping.c -index 29b9e55dcf26c..986e91c813ae1 100644 +index 29b9e55dcf26..986e91c813ae 100644 --- a/drivers/iommu/intel/irq_remapping.c +++ b/drivers/iommu/intel/irq_remapping.c @@ -386,6 +386,22 @@ static int set_msi_sid(struct irte *irte, struct pci_dev *dev) @@ -37,7 +37,7 @@ index 29b9e55dcf26c..986e91c813ae1 100644 * DMA alias provides us with a PCI device and alias. The only case * where the it will return an alias on a different bus than the -- -2.43.0 +2.44.0 From f023c8e014f11338ea77f6473152d56b79092e01 Mon Sep 17 00:00:00 2001 From: Dorian Stoll @@ -72,7 +72,7 @@ Patchset: ithc create mode 100644 drivers/hid/ithc/ithc.h diff --git a/drivers/hid/Kconfig b/drivers/hid/Kconfig -index 0b9d245d10e54..8ba1c309228be 100644 +index 0b9d245d10e5..8ba1c309228b 100644 --- a/drivers/hid/Kconfig +++ b/drivers/hid/Kconfig @@ -1347,4 +1347,6 @@ source "drivers/hid/surface-hid/Kconfig" @@ -83,7 +83,7 @@ index 0b9d245d10e54..8ba1c309228be 100644 + endif # HID_SUPPORT diff --git a/drivers/hid/Makefile b/drivers/hid/Makefile -index 2ef21b257d0b5..e94b79727b489 100644 +index 2ef21b257d0b..e94b79727b48 100644 --- a/drivers/hid/Makefile +++ b/drivers/hid/Makefile @@ -171,3 +171,4 @@ obj-$(CONFIG_AMD_SFH_HID) += amd-sfh-hid/ @@ -93,7 +93,7 @@ index 2ef21b257d0b5..e94b79727b489 100644 +obj-$(CONFIG_HID_ITHC) += ithc/ diff --git a/drivers/hid/ithc/Kbuild b/drivers/hid/ithc/Kbuild new file mode 100644 -index 0000000000000..aea83f2ac07b4 +index 000000000000..aea83f2ac07b --- /dev/null +++ b/drivers/hid/ithc/Kbuild @@ -0,0 +1,6 @@ @@ -105,7 +105,7 @@ index 0000000000000..aea83f2ac07b4 + diff --git a/drivers/hid/ithc/Kconfig b/drivers/hid/ithc/Kconfig new file mode 100644 -index 0000000000000..ede7130236096 +index 000000000000..ede713023609 --- /dev/null +++ b/drivers/hid/ithc/Kconfig @@ -0,0 +1,12 @@ @@ -123,7 +123,7 @@ index 0000000000000..ede7130236096 + module will be called ithc. diff --git a/drivers/hid/ithc/ithc-debug.c b/drivers/hid/ithc/ithc-debug.c new file mode 100644 -index 0000000000000..57bf125c45bd5 +index 000000000000..57bf125c45bd --- /dev/null +++ b/drivers/hid/ithc/ithc-debug.c @@ -0,0 +1,96 @@ @@ -225,7 +225,7 @@ index 0000000000000..57bf125c45bd5 + diff --git a/drivers/hid/ithc/ithc-dma.c b/drivers/hid/ithc/ithc-dma.c new file mode 100644 -index 0000000000000..7e89b3496918d +index 000000000000..7e89b3496918 --- /dev/null +++ b/drivers/hid/ithc/ithc-dma.c @@ -0,0 +1,258 @@ @@ -489,7 +489,7 @@ index 0000000000000..7e89b3496918d + diff --git a/drivers/hid/ithc/ithc-dma.h b/drivers/hid/ithc/ithc-dma.h new file mode 100644 -index 0000000000000..d9f2c19a13f3a +index 000000000000..d9f2c19a13f3 --- /dev/null +++ b/drivers/hid/ithc/ithc-dma.h @@ -0,0 +1,67 @@ @@ -562,7 +562,7 @@ index 0000000000000..d9f2c19a13f3a + diff --git a/drivers/hid/ithc/ithc-main.c b/drivers/hid/ithc/ithc-main.c new file mode 100644 -index 0000000000000..09512b9cb4d31 +index 000000000000..09512b9cb4d3 --- /dev/null +++ b/drivers/hid/ithc/ithc-main.c @@ -0,0 +1,534 @@ @@ -1102,7 +1102,7 @@ index 0000000000000..09512b9cb4d31 + diff --git a/drivers/hid/ithc/ithc-regs.c b/drivers/hid/ithc/ithc-regs.c new file mode 100644 -index 0000000000000..85d567b05761f +index 000000000000..85d567b05761 --- /dev/null +++ b/drivers/hid/ithc/ithc-regs.c @@ -0,0 +1,64 @@ @@ -1172,7 +1172,7 @@ index 0000000000000..85d567b05761f + diff --git a/drivers/hid/ithc/ithc-regs.h b/drivers/hid/ithc/ithc-regs.h new file mode 100644 -index 0000000000000..1a96092ed7eed +index 000000000000..1a96092ed7ee --- /dev/null +++ b/drivers/hid/ithc/ithc-regs.h @@ -0,0 +1,186 @@ @@ -1364,7 +1364,7 @@ index 0000000000000..1a96092ed7eed + diff --git a/drivers/hid/ithc/ithc.h b/drivers/hid/ithc/ithc.h new file mode 100644 -index 0000000000000..6a9b0d480bc15 +index 000000000000..6a9b0d480bc1 --- /dev/null +++ b/drivers/hid/ithc/ithc.h @@ -0,0 +1,60 @@ @@ -1429,7 +1429,7 @@ index 0000000000000..6a9b0d480bc15 +void ithc_log_regs(struct ithc *ithc); + -- -2.43.0 +2.44.0 From 37dc17be7687c220d8c84f3ed200fa4fedeafb04 Mon Sep 17 00:00:00 2001 From: quo @@ -1456,7 +1456,7 @@ Patchset: ithc 7 files changed, 623 insertions(+), 236 deletions(-) diff --git a/drivers/hid/ithc/ithc-debug.c b/drivers/hid/ithc/ithc-debug.c -index 57bf125c45bd5..1f1f1e33f2e5a 100644 +index 57bf125c45bd..1f1f1e33f2e5 100644 --- a/drivers/hid/ithc/ithc-debug.c +++ b/drivers/hid/ithc/ithc-debug.c @@ -1,10 +1,14 @@ @@ -1613,7 +1613,7 @@ index 57bf125c45bd5..1f1f1e33f2e5a 100644 return 0; } diff --git a/drivers/hid/ithc/ithc-dma.c b/drivers/hid/ithc/ithc-dma.c -index 7e89b3496918d..ffb8689b8a780 100644 +index 7e89b3496918..ffb8689b8a78 100644 --- a/drivers/hid/ithc/ithc-dma.c +++ b/drivers/hid/ithc/ithc-dma.c @@ -1,59 +1,91 @@ @@ -2031,7 +2031,7 @@ index 7e89b3496918d..ffb8689b8a780 100644 int ret = ithc_dma_tx_unlocked(ithc, cmdcode, datasize, data); mutex_unlock(&ithc->dma_tx.mutex); diff --git a/drivers/hid/ithc/ithc-dma.h b/drivers/hid/ithc/ithc-dma.h -index d9f2c19a13f3a..93652e4476bf8 100644 +index d9f2c19a13f3..93652e4476bf 100644 --- a/drivers/hid/ithc/ithc-dma.h +++ b/drivers/hid/ithc/ithc-dma.h @@ -1,3 +1,5 @@ @@ -2050,7 +2050,7 @@ index d9f2c19a13f3a..93652e4476bf8 100644 int ithc_dma_tx_init(struct ithc *ithc); int ithc_dma_rx(struct ithc *ithc, u8 channel); diff --git a/drivers/hid/ithc/ithc-main.c b/drivers/hid/ithc/ithc-main.c -index 09512b9cb4d31..87ed4aa70fda0 100644 +index 09512b9cb4d3..87ed4aa70fda 100644 --- a/drivers/hid/ithc/ithc-main.c +++ b/drivers/hid/ithc/ithc-main.c @@ -1,3 +1,5 @@ @@ -2799,7 +2799,7 @@ index 09512b9cb4d31..87ed4aa70fda0 100644 } diff --git a/drivers/hid/ithc/ithc-regs.c b/drivers/hid/ithc/ithc-regs.c -index 85d567b05761f..e058721886e37 100644 +index 85d567b05761..e058721886e3 100644 --- a/drivers/hid/ithc/ithc-regs.c +++ b/drivers/hid/ithc/ithc-regs.c @@ -1,63 +1,95 @@ @@ -2917,7 +2917,7 @@ index 85d567b05761f..e058721886e37 100644 return 0; } diff --git a/drivers/hid/ithc/ithc-regs.h b/drivers/hid/ithc/ithc-regs.h -index 1a96092ed7eed..d4007d9e2bacc 100644 +index 1a96092ed7ee..d4007d9e2bac 100644 --- a/drivers/hid/ithc/ithc-regs.h +++ b/drivers/hid/ithc/ithc-regs.h @@ -1,3 +1,5 @@ @@ -2977,7 +2977,7 @@ index 1a96092ed7eed..d4007d9e2bacc 100644 u32 _unknown_34; // 34 = 0x0404035e (u8,u8,u8,u8 = version?) u32 _unknown_38; // 38 = 0x000001c0 (0x000001c1 after DMA_RX_CODE_RESET) diff --git a/drivers/hid/ithc/ithc.h b/drivers/hid/ithc/ithc.h -index 6a9b0d480bc15..028e55a4ec53e 100644 +index 6a9b0d480bc1..028e55a4ec53 100644 --- a/drivers/hid/ithc/ithc.h +++ b/drivers/hid/ithc/ithc.h @@ -1,3 +1,5 @@ @@ -3020,5 +3020,5 @@ index 6a9b0d480bc15..028e55a4ec53e 100644 void ithc_log_regs(struct ithc *ithc); -- -2.43.0 +2.44.0 diff --git a/patches/6.6/0006-surface-sam.patch b/patches/6.6/0006-surface-sam.patch index a538fdb65..370dbb720 100644 --- a/patches/6.6/0006-surface-sam.patch +++ b/patches/6.6/0006-surface-sam.patch @@ -15,7 +15,7 @@ Patchset: surface-sam 1 file changed, 3 insertions(+) diff --git a/drivers/platform/surface/surface_aggregator_registry.c b/drivers/platform/surface/surface_aggregator_registry.c -index 0fe5be5396525..0d8c8395c5886 100644 +index 0fe5be539652..0d8c8395c588 100644 --- a/drivers/platform/surface/surface_aggregator_registry.c +++ b/drivers/platform/surface/surface_aggregator_registry.c @@ -367,6 +367,9 @@ static const struct acpi_device_id ssam_platform_hub_match[] = { @@ -29,7 +29,7 @@ index 0fe5be5396525..0d8c8395c5886 100644 { "MSHW0123", (unsigned long)ssam_node_group_sls }, -- -2.43.0 +2.44.0 From 04a113aa335b566860380818090ed0ce606377c0 Mon Sep 17 00:00:00 2001 From: Maximilian Luz @@ -49,7 +49,7 @@ Patchset: surface-sam 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/drivers/platform/surface/surface_aggregator_registry.c b/drivers/platform/surface/surface_aggregator_registry.c -index 0d8c8395c5886..530db4db71aba 100644 +index 0d8c8395c588..530db4db71ab 100644 --- a/drivers/platform/surface/surface_aggregator_registry.c +++ b/drivers/platform/surface/surface_aggregator_registry.c @@ -247,8 +247,8 @@ static const struct software_node *ssam_node_group_sl5[] = { @@ -99,7 +99,7 @@ index 0d8c8395c5886..530db4db71aba 100644 { }, }; -- -2.43.0 +2.44.0 From 31253c1714eef54d147ff70886be3e0b86301656 Mon Sep 17 00:00:00 2001 From: Ivor Wanders @@ -119,7 +119,7 @@ Patchset: surface-sam 1 file changed, 7 insertions(+) diff --git a/drivers/platform/surface/surface_aggregator_registry.c b/drivers/platform/surface/surface_aggregator_registry.c -index 530db4db71aba..b0db25886c996 100644 +index 530db4db71ab..b0db25886c99 100644 --- a/drivers/platform/surface/surface_aggregator_registry.c +++ b/drivers/platform/surface/surface_aggregator_registry.c @@ -74,6 +74,12 @@ static const struct software_node ssam_node_tmp_pprof = { @@ -144,7 +144,7 @@ index 530db4db71aba..b0db25886c996 100644 &ssam_node_hid_kip_keyboard, &ssam_node_hid_kip_penstash, -- -2.43.0 +2.44.0 From ba442037211d245c84dcd4cd1ec81a09468305e6 Mon Sep 17 00:00:00 2001 From: Ivor Wanders @@ -170,7 +170,7 @@ Patchset: surface-sam create mode 100644 drivers/hwmon/surface_fan.c diff --git a/Documentation/hwmon/index.rst b/Documentation/hwmon/index.rst -index 88dadea85cfcd..266edff78972d 100644 +index 88dadea85cfc..266edff78972 100644 --- a/Documentation/hwmon/index.rst +++ b/Documentation/hwmon/index.rst @@ -202,6 +202,7 @@ Hardware Monitoring Kernel Drivers @@ -183,7 +183,7 @@ index 88dadea85cfcd..266edff78972d 100644 tc74 diff --git a/Documentation/hwmon/surface_fan.rst b/Documentation/hwmon/surface_fan.rst new file mode 100644 -index 0000000000000..07942574c4f0c +index 000000000000..07942574c4f0 --- /dev/null +++ b/Documentation/hwmon/surface_fan.rst @@ -0,0 +1,25 @@ @@ -213,7 +213,7 @@ index 0000000000000..07942574c4f0c +``fan1_input`` RO Current fan speed in RPM. +======================= ======= ========================================= diff --git a/MAINTAINERS b/MAINTAINERS -index dd5de540ec0b5..63c3f93279277 100644 +index dd5de540ec0b..63c3f9327927 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -14203,6 +14203,14 @@ F: Documentation/driver-api/surface_aggregator/clients/dtx.rst @@ -232,7 +232,7 @@ index dd5de540ec0b5..63c3f93279277 100644 M: Maximilian Luz L: platform-driver-x86@vger.kernel.org diff --git a/drivers/hwmon/Kconfig b/drivers/hwmon/Kconfig -index ec38c88921589..b5267a2fbe5f3 100644 +index ec38c8892158..b5267a2fbe5f 100644 --- a/drivers/hwmon/Kconfig +++ b/drivers/hwmon/Kconfig @@ -1961,6 +1961,19 @@ config SENSORS_SFCTEMP @@ -256,7 +256,7 @@ index ec38c88921589..b5267a2fbe5f3 100644 tristate "Texas Instruments ADC128D818" depends on I2C diff --git a/drivers/hwmon/Makefile b/drivers/hwmon/Makefile -index 4ac9452b54304..208f7345f296e 100644 +index 4ac9452b5430..208f7345f296 100644 --- a/drivers/hwmon/Makefile +++ b/drivers/hwmon/Makefile @@ -198,6 +198,7 @@ obj-$(CONFIG_SENSORS_SMSC47M1) += smsc47m1.o @@ -269,7 +269,7 @@ index 4ac9452b54304..208f7345f296e 100644 obj-$(CONFIG_SENSORS_TC74) += tc74.o diff --git a/drivers/hwmon/surface_fan.c b/drivers/hwmon/surface_fan.c new file mode 100644 -index 0000000000000..7c2e3ae3eb40e +index 000000000000..7c2e3ae3eb40 --- /dev/null +++ b/drivers/hwmon/surface_fan.c @@ -0,0 +1,93 @@ @@ -367,7 +367,7 @@ index 0000000000000..7c2e3ae3eb40e +MODULE_DESCRIPTION("Fan Driver for Surface System Aggregator Module"); +MODULE_LICENSE("GPL"); -- -2.43.0 +2.44.0 From e44dd763f976360449d9f15ed2bb756cc18d843b Mon Sep 17 00:00:00 2001 From: Maximilian Luz @@ -391,7 +391,7 @@ Patchset: surface-sam create mode 100644 drivers/hwmon/surface_temp.c diff --git a/drivers/hwmon/Kconfig b/drivers/hwmon/Kconfig -index b5267a2fbe5f3..2eedbe85d18ab 100644 +index b5267a2fbe5f..2eedbe85d18a 100644 --- a/drivers/hwmon/Kconfig +++ b/drivers/hwmon/Kconfig @@ -1974,6 +1974,16 @@ config SENSORS_SURFACE_FAN @@ -412,7 +412,7 @@ index b5267a2fbe5f3..2eedbe85d18ab 100644 tristate "Texas Instruments ADC128D818" depends on I2C diff --git a/drivers/hwmon/Makefile b/drivers/hwmon/Makefile -index 208f7345f296e..310d7a2e0f069 100644 +index 208f7345f296..310d7a2e0f06 100644 --- a/drivers/hwmon/Makefile +++ b/drivers/hwmon/Makefile @@ -199,6 +199,7 @@ obj-$(CONFIG_SENSORS_SMSC47M192)+= smsc47m192.o @@ -425,7 +425,7 @@ index 208f7345f296e..310d7a2e0f069 100644 obj-$(CONFIG_SENSORS_TC74) += tc74.o diff --git a/drivers/hwmon/surface_temp.c b/drivers/hwmon/surface_temp.c new file mode 100644 -index 0000000000000..48c3e826713f6 +index 000000000000..48c3e826713f --- /dev/null +++ b/drivers/hwmon/surface_temp.c @@ -0,0 +1,165 @@ @@ -595,7 +595,7 @@ index 0000000000000..48c3e826713f6 +MODULE_DESCRIPTION("Thermal sensor subsystem driver for Surface System Aggregator Module"); +MODULE_LICENSE("GPL"); -- -2.43.0 +2.44.0 From 41399077b077cff19e9b9133955ed81b6d7aa527 Mon Sep 17 00:00:00 2001 From: Maximilian Luz @@ -615,7 +615,7 @@ Patchset: surface-sam 1 file changed, 96 insertions(+), 17 deletions(-) diff --git a/drivers/hwmon/surface_temp.c b/drivers/hwmon/surface_temp.c -index 48c3e826713f6..4c08926139dbf 100644 +index 48c3e826713f..4c08926139db 100644 --- a/drivers/hwmon/surface_temp.c +++ b/drivers/hwmon/surface_temp.c @@ -17,6 +17,27 @@ @@ -790,7 +790,7 @@ index 48c3e826713f6..4c08926139dbf 100644 "surface_thermal", ssam_temp, &ssam_temp_hwmon_chip_info, NULL); -- -2.43.0 +2.44.0 From 37894568dd6a0bfb6422ce7c18df757fcb449512 Mon Sep 17 00:00:00 2001 From: Maximilian Luz @@ -808,7 +808,7 @@ Patchset: surface-sam 1 file changed, 7 insertions(+) diff --git a/drivers/platform/surface/surface_aggregator_registry.c b/drivers/platform/surface/surface_aggregator_registry.c -index b0db25886c996..797802d16f319 100644 +index b0db25886c99..797802d16f31 100644 --- a/drivers/platform/surface/surface_aggregator_registry.c +++ b/drivers/platform/surface/surface_aggregator_registry.c @@ -74,6 +74,12 @@ static const struct software_node ssam_node_tmp_pprof = { @@ -833,5 +833,331 @@ index b0db25886c996..797802d16f319 100644 &ssam_node_pos_tablet_switch, &ssam_node_hid_kip_keyboard, -- -2.43.0 +2.44.0 + +From b4fd0fc401f445f3946a53e94a94d8bc8386a91f Mon Sep 17 00:00:00 2001 +From: Ivor Wanders +Date: Sat, 16 Dec 2023 15:56:39 -0500 +Subject: [PATCH] platform/surface: platform_profile: add fan profile switching + +Change naming from tmp to platform profile to clarify the module may +interact with both the TMP and FAN subystems. Add functionality that +switches the fan profile when the platform profile is changed. + +Signed-off-by: Ivor Wanders +--- + .../surface/surface_aggregator_registry.c | 38 +++++--- + .../surface/surface_platform_profile.c | 86 ++++++++++++++++--- + 2 files changed, 100 insertions(+), 24 deletions(-) + +diff --git a/drivers/platform/surface/surface_aggregator_registry.c b/drivers/platform/surface/surface_aggregator_registry.c +index 797802d16f31..7540d8736664 100644 +--- a/drivers/platform/surface/surface_aggregator_registry.c ++++ b/drivers/platform/surface/surface_aggregator_registry.c +@@ -68,8 +68,8 @@ static const struct software_node ssam_node_bat_sb3base = { + .parent = &ssam_node_hub_base, + }; + +-/* Platform profile / performance-mode device. */ +-static const struct software_node ssam_node_tmp_pprof = { ++/* Platform profile / performance-mode device without a fan. */ ++static const struct software_node ssam_node_tmp_perf_profile = { + .name = "ssam:01:03:01:00:01", + .parent = &ssam_node_root, + }; +@@ -86,6 +86,20 @@ static const struct software_node ssam_node_fan_speed = { + .parent = &ssam_node_root, + }; + ++/* Platform profile / performance-mode device with a fan, such that ++ * the fan controller profile can also be switched. ++ */ ++static const struct property_entry ssam_node_tmp_perf_profile_has_fan[] = { ++ PROPERTY_ENTRY_BOOL("has_fan"), ++ { } ++}; ++ ++static const struct software_node ssam_node_tmp_perf_profile_with_fan = { ++ .name = "ssam:01:03:01:00:01", ++ .parent = &ssam_node_root, ++ .properties = ssam_node_tmp_perf_profile_has_fan, ++}; ++ + /* Tablet-mode switch via KIP subsystem. */ + static const struct software_node ssam_node_kip_tablet_switch = { + .name = "ssam:01:0e:01:00:01", +@@ -214,7 +228,7 @@ static const struct software_node ssam_node_pos_tablet_switch = { + */ + static const struct software_node *ssam_node_group_gen5[] = { + &ssam_node_root, +- &ssam_node_tmp_pprof, ++ &ssam_node_tmp_perf_profile, + NULL, + }; + +@@ -225,7 +239,7 @@ static const struct software_node *ssam_node_group_sb3[] = { + &ssam_node_bat_ac, + &ssam_node_bat_main, + &ssam_node_bat_sb3base, +- &ssam_node_tmp_pprof, ++ &ssam_node_tmp_perf_profile, + &ssam_node_bas_dtx, + &ssam_node_hid_base_keyboard, + &ssam_node_hid_base_touchpad, +@@ -239,7 +253,7 @@ static const struct software_node *ssam_node_group_sl3[] = { + &ssam_node_root, + &ssam_node_bat_ac, + &ssam_node_bat_main, +- &ssam_node_tmp_pprof, ++ &ssam_node_tmp_perf_profile, + &ssam_node_hid_main_keyboard, + &ssam_node_hid_main_touchpad, + &ssam_node_hid_main_iid5, +@@ -251,7 +265,7 @@ static const struct software_node *ssam_node_group_sl5[] = { + &ssam_node_root, + &ssam_node_bat_ac, + &ssam_node_bat_main, +- &ssam_node_tmp_pprof, ++ &ssam_node_tmp_perf_profile, + &ssam_node_hid_main_keyboard, + &ssam_node_hid_main_touchpad, + &ssam_node_hid_main_iid5, +@@ -264,7 +278,7 @@ static const struct software_node *ssam_node_group_sls1[] = { + &ssam_node_root, + &ssam_node_bat_ac, + &ssam_node_bat_main, +- &ssam_node_tmp_pprof, ++ &ssam_node_tmp_perf_profile, + &ssam_node_pos_tablet_switch, + &ssam_node_hid_sam_keyboard, + &ssam_node_hid_sam_penstash, +@@ -280,7 +294,7 @@ static const struct software_node *ssam_node_group_sls2[] = { + &ssam_node_root, + &ssam_node_bat_ac, + &ssam_node_bat_main, +- &ssam_node_tmp_pprof, ++ &ssam_node_tmp_perf_profile, + &ssam_node_pos_tablet_switch, + &ssam_node_hid_sam_keyboard, + &ssam_node_hid_sam_penstash, +@@ -294,7 +308,7 @@ static const struct software_node *ssam_node_group_slg1[] = { + &ssam_node_root, + &ssam_node_bat_ac, + &ssam_node_bat_main, +- &ssam_node_tmp_pprof, ++ &ssam_node_tmp_perf_profile, + NULL, + }; + +@@ -303,7 +317,7 @@ static const struct software_node *ssam_node_group_sp7[] = { + &ssam_node_root, + &ssam_node_bat_ac, + &ssam_node_bat_main, +- &ssam_node_tmp_pprof, ++ &ssam_node_tmp_perf_profile, + NULL, + }; + +@@ -313,7 +327,7 @@ static const struct software_node *ssam_node_group_sp8[] = { + &ssam_node_hub_kip, + &ssam_node_bat_ac, + &ssam_node_bat_main, +- &ssam_node_tmp_pprof, ++ &ssam_node_tmp_perf_profile, + &ssam_node_kip_tablet_switch, + &ssam_node_hid_kip_keyboard, + &ssam_node_hid_kip_penstash, +@@ -330,7 +344,7 @@ static const struct software_node *ssam_node_group_sp9[] = { + &ssam_node_hub_kip, + &ssam_node_bat_ac, + &ssam_node_bat_main, +- &ssam_node_tmp_pprof, ++ &ssam_node_tmp_perf_profile_with_fan, + &ssam_node_tmp_sensors, + &ssam_node_fan_speed, + &ssam_node_pos_tablet_switch, +diff --git a/drivers/platform/surface/surface_platform_profile.c b/drivers/platform/surface/surface_platform_profile.c +index a5a3941b3f43..e54d0a8f7daa 100644 +--- a/drivers/platform/surface/surface_platform_profile.c ++++ b/drivers/platform/surface/surface_platform_profile.c +@@ -1,7 +1,7 @@ + // SPDX-License-Identifier: GPL-2.0+ + /* + * Surface Platform Profile / Performance Mode driver for Surface System +- * Aggregator Module (thermal subsystem). ++ * Aggregator Module (thermal and fan subsystem). + * + * Copyright (C) 2021-2022 Maximilian Luz + */ +@@ -14,6 +14,7 @@ + + #include + ++// Enum for the platform performance profile sent to the TMP module. + enum ssam_tmp_profile { + SSAM_TMP_PROFILE_NORMAL = 1, + SSAM_TMP_PROFILE_BATTERY_SAVER = 2, +@@ -21,15 +22,26 @@ enum ssam_tmp_profile { + SSAM_TMP_PROFILE_BEST_PERFORMANCE = 4, + }; + ++// Enum for the fan profile sent to the FAN module. This fan profile is ++// only sent to the EC if the 'has_fan' property is set. The integers are ++// not a typo, they differ from the performance profile indices. ++enum ssam_fan_profile { ++ SSAM_FAN_PROFILE_NORMAL = 2, ++ SSAM_FAN_PROFILE_BATTERY_SAVER = 1, ++ SSAM_FAN_PROFILE_BETTER_PERFORMANCE = 3, ++ SSAM_FAN_PROFILE_BEST_PERFORMANCE = 4, ++}; ++ + struct ssam_tmp_profile_info { + __le32 profile; + __le16 unknown1; + __le16 unknown2; + } __packed; + +-struct ssam_tmp_profile_device { ++struct ssam_platform_profile_device { + struct ssam_device *sdev; + struct platform_profile_handler handler; ++ bool has_fan; + }; + + SSAM_DEFINE_SYNC_REQUEST_CL_R(__ssam_tmp_profile_get, struct ssam_tmp_profile_info, { +@@ -42,6 +54,13 @@ SSAM_DEFINE_SYNC_REQUEST_CL_W(__ssam_tmp_profile_set, __le32, { + .command_id = 0x03, + }); + ++SSAM_DEFINE_SYNC_REQUEST_W(__ssam_fan_profile_set, char, { ++ .target_category = SSAM_SSH_TC_FAN, ++ .target_id = SSAM_SSH_TID_SAM, ++ .command_id = 0x0e, ++ .instance_id = 0x01, ++}); ++ + static int ssam_tmp_profile_get(struct ssam_device *sdev, enum ssam_tmp_profile *p) + { + struct ssam_tmp_profile_info info; +@@ -62,7 +81,14 @@ static int ssam_tmp_profile_set(struct ssam_device *sdev, enum ssam_tmp_profile + return ssam_retry(__ssam_tmp_profile_set, sdev, &profile_le); + } + +-static int convert_ssam_to_profile(struct ssam_device *sdev, enum ssam_tmp_profile p) ++static int ssam_fan_profile_set(struct ssam_device *sdev, enum ssam_fan_profile p) ++{ ++ char profile = p; ++ ++ return ssam_retry(__ssam_fan_profile_set, sdev->ctrl, &profile); ++} ++ ++static int convert_ssam_tmp_to_profile(struct ssam_device *sdev, enum ssam_tmp_profile p) + { + switch (p) { + case SSAM_TMP_PROFILE_NORMAL: +@@ -83,7 +109,8 @@ static int convert_ssam_to_profile(struct ssam_device *sdev, enum ssam_tmp_profi + } + } + +-static int convert_profile_to_ssam(struct ssam_device *sdev, enum platform_profile_option p) ++ ++static int convert_profile_to_ssam_tmp(struct ssam_device *sdev, enum platform_profile_option p) + { + switch (p) { + case PLATFORM_PROFILE_LOW_POWER: +@@ -105,20 +132,42 @@ static int convert_profile_to_ssam(struct ssam_device *sdev, enum platform_profi + } + } + ++static int convert_profile_to_ssam_fan(struct ssam_device *sdev, enum platform_profile_option p) ++{ ++ switch (p) { ++ case PLATFORM_PROFILE_LOW_POWER: ++ return SSAM_FAN_PROFILE_BATTERY_SAVER; ++ ++ case PLATFORM_PROFILE_BALANCED: ++ return SSAM_FAN_PROFILE_NORMAL; ++ ++ case PLATFORM_PROFILE_BALANCED_PERFORMANCE: ++ return SSAM_FAN_PROFILE_BETTER_PERFORMANCE; ++ ++ case PLATFORM_PROFILE_PERFORMANCE: ++ return SSAM_FAN_PROFILE_BEST_PERFORMANCE; ++ ++ default: ++ /* This should have already been caught by platform_profile_store(). */ ++ WARN(true, "unsupported platform profile"); ++ return -EOPNOTSUPP; ++ } ++} ++ + static int ssam_platform_profile_get(struct platform_profile_handler *pprof, + enum platform_profile_option *profile) + { +- struct ssam_tmp_profile_device *tpd; ++ struct ssam_platform_profile_device *tpd; + enum ssam_tmp_profile tp; + int status; + +- tpd = container_of(pprof, struct ssam_tmp_profile_device, handler); ++ tpd = container_of(pprof, struct ssam_platform_profile_device, handler); + + status = ssam_tmp_profile_get(tpd->sdev, &tp); + if (status) + return status; + +- status = convert_ssam_to_profile(tpd->sdev, tp); ++ status = convert_ssam_tmp_to_profile(tpd->sdev, tp); + if (status < 0) + return status; + +@@ -129,21 +178,32 @@ static int ssam_platform_profile_get(struct platform_profile_handler *pprof, + static int ssam_platform_profile_set(struct platform_profile_handler *pprof, + enum platform_profile_option profile) + { +- struct ssam_tmp_profile_device *tpd; ++ struct ssam_platform_profile_device *tpd; + int tp; + +- tpd = container_of(pprof, struct ssam_tmp_profile_device, handler); ++ tpd = container_of(pprof, struct ssam_platform_profile_device, handler); ++ ++ tp = convert_profile_to_ssam_tmp(tpd->sdev, profile); ++ if (tp < 0) ++ return tp; + +- tp = convert_profile_to_ssam(tpd->sdev, profile); ++ tp = ssam_tmp_profile_set(tpd->sdev, tp); + if (tp < 0) + return tp; + +- return ssam_tmp_profile_set(tpd->sdev, tp); ++ if (tpd->has_fan) { ++ tp = convert_profile_to_ssam_fan(tpd->sdev, profile); ++ if (tp < 0) ++ return tp; ++ tp = ssam_fan_profile_set(tpd->sdev, tp); ++ } ++ ++ return tp; + } + + static int surface_platform_profile_probe(struct ssam_device *sdev) + { +- struct ssam_tmp_profile_device *tpd; ++ struct ssam_platform_profile_device *tpd; + + tpd = devm_kzalloc(&sdev->dev, sizeof(*tpd), GFP_KERNEL); + if (!tpd) +@@ -154,6 +214,8 @@ static int surface_platform_profile_probe(struct ssam_device *sdev) + tpd->handler.profile_get = ssam_platform_profile_get; + tpd->handler.profile_set = ssam_platform_profile_set; + ++ tpd->has_fan = device_property_read_bool(&sdev->dev, "has_fan"); ++ + set_bit(PLATFORM_PROFILE_LOW_POWER, tpd->handler.choices); + set_bit(PLATFORM_PROFILE_BALANCED, tpd->handler.choices); + set_bit(PLATFORM_PROFILE_BALANCED_PERFORMANCE, tpd->handler.choices); +-- +2.44.0 diff --git a/patches/6.6/0007-surface-sam-over-hid.patch b/patches/6.6/0007-surface-sam-over-hid.patch index 667c6b3a7..8102aa24d 100644 --- a/patches/6.6/0007-surface-sam-over-hid.patch +++ b/patches/6.6/0007-surface-sam-over-hid.patch @@ -55,7 +55,7 @@ Patchset: surface-sam-over-hid 1 file changed, 35 insertions(+) diff --git a/drivers/i2c/i2c-core-acpi.c b/drivers/i2c/i2c-core-acpi.c -index d6037a3286690..a290ebc77aea2 100644 +index d6037a328669..a290ebc77aea 100644 --- a/drivers/i2c/i2c-core-acpi.c +++ b/drivers/i2c/i2c-core-acpi.c @@ -628,6 +628,28 @@ static int acpi_gsb_i2c_write_bytes(struct i2c_client *client, @@ -108,7 +108,7 @@ index d6037a3286690..a290ebc77aea2 100644 dev_warn(&adapter->dev, "protocol 0x%02x not supported for client 0x%02x\n", accessor_type, client->addr); -- -2.43.0 +2.44.0 From 09df61b1ed72eb879aeb7b8091606299bc61fdd6 Mon Sep 17 00:00:00 2001 From: Maximilian Luz @@ -133,7 +133,7 @@ Patchset: surface-sam-over-hid create mode 100644 drivers/platform/surface/surfacebook1_dgpu_switch.c diff --git a/drivers/platform/surface/Kconfig b/drivers/platform/surface/Kconfig -index b629e82af97c0..68656e8f309ed 100644 +index b629e82af97c..68656e8f309e 100644 --- a/drivers/platform/surface/Kconfig +++ b/drivers/platform/surface/Kconfig @@ -149,6 +149,13 @@ config SURFACE_AGGREGATOR_TABLET_SWITCH @@ -151,7 +151,7 @@ index b629e82af97c0..68656e8f309ed 100644 tristate "Surface DTX (Detachment System) Driver" depends on SURFACE_AGGREGATOR diff --git a/drivers/platform/surface/Makefile b/drivers/platform/surface/Makefile -index 53344330939bf..7efcd0cdb5329 100644 +index 53344330939b..7efcd0cdb532 100644 --- a/drivers/platform/surface/Makefile +++ b/drivers/platform/surface/Makefile @@ -12,6 +12,7 @@ obj-$(CONFIG_SURFACE_AGGREGATOR_CDEV) += surface_aggregator_cdev.o @@ -164,7 +164,7 @@ index 53344330939bf..7efcd0cdb5329 100644 obj-$(CONFIG_SURFACE_HOTPLUG) += surface_hotplug.o diff --git a/drivers/platform/surface/surfacebook1_dgpu_switch.c b/drivers/platform/surface/surfacebook1_dgpu_switch.c new file mode 100644 -index 0000000000000..8b816ed8f35c6 +index 000000000000..8b816ed8f35c --- /dev/null +++ b/drivers/platform/surface/surfacebook1_dgpu_switch.c @@ -0,0 +1,162 @@ @@ -331,5 +331,5 @@ index 0000000000000..8b816ed8f35c6 +MODULE_DESCRIPTION("Discrete GPU Power-Switch for Surface Book 1"); +MODULE_LICENSE("GPL"); -- -2.43.0 +2.44.0 diff --git a/patches/6.6/0008-surface-button.patch b/patches/6.6/0008-surface-button.patch index 40de3fb34..698019a08 100644 --- a/patches/6.6/0008-surface-button.patch +++ b/patches/6.6/0008-surface-button.patch @@ -20,7 +20,7 @@ Patchset: surface-button 1 file changed, 8 insertions(+), 25 deletions(-) diff --git a/drivers/input/misc/soc_button_array.c b/drivers/input/misc/soc_button_array.c -index 9116f4248fd09..eba53cb0139e3 100644 +index 9116f4248fd0..eba53cb0139e 100644 --- a/drivers/input/misc/soc_button_array.c +++ b/drivers/input/misc/soc_button_array.c @@ -542,8 +542,8 @@ static const struct soc_device_data soc_device_MSHW0028 = { @@ -73,7 +73,7 @@ index 9116f4248fd09..eba53cb0139e3 100644 /* -- -2.43.0 +2.44.0 From 41a632737f84b0404c1faca01edb90aecc9378ee Mon Sep 17 00:00:00 2001 From: Sachi King @@ -96,7 +96,7 @@ Patchset: surface-button 1 file changed, 6 insertions(+), 24 deletions(-) diff --git a/drivers/platform/surface/surfacepro3_button.c b/drivers/platform/surface/surfacepro3_button.c -index 2755601f979cd..4240c98ca2265 100644 +index 2755601f979c..4240c98ca226 100644 --- a/drivers/platform/surface/surfacepro3_button.c +++ b/drivers/platform/surface/surfacepro3_button.c @@ -149,7 +149,8 @@ static int surface_button_resume(struct device *dev) @@ -145,5 +145,5 @@ index 2755601f979cd..4240c98ca2265 100644 -- -2.43.0 +2.44.0 diff --git a/patches/6.6/0009-surface-typecover.patch b/patches/6.6/0009-surface-typecover.patch index 796699d25..036b7ec3d 100644 --- a/patches/6.6/0009-surface-typecover.patch +++ b/patches/6.6/0009-surface-typecover.patch @@ -23,7 +23,7 @@ Patchset: surface-typecover 1 file changed, 3 insertions(+) diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c -index 15e9bd180a1d2..0d70461d01e16 100644 +index 15e9bd180a1d..0d70461d01e1 100644 --- a/drivers/usb/core/quirks.c +++ b/drivers/usb/core/quirks.c @@ -220,6 +220,9 @@ static const struct usb_device_id usb_quirk_list[] = { @@ -37,7 +37,7 @@ index 15e9bd180a1d2..0d70461d01e16 100644 { USB_DEVICE(0x046a, 0x0023), .driver_info = USB_QUIRK_RESET_RESUME }, -- -2.43.0 +2.44.0 From 350edff5f5c90d811ff0686f95dd7f5222ee3d8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20Dre=C3=9Fler?= @@ -75,7 +75,7 @@ Patchset: surface-typecover 1 file changed, 98 insertions(+), 2 deletions(-) diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c -index 5ec1f174127a3..a7a12b56f79cb 100644 +index 5ec1f174127a..a7a12b56f79c 100644 --- a/drivers/hid/hid-multitouch.c +++ b/drivers/hid/hid-multitouch.c @@ -34,7 +34,10 @@ @@ -270,7 +270,7 @@ index 5ec1f174127a3..a7a12b56f79cb 100644 { .driver_data = MT_CLS_GOOGLE, HID_DEVICE(HID_BUS_ANY, HID_GROUP_ANY, USB_VENDOR_ID_GOOGLE, -- -2.43.0 +2.44.0 From 29e073fd0ed75ce3f28b49a4fd34358104a3fd13 Mon Sep 17 00:00:00 2001 From: PJungkamp @@ -301,7 +301,7 @@ Patchset: surface-typecover 1 file changed, 122 insertions(+), 26 deletions(-) diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c -index a7a12b56f79cb..d4ac41f2f9a8a 100644 +index a7a12b56f79c..d4ac41f2f9a8 100644 --- a/drivers/hid/hid-multitouch.c +++ b/drivers/hid/hid-multitouch.c @@ -77,6 +77,7 @@ MODULE_LICENSE("GPL"); @@ -570,5 +570,5 @@ index a7a12b56f79cb..d4ac41f2f9a8a 100644 unregister_pm_notifier(&td->pm_notifier); del_timer_sync(&td->release_timer); -- -2.43.0 +2.44.0 diff --git a/patches/6.6/0010-surface-shutdown.patch b/patches/6.6/0010-surface-shutdown.patch index 5bdea4577..7c0e9b2ba 100644 --- a/patches/6.6/0010-surface-shutdown.patch +++ b/patches/6.6/0010-surface-shutdown.patch @@ -23,7 +23,7 @@ Patchset: surface-shutdown 3 files changed, 40 insertions(+) diff --git a/drivers/pci/pci-driver.c b/drivers/pci/pci-driver.c -index 51ec9e7e784f0..40554890d7211 100644 +index 51ec9e7e784f..40554890d721 100644 --- a/drivers/pci/pci-driver.c +++ b/drivers/pci/pci-driver.c @@ -507,6 +507,9 @@ static void pci_device_shutdown(struct device *dev) @@ -37,7 +37,7 @@ index 51ec9e7e784f0..40554890d7211 100644 if (drv && drv->shutdown) diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c -index ae95d09507722..036af941b5e6b 100644 +index ae95d0950772..036af941b5e6 100644 --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c @@ -6223,3 +6223,39 @@ static void pci_fixup_d3cold_delay_1sec(struct pci_dev *pdev) @@ -81,7 +81,7 @@ index ae95d09507722..036af941b5e6b 100644 +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x466d, quirk_no_shutdown); // Thunderbolt 4 NHI +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x46a8, quirk_no_shutdown); // GPU diff --git a/include/linux/pci.h b/include/linux/pci.h -index 1596b1205b8d8..608ab04a0b6c9 100644 +index 1596b1205b8d..608ab04a0b6c 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h @@ -465,6 +465,7 @@ struct pci_dev { @@ -93,5 +93,5 @@ index 1596b1205b8d8..608ab04a0b6c9 100644 atomic_t enable_cnt; /* pci_enable_device has been called */ -- -2.43.0 +2.44.0 diff --git a/patches/6.6/0011-surface-gpe.patch b/patches/6.6/0011-surface-gpe.patch index b16db96c8..6530612c7 100644 --- a/patches/6.6/0011-surface-gpe.patch +++ b/patches/6.6/0011-surface-gpe.patch @@ -12,7 +12,7 @@ Patchset: surface-gpe 1 file changed, 17 insertions(+) diff --git a/drivers/platform/surface/surface_gpe.c b/drivers/platform/surface/surface_gpe.c -index c219b840d491a..69c4352e8406b 100644 +index c219b840d491..69c4352e8406 100644 --- a/drivers/platform/surface/surface_gpe.c +++ b/drivers/platform/surface/surface_gpe.c @@ -41,6 +41,11 @@ static const struct property_entry lid_device_props_l4F[] = { @@ -47,5 +47,5 @@ index c219b840d491a..69c4352e8406b 100644 .ident = "Surface Book 1", .matches = { -- -2.43.0 +2.44.0 diff --git a/patches/6.6/0012-cameras.patch b/patches/6.6/0012-cameras.patch index ca6d0284f..70f5c0efd 100644 --- a/patches/6.6/0012-cameras.patch +++ b/patches/6.6/0012-cameras.patch @@ -58,7 +58,7 @@ Patchset: cameras 1 file changed, 3 insertions(+) diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c -index 1d249d0f61ae4..558cf449a6e2c 100644 +index 1d249d0f61ae..558cf449a6e2 100644 --- a/drivers/acpi/scan.c +++ b/drivers/acpi/scan.c @@ -2113,6 +2113,9 @@ static acpi_status acpi_bus_check_add_2(acpi_handle handle, u32 lvl_not_used, @@ -72,7 +72,7 @@ index 1d249d0f61ae4..558cf449a6e2c 100644 * Do not enumerate devices with enumeration_by_parent flag set as * they will be enumerated by their respective parents. -- -2.43.0 +2.44.0 From 992be6ed831018a7673a0424adad595c44475de7 Mon Sep 17 00:00:00 2001 From: zouxiaoh @@ -100,7 +100,7 @@ Patchset: cameras 1 file changed, 30 insertions(+) diff --git a/drivers/iommu/intel/iommu.c b/drivers/iommu/intel/iommu.c -index 0cbe3a5212548..9f3df56628894 100644 +index 0cbe3a521254..9f3df5662889 100644 --- a/drivers/iommu/intel/iommu.c +++ b/drivers/iommu/intel/iommu.c @@ -38,6 +38,12 @@ @@ -189,7 +189,7 @@ index 0cbe3a5212548..9f3df56628894 100644 DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x9D3E, quirk_iommu_ipts); -- -2.43.0 +2.44.0 From a3e7ba42e2b2cce37b0d4987fde18c745139c19b Mon Sep 17 00:00:00 2001 From: Daniel Scally @@ -208,7 +208,7 @@ Patchset: cameras 1 file changed, 7 insertions(+) diff --git a/drivers/platform/x86/intel/int3472/tps68470.c b/drivers/platform/x86/intel/int3472/tps68470.c -index 1e107fd49f828..e3e1696e7f0ee 100644 +index 1e107fd49f82..e3e1696e7f0e 100644 --- a/drivers/platform/x86/intel/int3472/tps68470.c +++ b/drivers/platform/x86/intel/int3472/tps68470.c @@ -46,6 +46,13 @@ static int tps68470_chip_init(struct device *dev, struct regmap *regmap) @@ -226,7 +226,7 @@ index 1e107fd49f828..e3e1696e7f0ee 100644 return 0; -- -2.43.0 +2.44.0 From 9caa85a76f4310dd758c406b7754907ebdbb3931 Mon Sep 17 00:00:00 2001 From: Daniel Scally @@ -250,7 +250,7 @@ Patchset: cameras 1 file changed, 14 insertions(+) diff --git a/drivers/platform/x86/intel/int3472/discrete.c b/drivers/platform/x86/intel/int3472/discrete.c -index e33c2d75975cf..c0c90ae66b705 100644 +index e33c2d75975c..c0c90ae66b70 100644 --- a/drivers/platform/x86/intel/int3472/discrete.c +++ b/drivers/platform/x86/intel/int3472/discrete.c @@ -57,6 +57,9 @@ static int skl_int3472_map_gpio_to_sensor(struct int3472_discrete_device *int347 @@ -282,7 +282,7 @@ index e33c2d75975cf..c0c90ae66b705 100644 if (ACPI_FAILURE(status)) return -EINVAL; -- -2.43.0 +2.44.0 From 3ede4c09a68bc8ee1820986f865133c3cd188f2e Mon Sep 17 00:00:00 2001 From: Daniel Scally @@ -299,7 +299,7 @@ Patchset: cameras 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/media/i2c/ov7251.c b/drivers/media/i2c/ov7251.c -index 675fb37a6feae..43b30db08c9e4 100644 +index 675fb37a6fea..43b30db08c9e 100644 --- a/drivers/media/i2c/ov7251.c +++ b/drivers/media/i2c/ov7251.c @@ -1051,7 +1051,7 @@ static int ov7251_s_ctrl(struct v4l2_ctrl *ctrl) @@ -321,7 +321,7 @@ index 675fb37a6feae..43b30db08c9e4 100644 V4L2_CID_TEST_PATTERN, ARRAY_SIZE(ov7251_test_pattern_menu) - 1, -- -2.43.0 +2.44.0 From 7161e88bfd849eb77ad8dcf5111ebc4a3f8c3fd4 Mon Sep 17 00:00:00 2001 From: Daniel Scally @@ -342,7 +342,7 @@ Patchset: cameras 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/media/v4l2-core/v4l2-async.c b/drivers/media/v4l2-core/v4l2-async.c -index 091e8cf4114ba..cca10f5355844 100644 +index 091e8cf4114b..cca10f535584 100644 --- a/drivers/media/v4l2-core/v4l2-async.c +++ b/drivers/media/v4l2-core/v4l2-async.c @@ -796,6 +796,10 @@ int v4l2_async_register_subdev(struct v4l2_subdev *sd) @@ -357,7 +357,7 @@ index 091e8cf4114ba..cca10f5355844 100644 * No reference taken. The reference is held by the device (struct * v4l2_subdev.dev), and async sub-device does not exist independently diff --git a/drivers/media/v4l2-core/v4l2-fwnode.c b/drivers/media/v4l2-core/v4l2-fwnode.c -index 7f181fbbb1407..1c0347de4e216 100644 +index 7f181fbbb140..1c0347de4e21 100644 --- a/drivers/media/v4l2-core/v4l2-fwnode.c +++ b/drivers/media/v4l2-core/v4l2-fwnode.c @@ -1217,10 +1217,6 @@ int v4l2_async_register_subdev_sensor(struct v4l2_subdev *sd) @@ -372,7 +372,7 @@ index 7f181fbbb1407..1c0347de4e216 100644 if (ret < 0) goto out_cleanup; -- -2.43.0 +2.44.0 From aab439d9ca04f9e56b1573fb6fe666acd6ecc0fa Mon Sep 17 00:00:00 2001 From: Kate Hsuan @@ -390,7 +390,7 @@ Patchset: cameras 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/platform/x86/intel/int3472/tps68470.c b/drivers/platform/x86/intel/int3472/tps68470.c -index e3e1696e7f0ee..423dc555093f7 100644 +index e3e1696e7f0e..423dc555093f 100644 --- a/drivers/platform/x86/intel/int3472/tps68470.c +++ b/drivers/platform/x86/intel/int3472/tps68470.c @@ -17,7 +17,7 @@ @@ -413,7 +413,7 @@ index e3e1696e7f0ee..423dc555093f7 100644 for (i = 0; i < board_data->n_gpiod_lookups; i++) gpiod_add_lookup_table(board_data->tps68470_gpio_lookup_tables[i]); -- -2.43.0 +2.44.0 From 110530f6b622a9f4ae2308d684d7624be69218f9 Mon Sep 17 00:00:00 2001 From: Kate Hsuan @@ -433,7 +433,7 @@ Patchset: cameras 1 file changed, 5 insertions(+) diff --git a/include/linux/mfd/tps68470.h b/include/linux/mfd/tps68470.h -index 7807fa329db00..2d2abb25b944f 100644 +index 7807fa329db0..2d2abb25b944 100644 --- a/include/linux/mfd/tps68470.h +++ b/include/linux/mfd/tps68470.h @@ -34,6 +34,7 @@ @@ -454,7 +454,7 @@ index 7807fa329db00..2d2abb25b944f 100644 + #endif /* __LINUX_MFD_TPS68470_H */ -- -2.43.0 +2.44.0 From 9353e9a63ccf0ffca8a097c4ebee7674f8a67d11 Mon Sep 17 00:00:00 2001 From: Kate Hsuan @@ -479,7 +479,7 @@ Patchset: cameras create mode 100644 drivers/leds/leds-tps68470.c diff --git a/drivers/leds/Kconfig b/drivers/leds/Kconfig -index b92208eccdea9..312c0c21cc5ef 100644 +index b92208eccdea..312c0c21cc5e 100644 --- a/drivers/leds/Kconfig +++ b/drivers/leds/Kconfig @@ -873,6 +873,18 @@ config LEDS_TPS6105X @@ -502,7 +502,7 @@ index b92208eccdea9..312c0c21cc5ef 100644 tristate "LED support for SGI Octane machines" depends on LEDS_CLASS diff --git a/drivers/leds/Makefile b/drivers/leds/Makefile -index d7348e8bc019a..10caea4e7c614 100644 +index d7348e8bc019..10caea4e7c61 100644 --- a/drivers/leds/Makefile +++ b/drivers/leds/Makefile @@ -84,6 +84,7 @@ obj-$(CONFIG_LEDS_TCA6507) += leds-tca6507.o @@ -515,7 +515,7 @@ index d7348e8bc019a..10caea4e7c614 100644 obj-$(CONFIG_LEDS_WM8350) += leds-wm8350.o diff --git a/drivers/leds/leds-tps68470.c b/drivers/leds/leds-tps68470.c new file mode 100644 -index 0000000000000..35aeb5db89c8f +index 000000000000..35aeb5db89c8 --- /dev/null +++ b/drivers/leds/leds-tps68470.c @@ -0,0 +1,185 @@ @@ -705,5 +705,5 @@ index 0000000000000..35aeb5db89c8f +MODULE_DESCRIPTION("LED driver for TPS68470 PMIC"); +MODULE_LICENSE("GPL v2"); -- -2.43.0 +2.44.0 diff --git a/patches/6.6/0013-amd-gpio.patch b/patches/6.6/0013-amd-gpio.patch index 5a9e1eef0..c39dabf09 100644 --- a/patches/6.6/0013-amd-gpio.patch +++ b/patches/6.6/0013-amd-gpio.patch @@ -21,7 +21,7 @@ Patchset: amd-gpio 1 file changed, 17 insertions(+) diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c -index c55c0ef47a187..f29740cf89ff6 100644 +index c55c0ef47a18..f29740cf89ff 100644 --- a/arch/x86/kernel/acpi/boot.c +++ b/arch/x86/kernel/acpi/boot.c @@ -22,6 +22,7 @@ @@ -63,7 +63,7 @@ index c55c0ef47a187..f29740cf89ff6 100644 mp_config_acpi_legacy_irqs(); -- -2.43.0 +2.44.0 From 82d8be77dbf1f5df125c796b7fdc8c60f2139eb8 Mon Sep 17 00:00:00 2001 From: Maximilian Luz @@ -80,7 +80,7 @@ Patchset: amd-gpio 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c -index f29740cf89ff6..247d2a8bcdf4b 100644 +index f29740cf89ff..247d2a8bcdf4 100644 --- a/arch/x86/kernel/acpi/boot.c +++ b/arch/x86/kernel/acpi/boot.c @@ -1258,12 +1258,19 @@ static void __init mp_config_acpi_legacy_irqs(void) @@ -105,5 +105,5 @@ index f29740cf89ff6..247d2a8bcdf4b 100644 }; -- -2.43.0 +2.44.0 diff --git a/patches/6.6/0014-rtc.patch b/patches/6.6/0014-rtc.patch index 7d6c49d0d..8ec003598 100644 --- a/patches/6.6/0014-rtc.patch +++ b/patches/6.6/0014-rtc.patch @@ -21,7 +21,7 @@ Patchset: rtc 1 file changed, 24 insertions(+), 12 deletions(-) diff --git a/drivers/acpi/acpi_tad.c b/drivers/acpi/acpi_tad.c -index 33c3b16af556b..900445d06623d 100644 +index 33c3b16af556..900445d06623 100644 --- a/drivers/acpi/acpi_tad.c +++ b/drivers/acpi/acpi_tad.c @@ -432,6 +432,14 @@ static ssize_t caps_show(struct device *dev, struct device_attribute *attr, @@ -106,5 +106,5 @@ index 33c3b16af556b..900445d06623d 100644 ret = sysfs_create_group(&dev->kobj, &acpi_tad_dc_attr_group); if (ret) -- -2.43.0 +2.44.0