Commit 46637478 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'platform-drivers-x86-v6.16-2' of...

Merge tag 'platform-drivers-x86-v6.16-2' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86

Pull x86 platform driver fixes from Ilpo Järvinen:

 - amd/hsmp: Timeout handling fixes

 - amd/pmc:
     - Clear metrics table at start of cycle
     - Add PCSpecialist Lafite Pro V 14M to 8042 quirks list

 - amd/pmf: Fix error handling corner cases (nth attempt)

 - alienware-wmi-wmax: Revert G-Mode support as it lowers performance

 - dell_rbu:
     - Fix sparse lock context warning
     - Fix list head usage
     - Don't overwrite data buffer past the size of the last packet

 - ideapad-laptop: Ensure EC is not polled too frequently

 - intel-uncore-freq:
     - Fail module load when plat_info is NULL
     - Avoid a non-literal format string as it triggers a compiler warning

 - intel/pmc: Add Lunar Lake and Panther Lake support to SSRAM Telemetry

 - intel/power-domains: Fix error code in tpmi_init()

 - samsung-galaxybook: Add support for Notebook 9 Pro and others
   (SAM0426)

* tag 'platform-drivers-x86-v6.16-2' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86:
  Revert "platform/x86: alienware-wmi-wmax: Add G-Mode support to Alienware m16 R1"
  platform/x86/amd/pmc: Add PCSpecialist Lafite Pro V 14M to 8042 quirks list
  platform/x86/intel-uncore-freq: avoid non-literal format string
  platform/x86/intel/pmc: Add Panther Lake support to Intel PMC SSRAM Telemetry
  platform/x86/intel/pmc: Add Lunar Lake support to Intel PMC SSRAM Telemetry
  MAINTAINERS: .mailmap: Update Hans de Goede's email address
  platform/x86: dell_rbu: Bump version
  platform/x86: dell_rbu: Stop overwriting data buffer
  platform/x86: dell_rbu: Fix list usage
  platform/x86: dell_rbu: Fix lock context warning
  platform/x86/amd: pmf: Simplify error flow in amd_pmf_init_smart_pc()
  platform/x86/amd: pmf: Prevent amd_pmf_tee_deinit() from running twice
  platform/x86/amd: pmf: Use device managed allocations
  x86/platform/amd: replace down_timeout() with down_interruptible()
  x86/platform/amd: move final timeout check to after final sleep
  platform/x86/amd: pmc: Clear metrics table at start of cycle
  platform/x86/intel: power-domains: Fix error code in tpmi_init()
  platform/x86: samsung-galaxybook: Add SAM0426
  platform/x86/intel-uncore-freq: Fail module load when plat_info is NULL
  platform/x86: ideapad-laptop: use usleep_range() for EC polling
parents 9afe6529 e2468dc7
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -282,6 +282,7 @@ Gustavo Padovan <gustavo@las.ic.unicamp.br>
Gustavo Padovan <padovan@profusion.mobi>
Hamza Mahfooz <hamzamahfooz@linux.microsoft.com> <hamza.mahfooz@amd.com>
Hanjun Guo <guohanjun@huawei.com> <hanjun.guo@linaro.org>
Hans de Goede <hansg@kernel.org> <hdegoede@redhat.com>
Hans Verkuil <hverkuil@xs4all.nl> <hansverk@cisco.com>
Hans Verkuil <hverkuil@xs4all.nl> <hverkuil-cisco@xs4all.nl>
Harry Yoo <harry.yoo@oracle.com> <42.hyeyoo@gmail.com>
+36 −36
Original line number Diff line number Diff line
@@ -207,7 +207,7 @@ X: arch/*/include/uapi/
X:	include/uapi/
ABIT UGURU 1,2 HARDWARE MONITOR DRIVER
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	linux-hwmon@vger.kernel.org
S:	Maintained
F:	drivers/hwmon/abituguru.c
@@ -371,7 +371,7 @@ S: Maintained
F:	drivers/platform/x86/quickstart.c
ACPI SERIAL MULTI INSTANTIATE DRIVER
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	platform-driver-x86@vger.kernel.org
S:	Maintained
F:	drivers/platform/x86/serial-multi-instantiate.c
@@ -3551,7 +3551,7 @@ F: arch/arm64/boot/Makefile
F:	scripts/make_fit.py
ARM64 PLATFORM DRIVERS
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
M:	Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
R:	Bryan O'Donoghue <bryan.odonoghue@linaro.org>
L:	platform-driver-x86@vger.kernel.org
@@ -3712,7 +3712,7 @@ F: drivers/platform/x86/asus*.c
F:	drivers/platform/x86/eeepc*.c
ASUS TF103C DOCK DRIVER
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	platform-driver-x86@vger.kernel.org
S:	Maintained
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git
@@ -5614,14 +5614,14 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/peter.chen/usb.git
F:	drivers/usb/chipidea/
CHIPONE ICN8318 I2C TOUCHSCREEN DRIVER
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	linux-input@vger.kernel.org
S:	Maintained
F:	Documentation/devicetree/bindings/input/touchscreen/chipone,icn8318.yaml
F:	drivers/input/touchscreen/chipone_icn8318.c
CHIPONE ICN8505 I2C TOUCHSCREEN DRIVER
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	linux-input@vger.kernel.org
S:	Maintained
F:	drivers/input/touchscreen/chipone_icn8505.c
@@ -6919,7 +6919,7 @@ F: include/dt-bindings/pmu/exynos_ppmu.h
F:	include/linux/devfreq-event.h
DEVICE RESOURCE MANAGEMENT HELPERS
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
R:	Matti Vaittinen <mazziesaccount@gmail.com>
S:	Maintained
F:	include/linux/devm-helpers.h
@@ -7518,7 +7518,7 @@ F: drivers/gpu/drm/gud/
F:	include/drm/gud.h
DRM DRIVER FOR GRAIN MEDIA GM12U320 PROJECTORS
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
S:	Maintained
T:	git https://gitlab.freedesktop.org/drm/misc/kernel.git
F:	drivers/gpu/drm/tiny/gm12u320.c
@@ -7918,7 +7918,7 @@ F: drivers/gpu/drm/ci/xfails/vkms*
F:	drivers/gpu/drm/vkms/
DRM DRIVER FOR VIRTUALBOX VIRTUAL GPU
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	dri-devel@lists.freedesktop.org
S:	Maintained
T:	git https://gitlab.freedesktop.org/drm/misc/kernel.git
@@ -8319,7 +8319,7 @@ F: drivers/gpu/drm/panel/
F:	include/drm/drm_panel.h
DRM PRIVACY-SCREEN CLASS
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	dri-devel@lists.freedesktop.org
S:	Maintained
T:	git https://gitlab.freedesktop.org/drm/misc/kernel.git
@@ -10223,7 +10223,7 @@ S: Maintained
F:	Documentation/devicetree/bindings/connector/gocontroll,moduline-module-slot.yaml
GOODIX TOUCHSCREEN
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	linux-input@vger.kernel.org
S:	Maintained
F:	drivers/input/touchscreen/goodix*
@@ -10262,7 +10262,7 @@ F: include/dt-bindings/clock/google,gs101.h
K:	[gG]oogle.?[tT]ensor
GPD POCKET FAN DRIVER
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	platform-driver-x86@vger.kernel.org
S:	Maintained
F:	drivers/platform/x86/gpd-pocket-fan.c
@@ -11423,7 +11423,7 @@ F: drivers/i2c/busses/i2c-via.c
F:	drivers/i2c/busses/i2c-viapro.c
I2C/SMBUS INTEL CHT WHISKEY COVE PMIC DRIVER
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	linux-i2c@vger.kernel.org
S:	Maintained
F:	drivers/i2c/busses/i2c-cht-wc.c
@@ -12013,13 +12013,13 @@ S: Supported
F:	sound/soc/intel/
INTEL ATOMISP2 DUMMY / POWER-MANAGEMENT DRIVER
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	platform-driver-x86@vger.kernel.org
S:	Maintained
F:	drivers/platform/x86/intel/atomisp2/pm.c
INTEL ATOMISP2 LED DRIVER
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	platform-driver-x86@vger.kernel.org
S:	Maintained
F:	drivers/platform/x86/intel/atomisp2/led.c
@@ -13680,7 +13680,7 @@ S: Maintained
F:	drivers/platform/x86/lenovo-wmi-hotkey-utilities.c
LETSKETCH HID TABLET DRIVER
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	linux-input@vger.kernel.org
S:	Maintained
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid.git
@@ -13730,7 +13730,7 @@ F: drivers/ata/sata_gemini.c
F:	drivers/ata/sata_gemini.h
LIBATA SATA AHCI PLATFORM devices support
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	linux-ide@vger.kernel.org
S:	Maintained
F:	drivers/ata/ahci_platform.c
@@ -14100,7 +14100,7 @@ F: Documentation/admin-guide/ldm.rst
F:	block/partitions/ldm.*
LOGITECH HID GAMING KEYBOARDS
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	linux-input@vger.kernel.org
S:	Maintained
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid.git
@@ -14782,7 +14782,7 @@ F: Documentation/devicetree/bindings/power/supply/maxim,max17040.yaml
F:	drivers/power/supply/max17040_battery.c
MAXIM MAX17042 FAMILY FUEL GAUGE DRIVERS
R:	Hans de Goede <hdegoede@redhat.com>
R:	Hans de Goede <hansg@kernel.org>
R:	Krzysztof Kozlowski <krzk@kernel.org>
R:	Marek Szyprowski <m.szyprowski@samsung.com>
R:	Sebastian Krzyszkowiak <sebastian.krzyszkowiak@puri.sm>
@@ -15584,7 +15584,7 @@ Q: https://patchwork.kernel.org/project/netdevbpf/list/
F:	drivers/net/ethernet/mellanox/mlxfw/
MELLANOX HARDWARE PLATFORM SUPPORT
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
M:	Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
M:	Vadim Pasternak <vadimp@nvidia.com>
L:	platform-driver-x86@vger.kernel.org
@@ -16541,7 +16541,7 @@ S: Maintained
F:	drivers/platform/surface/surface_gpe.c
MICROSOFT SURFACE HARDWARE PLATFORM SUPPORT
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
M:	Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
M:	Maximilian Luz <luzmaximilian@gmail.com>
L:	platform-driver-x86@vger.kernel.org
@@ -17709,7 +17709,7 @@ F: tools/include/nolibc/
F:	tools/testing/selftests/nolibc/
NOVATEK NVT-TS I2C TOUCHSCREEN DRIVER
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	linux-input@vger.kernel.org
S:	Maintained
F:	Documentation/devicetree/bindings/input/touchscreen/novatek,nvt-ts.yaml
@@ -22711,7 +22711,7 @@ K: fu[57]40
K:	[^@]sifive
SILEAD TOUCHSCREEN DRIVER
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	linux-input@vger.kernel.org
L:	platform-driver-x86@vger.kernel.org
S:	Maintained
@@ -22744,7 +22744,7 @@ F: Documentation/devicetree/bindings/i3c/silvaco,i3c-master.yaml
F:	drivers/i3c/master/svc-i3c-master.c
SIMPLEFB FB DRIVER
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	linux-fbdev@vger.kernel.org
S:	Maintained
F:	Documentation/devicetree/bindings/display/simple-framebuffer.yaml
@@ -22873,7 +22873,7 @@ F: Documentation/hwmon/emc2103.rst
F:	drivers/hwmon/emc2103.c
SMSC SCH5627 HARDWARE MONITOR DRIVER
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	linux-hwmon@vger.kernel.org
S:	Supported
F:	Documentation/hwmon/sch5627.rst
@@ -23528,7 +23528,7 @@ S: Supported
F:	Documentation/process/stable-kernel-rules.rst
STAGING - ATOMISP DRIVER
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
M:	Mauro Carvalho Chehab <mchehab@kernel.org>
R:	Sakari Ailus <sakari.ailus@linux.intel.com>
L:	linux-media@vger.kernel.org
@@ -23824,7 +23824,7 @@ F: arch/m68k/sun3*/
F:	drivers/net/ethernet/i825xx/sun3*
SUN4I LOW RES ADC ATTACHED TABLET KEYS DRIVER
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	linux-input@vger.kernel.org
S:	Maintained
F:	Documentation/devicetree/bindings/input/allwinner,sun4i-a10-lradc-keys.yaml
@@ -25592,7 +25592,7 @@ F: Documentation/hid/hiddev.rst
F:	drivers/hid/usbhid/
USB INTEL XHCI ROLE MUX DRIVER
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	linux-usb@vger.kernel.org
S:	Maintained
F:	drivers/usb/roles/intel-xhci-usb-role-switch.c
@@ -25783,7 +25783,7 @@ F: Documentation/firmware-guide/acpi/intel-pmc-mux.rst
F:	drivers/usb/typec/mux/intel_pmc_mux.c
USB TYPEC PI3USB30532 MUX DRIVER
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	linux-usb@vger.kernel.org
S:	Maintained
F:	drivers/usb/typec/mux/pi3usb30532.c
@@ -25812,7 +25812,7 @@ F: drivers/usb/host/uhci*
USB VIDEO CLASS
M:	Laurent Pinchart <laurent.pinchart@ideasonboard.com>
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	linux-media@vger.kernel.org
S:	Maintained
W:	http://www.ideasonboard.org/uvc/
@@ -26343,7 +26343,7 @@ F: include/uapi/linux/virtio_snd.h
F:	sound/virtio/*
VIRTUAL BOX GUEST DEVICE DRIVER
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
M:	Arnd Bergmann <arnd@arndb.de>
M:	Greg Kroah-Hartman <gregkh@linuxfoundation.org>
S:	Maintained
@@ -26352,7 +26352,7 @@ F: include/linux/vbox_utils.h
F:	include/uapi/linux/vbox*.h
VIRTUAL BOX SHARED FOLDER VFS DRIVER
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	linux-fsdevel@vger.kernel.org
S:	Maintained
F:	fs/vboxsf/*
@@ -26606,7 +26606,7 @@ F: drivers/mmc/host/wbsd.*
WACOM PROTOCOL 4 SERIAL TABLETS
M:	Julian Squires <julian@cipht.net>
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	linux-input@vger.kernel.org
S:	Maintained
F:	drivers/input/tablet/wacom_serial4.c
@@ -26773,7 +26773,7 @@ F: include/linux/wwan.h
F:	include/uapi/linux/wwan.h
X-POWERS AXP288 PMIC DRIVERS
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
S:	Maintained
F:	drivers/acpi/pmic/intel_pmic_xpower.c
N:	axp288
@@ -26865,14 +26865,14 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86/mm
F:	arch/x86/mm/
X86 PLATFORM ANDROID TABLETS DSDT FIXUP DRIVER
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
L:	platform-driver-x86@vger.kernel.org
S:	Maintained
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git
F:	drivers/platform/x86/x86-android-tablets/
X86 PLATFORM DRIVERS
M:	Hans de Goede <hdegoede@redhat.com>
M:	Hans de Goede <hansg@kernel.org>
M:	Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
L:	platform-driver-x86@vger.kernel.org
S:	Maintained
+6 −8
Original line number Diff line number Diff line
@@ -97,7 +97,7 @@ static int __hsmp_send_message(struct hsmp_socket *sock, struct hsmp_message *ms
	short_sleep = jiffies + msecs_to_jiffies(HSMP_SHORT_SLEEP);
	timeout	= jiffies + msecs_to_jiffies(HSMP_MSG_TIMEOUT);

	while (time_before(jiffies, timeout)) {
	while (true) {
		ret = sock->amd_hsmp_rdwr(sock, mbinfo->msg_resp_off, &mbox_status, HSMP_RD);
		if (ret) {
			dev_err(sock->dev, "Error %d reading mailbox status\n", ret);
@@ -106,6 +106,10 @@ static int __hsmp_send_message(struct hsmp_socket *sock, struct hsmp_message *ms

		if (mbox_status != HSMP_STATUS_NOT_READY)
			break;

		if (!time_before(jiffies, timeout))
			break;

		if (time_before(jiffies, short_sleep))
			usleep_range(50, 100);
		else
@@ -210,13 +214,7 @@ int hsmp_send_message(struct hsmp_message *msg)
		return -ENODEV;
	sock = &hsmp_pdev.sock[msg->sock_ind];

	/*
	 * The time taken by smu operation to complete is between
	 * 10us to 1ms. Sometime it may take more time.
	 * In SMP system timeout of 100 millisecs should
	 * be enough for the previous thread to finish the operation
	 */
	ret = down_timeout(&sock->hsmp_sem, msecs_to_jiffies(HSMP_MSG_TIMEOUT));
	ret = down_interruptible(&sock->hsmp_sem);
	if (ret < 0)
		return ret;

+9 −0
Original line number Diff line number Diff line
@@ -225,6 +225,15 @@ static const struct dmi_system_id fwbug_list[] = {
			DMI_MATCH(DMI_BOARD_NAME, "WUJIE14-GX4HRXL"),
		}
	},
	/* https://bugzilla.kernel.org/show_bug.cgi?id=220116 */
	{
		.ident = "PCSpecialist Lafite Pro V 14M",
		.driver_data = &quirk_spurious_8042,
		.matches = {
			DMI_MATCH(DMI_SYS_VENDOR, "PCSpecialist"),
			DMI_MATCH(DMI_PRODUCT_NAME, "Lafite Pro V 14M"),
		}
	},
	{}
};

+2 −0
Original line number Diff line number Diff line
@@ -157,6 +157,8 @@ static int amd_pmc_setup_smu_logging(struct amd_pmc_dev *dev)
			return -ENOMEM;
	}

	memset_io(dev->smu_virt_addr, 0, sizeof(struct smu_metrics));

	/* Start the logging */
	amd_pmc_send_cmd(dev, 0, NULL, SMU_MSG_LOG_RESET, false);
	amd_pmc_send_cmd(dev, 0, NULL, SMU_MSG_LOG_START, false);
Loading