Archive-only list for patches
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: stable@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	patches@lists.linux.dev, Vicki Pfau <vi@endrift.com>,
	Jiri Kosina <jkosina@suse.com>, Sasha Levin <sashal@kernel.org>
Subject: [PATCH 6.6 114/152] HID: hid-steam: Update list of identifiers from SDL
Date: Wed, 19 Feb 2025 09:28:47 +0100	[thread overview]
Message-ID: <20250219082554.567896070@linuxfoundation.org> (raw)
In-Reply-To: <20250219082550.014812078@linuxfoundation.org>

6.6-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Vicki Pfau <vi@endrift.com>

[ Upstream commit 4f9a5a9769cc77075e606537e15747e8b8e9c7c9 ]

SDL includes a list of settings (formerly called registers in this driver),
reports (formerly cmds), and various other identifiers that were provided by
Valve. This commit imports a significant chunk of that list as well as
replacing most of the guessed names and a handful of magic constants. It also
replaces bitmask definitions that used hex with the BIT macro.

Signed-off-by: Vicki Pfau <vi@endrift.com>
Signed-off-by: Jiri Kosina <jkosina@suse.com>
Stable-dep-of: 79504249d7e2 ("HID: hid-steam: Move hidraw input (un)registering to work")
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/hid/hid-steam.c | 286 +++++++++++++++++++++++++++++++---------
 1 file changed, 221 insertions(+), 65 deletions(-)

diff --git a/drivers/hid/hid-steam.c b/drivers/hid/hid-steam.c
index 57cb58941c9fc..991db5acf5ddb 100644
--- a/drivers/hid/hid-steam.c
+++ b/drivers/hid/hid-steam.c
@@ -71,51 +71,207 @@ static LIST_HEAD(steam_devices);
 
 /*
  * Commands that can be sent in a feature report.
- * Thanks to Valve for some valuable hints.
+ * Thanks to Valve and SDL for the names.
  */
-#define STEAM_CMD_SET_MAPPINGS		0x80
-#define STEAM_CMD_CLEAR_MAPPINGS	0x81
-#define STEAM_CMD_GET_MAPPINGS		0x82
-#define STEAM_CMD_GET_ATTRIB		0x83
-#define STEAM_CMD_GET_ATTRIB_LABEL	0x84
-#define STEAM_CMD_DEFAULT_MAPPINGS	0x85
-#define STEAM_CMD_FACTORY_RESET		0x86
-#define STEAM_CMD_WRITE_REGISTER	0x87
-#define STEAM_CMD_CLEAR_REGISTER	0x88
-#define STEAM_CMD_READ_REGISTER		0x89
-#define STEAM_CMD_GET_REGISTER_LABEL	0x8a
-#define STEAM_CMD_GET_REGISTER_MAX	0x8b
-#define STEAM_CMD_GET_REGISTER_DEFAULT	0x8c
-#define STEAM_CMD_SET_MODE		0x8d
-#define STEAM_CMD_DEFAULT_MOUSE		0x8e
-#define STEAM_CMD_FORCEFEEDBAK		0x8f
-#define STEAM_CMD_REQUEST_COMM_STATUS	0xb4
-#define STEAM_CMD_GET_SERIAL		0xae
-#define STEAM_CMD_HAPTIC_RUMBLE		0xeb
-
-/* Some useful register ids */
-#define STEAM_REG_LPAD_MODE		0x07
-#define STEAM_REG_RPAD_MODE		0x08
-#define STEAM_REG_RPAD_MARGIN		0x18
-#define STEAM_REG_LED			0x2d
-#define STEAM_REG_GYRO_MODE		0x30
-#define STEAM_REG_LPAD_CLICK_PRESSURE	0x34
-#define STEAM_REG_RPAD_CLICK_PRESSURE	0x35
-#define STEAM_REG_WATCHDOG_ENABLE		0x47
-
-/* Raw event identifiers */
-#define STEAM_EV_INPUT_DATA		0x01
-#define STEAM_EV_CONNECT		0x03
-#define STEAM_EV_BATTERY		0x04
-#define STEAM_EV_DECK_INPUT_DATA	0x09
+enum {
+	ID_SET_DIGITAL_MAPPINGS		= 0x80,
+	ID_CLEAR_DIGITAL_MAPPINGS	= 0x81,
+	ID_GET_DIGITAL_MAPPINGS		= 0x82,
+	ID_GET_ATTRIBUTES_VALUES	= 0x83,
+	ID_GET_ATTRIBUTE_LABEL		= 0x84,
+	ID_SET_DEFAULT_DIGITAL_MAPPINGS	= 0x85,
+	ID_FACTORY_RESET		= 0x86,
+	ID_SET_SETTINGS_VALUES		= 0x87,
+	ID_CLEAR_SETTINGS_VALUES	= 0x88,
+	ID_GET_SETTINGS_VALUES		= 0x89,
+	ID_GET_SETTING_LABEL		= 0x8A,
+	ID_GET_SETTINGS_MAXS		= 0x8B,
+	ID_GET_SETTINGS_DEFAULTS	= 0x8C,
+	ID_SET_CONTROLLER_MODE		= 0x8D,
+	ID_LOAD_DEFAULT_SETTINGS	= 0x8E,
+	ID_TRIGGER_HAPTIC_PULSE		= 0x8F,
+	ID_TURN_OFF_CONTROLLER		= 0x9F,
+
+	ID_GET_DEVICE_INFO		= 0xA1,
+
+	ID_CALIBRATE_TRACKPADS		= 0xA7,
+	ID_RESERVED_0			= 0xA8,
+	ID_SET_SERIAL_NUMBER		= 0xA9,
+	ID_GET_TRACKPAD_CALIBRATION	= 0xAA,
+	ID_GET_TRACKPAD_FACTORY_CALIBRATION = 0xAB,
+	ID_GET_TRACKPAD_RAW_DATA	= 0xAC,
+	ID_ENABLE_PAIRING		= 0xAD,
+	ID_GET_STRING_ATTRIBUTE		= 0xAE,
+	ID_RADIO_ERASE_RECORDS		= 0xAF,
+	ID_RADIO_WRITE_RECORD		= 0xB0,
+	ID_SET_DONGLE_SETTING		= 0xB1,
+	ID_DONGLE_DISCONNECT_DEVICE	= 0xB2,
+	ID_DONGLE_COMMIT_DEVICE		= 0xB3,
+	ID_DONGLE_GET_WIRELESS_STATE	= 0xB4,
+	ID_CALIBRATE_GYRO		= 0xB5,
+	ID_PLAY_AUDIO			= 0xB6,
+	ID_AUDIO_UPDATE_START		= 0xB7,
+	ID_AUDIO_UPDATE_DATA		= 0xB8,
+	ID_AUDIO_UPDATE_COMPLETE	= 0xB9,
+	ID_GET_CHIPID			= 0xBA,
+
+	ID_CALIBRATE_JOYSTICK		= 0xBF,
+	ID_CALIBRATE_ANALOG_TRIGGERS	= 0xC0,
+	ID_SET_AUDIO_MAPPING		= 0xC1,
+	ID_CHECK_GYRO_FW_LOAD		= 0xC2,
+	ID_CALIBRATE_ANALOG		= 0xC3,
+	ID_DONGLE_GET_CONNECTED_SLOTS	= 0xC4,
+
+	ID_RESET_IMU			= 0xCE,
+
+	ID_TRIGGER_HAPTIC_CMD		= 0xEA,
+	ID_TRIGGER_RUMBLE_CMD		= 0xEB,
+};
+
+/* Settings IDs */
+enum {
+	/* 0 */
+	SETTING_MOUSE_SENSITIVITY,
+	SETTING_MOUSE_ACCELERATION,
+	SETTING_TRACKBALL_ROTATION_ANGLE,
+	SETTING_HAPTIC_INTENSITY_UNUSED,
+	SETTING_LEFT_GAMEPAD_STICK_ENABLED,
+	SETTING_RIGHT_GAMEPAD_STICK_ENABLED,
+	SETTING_USB_DEBUG_MODE,
+	SETTING_LEFT_TRACKPAD_MODE,
+	SETTING_RIGHT_TRACKPAD_MODE,
+	SETTING_MOUSE_POINTER_ENABLED,
+
+	/* 10 */
+	SETTING_DPAD_DEADZONE,
+	SETTING_MINIMUM_MOMENTUM_VEL,
+	SETTING_MOMENTUM_DECAY_AMMOUNT,
+	SETTING_TRACKPAD_RELATIVE_MODE_TICKS_PER_PIXEL,
+	SETTING_HAPTIC_INCREMENT,
+	SETTING_DPAD_ANGLE_SIN,
+	SETTING_DPAD_ANGLE_COS,
+	SETTING_MOMENTUM_VERTICAL_DIVISOR,
+	SETTING_MOMENTUM_MAXIMUM_VELOCITY,
+	SETTING_TRACKPAD_Z_ON,
+
+	/* 20 */
+	SETTING_TRACKPAD_Z_OFF,
+	SETTING_SENSITIVY_SCALE_AMMOUNT,
+	SETTING_LEFT_TRACKPAD_SECONDARY_MODE,
+	SETTING_RIGHT_TRACKPAD_SECONDARY_MODE,
+	SETTING_SMOOTH_ABSOLUTE_MOUSE,
+	SETTING_STEAMBUTTON_POWEROFF_TIME,
+	SETTING_UNUSED_1,
+	SETTING_TRACKPAD_OUTER_RADIUS,
+	SETTING_TRACKPAD_Z_ON_LEFT,
+	SETTING_TRACKPAD_Z_OFF_LEFT,
+
+	/* 30 */
+	SETTING_TRACKPAD_OUTER_SPIN_VEL,
+	SETTING_TRACKPAD_OUTER_SPIN_RADIUS,
+	SETTING_TRACKPAD_OUTER_SPIN_HORIZONTAL_ONLY,
+	SETTING_TRACKPAD_RELATIVE_MODE_DEADZONE,
+	SETTING_TRACKPAD_RELATIVE_MODE_MAX_VEL,
+	SETTING_TRACKPAD_RELATIVE_MODE_INVERT_Y,
+	SETTING_TRACKPAD_DOUBLE_TAP_BEEP_ENABLED,
+	SETTING_TRACKPAD_DOUBLE_TAP_BEEP_PERIOD,
+	SETTING_TRACKPAD_DOUBLE_TAP_BEEP_COUNT,
+	SETTING_TRACKPAD_OUTER_RADIUS_RELEASE_ON_TRANSITION,
+
+	/* 40 */
+	SETTING_RADIAL_MODE_ANGLE,
+	SETTING_HAPTIC_INTENSITY_MOUSE_MODE,
+	SETTING_LEFT_DPAD_REQUIRES_CLICK,
+	SETTING_RIGHT_DPAD_REQUIRES_CLICK,
+	SETTING_LED_BASELINE_BRIGHTNESS,
+	SETTING_LED_USER_BRIGHTNESS,
+	SETTING_ENABLE_RAW_JOYSTICK,
+	SETTING_ENABLE_FAST_SCAN,
+	SETTING_IMU_MODE,
+	SETTING_WIRELESS_PACKET_VERSION,
+
+	/* 50 */
+	SETTING_SLEEP_INACTIVITY_TIMEOUT,
+	SETTING_TRACKPAD_NOISE_THRESHOLD,
+	SETTING_LEFT_TRACKPAD_CLICK_PRESSURE,
+	SETTING_RIGHT_TRACKPAD_CLICK_PRESSURE,
+	SETTING_LEFT_BUMPER_CLICK_PRESSURE,
+	SETTING_RIGHT_BUMPER_CLICK_PRESSURE,
+	SETTING_LEFT_GRIP_CLICK_PRESSURE,
+	SETTING_RIGHT_GRIP_CLICK_PRESSURE,
+	SETTING_LEFT_GRIP2_CLICK_PRESSURE,
+	SETTING_RIGHT_GRIP2_CLICK_PRESSURE,
+
+	/* 60 */
+	SETTING_PRESSURE_MODE,
+	SETTING_CONTROLLER_TEST_MODE,
+	SETTING_TRIGGER_MODE,
+	SETTING_TRACKPAD_Z_THRESHOLD,
+	SETTING_FRAME_RATE,
+	SETTING_TRACKPAD_FILT_CTRL,
+	SETTING_TRACKPAD_CLIP,
+	SETTING_DEBUG_OUTPUT_SELECT,
+	SETTING_TRIGGER_THRESHOLD_PERCENT,
+	SETTING_TRACKPAD_FREQUENCY_HOPPING,
+
+	/* 70 */
+	SETTING_HAPTICS_ENABLED,
+	SETTING_STEAM_WATCHDOG_ENABLE,
+	SETTING_TIMP_TOUCH_THRESHOLD_ON,
+	SETTING_TIMP_TOUCH_THRESHOLD_OFF,
+	SETTING_FREQ_HOPPING,
+	SETTING_TEST_CONTROL,
+	SETTING_HAPTIC_MASTER_GAIN_DB,
+	SETTING_THUMB_TOUCH_THRESH,
+	SETTING_DEVICE_POWER_STATUS,
+	SETTING_HAPTIC_INTENSITY,
+
+	/* 80 */
+	SETTING_STABILIZER_ENABLED,
+	SETTING_TIMP_MODE_MTE,
+};
+
+/* Input report identifiers */
+enum
+{
+	ID_CONTROLLER_STATE = 1,
+	ID_CONTROLLER_DEBUG = 2,
+	ID_CONTROLLER_WIRELESS = 3,
+	ID_CONTROLLER_STATUS = 4,
+	ID_CONTROLLER_DEBUG2 = 5,
+	ID_CONTROLLER_SECONDARY_STATE = 6,
+	ID_CONTROLLER_BLE_STATE = 7,
+	ID_CONTROLLER_DECK_STATE = 9
+};
+
+/* String attribute idenitifiers */
+enum {
+	ATTRIB_STR_BOARD_SERIAL,
+	ATTRIB_STR_UNIT_SERIAL,
+};
 
 /* Values for GYRO_MODE (bitmask) */
-#define STEAM_GYRO_MODE_OFF		0x0000
-#define STEAM_GYRO_MODE_STEERING	0x0001
-#define STEAM_GYRO_MODE_TILT		0x0002
-#define STEAM_GYRO_MODE_SEND_ORIENTATION	0x0004
-#define STEAM_GYRO_MODE_SEND_RAW_ACCEL		0x0008
-#define STEAM_GYRO_MODE_SEND_RAW_GYRO		0x0010
+enum {
+	SETTING_GYRO_MODE_OFF			= 0,
+	SETTING_GYRO_MODE_STEERING		= BIT(0),
+	SETTING_GYRO_MODE_TILT			= BIT(1),
+	SETTING_GYRO_MODE_SEND_ORIENTATION	= BIT(2),
+	SETTING_GYRO_MODE_SEND_RAW_ACCEL	= BIT(3),
+	SETTING_GYRO_MODE_SEND_RAW_GYRO		= BIT(4),
+};
+
+/* Trackpad modes */
+enum {
+	TRACKPAD_ABSOLUTE_MOUSE,
+	TRACKPAD_RELATIVE_MOUSE,
+	TRACKPAD_DPAD_FOUR_WAY_DISCRETE,
+	TRACKPAD_DPAD_FOUR_WAY_OVERLAP,
+	TRACKPAD_DPAD_EIGHT_WAY,
+	TRACKPAD_RADIAL_MODE,
+	TRACKPAD_ABSOLUTE_DPAD,
+	TRACKPAD_NONE,
+	TRACKPAD_GESTURE_KEYBOARD,
+};
 
 /* Other random constants */
 #define STEAM_SERIAL_LEN 10
@@ -226,13 +382,13 @@ static inline int steam_send_report_byte(struct steam_device *steam, u8 cmd)
 	return steam_send_report(steam, &cmd, 1);
 }
 
-static int steam_write_registers(struct steam_device *steam,
+static int steam_write_settings(struct steam_device *steam,
 		/* u8 reg, u16 val */...)
 {
 	/* Send: 0x87 len (reg valLo valHi)* */
 	u8 reg;
 	u16 val;
-	u8 cmd[64] = {STEAM_CMD_WRITE_REGISTER, 0x00};
+	u8 cmd[64] = {ID_SET_SETTINGS_VALUES, 0x00};
 	int ret;
 	va_list args;
 
@@ -268,7 +424,7 @@ static int steam_get_serial(struct steam_device *steam)
 	 * Recv: 0xae 0x15 0x01 serialnumber (10 chars)
 	 */
 	int ret = 0;
-	u8 cmd[] = {STEAM_CMD_GET_SERIAL, 0x15, 0x01};
+	u8 cmd[] = {ID_GET_STRING_ATTRIBUTE, 0x15, ATTRIB_STR_UNIT_SERIAL};
 	u8 reply[3 + STEAM_SERIAL_LEN + 1];
 
 	mutex_lock(&steam->report_mutex);
@@ -278,7 +434,7 @@ static int steam_get_serial(struct steam_device *steam)
 	ret = steam_recv_report(steam, reply, sizeof(reply));
 	if (ret < 0)
 		goto out;
-	if (reply[0] != 0xae || reply[1] != 0x15 || reply[2] != 0x01) {
+	if (reply[0] != ID_GET_STRING_ATTRIBUTE || reply[1] != 0x15 || reply[2] != ATTRIB_STR_UNIT_SERIAL) {
 		ret = -EIO;
 		goto out;
 	}
@@ -298,7 +454,7 @@ static inline int steam_request_conn_status(struct steam_device *steam)
 {
 	int ret;
 	mutex_lock(&steam->report_mutex);
-	ret = steam_send_report_byte(steam, STEAM_CMD_REQUEST_COMM_STATUS);
+	ret = steam_send_report_byte(steam, ID_DONGLE_GET_WIRELESS_STATE);
 	mutex_unlock(&steam->report_mutex);
 	return ret;
 }
@@ -308,7 +464,7 @@ static inline int steam_haptic_rumble(struct steam_device *steam,
 				u8 left_gain, u8 right_gain)
 {
 	int ret;
-	u8 report[11] = {STEAM_CMD_HAPTIC_RUMBLE, 9};
+	u8 report[11] = {ID_TRIGGER_RUMBLE_CMD, 9};
 
 	report[3] = intensity & 0xFF;
 	report[4] = intensity >> 8;
@@ -351,28 +507,28 @@ static void steam_set_lizard_mode(struct steam_device *steam, bool enable)
 	if (enable) {
 		mutex_lock(&steam->report_mutex);
 		/* enable esc, enter, cursors */
-		steam_send_report_byte(steam, STEAM_CMD_DEFAULT_MAPPINGS);
-		/* enable mouse */
-		steam_send_report_byte(steam, STEAM_CMD_DEFAULT_MOUSE);
+		steam_send_report_byte(steam, ID_SET_DEFAULT_DIGITAL_MAPPINGS);
+		/* reset settings */
+		steam_send_report_byte(steam, ID_LOAD_DEFAULT_SETTINGS);
 		mutex_unlock(&steam->report_mutex);
 	} else {
 		mutex_lock(&steam->report_mutex);
 		/* disable esc, enter, cursor */
-		steam_send_report_byte(steam, STEAM_CMD_CLEAR_MAPPINGS);
+		steam_send_report_byte(steam, ID_CLEAR_DIGITAL_MAPPINGS);
 
 		if (steam->quirks & STEAM_QUIRK_DECK) {
-			steam_write_registers(steam,
-				STEAM_REG_LPAD_MODE, 0x07, /* disable mouse */
-				STEAM_REG_RPAD_MODE, 0x07, /* disable mouse */
-				STEAM_REG_LPAD_CLICK_PRESSURE, 0xFFFF, /* disable clicky pad */
-				STEAM_REG_RPAD_CLICK_PRESSURE, 0xFFFF, /* disable clicky pad */
-				STEAM_REG_WATCHDOG_ENABLE, 0, /* disable watchdog that tests if Steam is active */
+			steam_write_settings(steam,
+				SETTING_LEFT_TRACKPAD_MODE, TRACKPAD_NONE, /* disable mouse */
+				SETTING_RIGHT_TRACKPAD_MODE, TRACKPAD_NONE, /* disable mouse */
+				SETTING_LEFT_TRACKPAD_CLICK_PRESSURE, 0xFFFF, /* disable haptic click */
+				SETTING_RIGHT_TRACKPAD_CLICK_PRESSURE, 0xFFFF, /* disable haptic click */
+				SETTING_STEAM_WATCHDOG_ENABLE, 0, /* disable watchdog that tests if Steam is active */
 				0);
 			mutex_unlock(&steam->report_mutex);
 		} else {
-			steam_write_registers(steam,
-				STEAM_REG_LPAD_MODE, 0x07, /* disable mouse */
-				STEAM_REG_RPAD_MODE, 0x07, /* disable mouse */
+			steam_write_settings(steam,
+				SETTING_LEFT_TRACKPAD_MODE, TRACKPAD_NONE, /* disable mouse */
+				SETTING_RIGHT_TRACKPAD_MODE, TRACKPAD_NONE, /* disable mouse */
 				0);
 			mutex_unlock(&steam->report_mutex);
 		}
@@ -1362,7 +1518,7 @@ static int steam_raw_event(struct hid_device *hdev,
 		return 0;
 
 	switch (data[2]) {
-	case STEAM_EV_INPUT_DATA:
+	case ID_CONTROLLER_STATE:
 		if (steam->client_opened)
 			return 0;
 		rcu_read_lock();
@@ -1371,7 +1527,7 @@ static int steam_raw_event(struct hid_device *hdev,
 			steam_do_input_event(steam, input, data);
 		rcu_read_unlock();
 		break;
-	case STEAM_EV_DECK_INPUT_DATA:
+	case ID_CONTROLLER_DECK_STATE:
 		if (steam->client_opened)
 			return 0;
 		rcu_read_lock();
@@ -1380,7 +1536,7 @@ static int steam_raw_event(struct hid_device *hdev,
 			steam_do_deck_input_event(steam, input, data);
 		rcu_read_unlock();
 		break;
-	case STEAM_EV_CONNECT:
+	case ID_CONTROLLER_WIRELESS:
 		/*
 		 * The payload of this event is a single byte:
 		 *  0x01: disconnected.
@@ -1395,7 +1551,7 @@ static int steam_raw_event(struct hid_device *hdev,
 			break;
 		}
 		break;
-	case STEAM_EV_BATTERY:
+	case ID_CONTROLLER_STATUS:
 		if (steam->quirks & STEAM_QUIRK_WIRELESS) {
 			rcu_read_lock();
 			battery = rcu_dereference(steam->battery);
-- 
2.39.5




  parent reply	other threads:[~2025-02-19  9:03 UTC|newest]

Thread overview: 166+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-19  8:26 [PATCH 6.6 000/152] 6.6.79-rc1 review Greg Kroah-Hartman
2025-02-19  8:26 ` [PATCH 6.6 001/152] nfsd: clear acl_access/acl_default after releasing them Greg Kroah-Hartman
2025-02-19  8:26 ` [PATCH 6.6 002/152] NFSD: fix hang in nfsd4_shutdown_callback Greg Kroah-Hartman
2025-02-19  8:26 ` [PATCH 6.6 003/152] pinctrl: cy8c95x0: Respect IRQ trigger settings from firmware Greg Kroah-Hartman
2025-02-19  8:26 ` [PATCH 6.6 004/152] HID: multitouch: Add NULL check in mt_input_configured Greg Kroah-Hartman
2025-02-19  8:26 ` [PATCH 6.6 005/152] HID: hid-thrustmaster: fix stack-out-of-bounds read in usb_check_int_endpoints() Greg Kroah-Hartman
2025-02-19  8:26 ` [PATCH 6.6 006/152] spi: sn-f-ospi: Fix division by zero Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 007/152] ax25: Fix refcount leak caused by setting SO_BINDTODEVICE sockopt Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 008/152] ndisc: ndisc_send_redirect() must use dev_get_by_index_rcu() Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 009/152] vrf: use RCU protection in l3mdev_l3_out() Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 010/152] vxlan: check vxlan_vnigroup_init() return value Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 011/152] LoongArch: Fix idle VS timer enqueue Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 012/152] LoongArch: csum: Fix OoB access in IP checksum code for negative lengths Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 013/152] team: better TEAM_OPTION_TYPE_STRING validation Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 014/152] arm64: cacheinfo: Avoid out-of-bounds write to cacheinfo array Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 015/152] cgroup: Remove steal time from usage_usec Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 016/152] drm/i915/selftests: avoid using uninitialized context Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 017/152] gpio: bcm-kona: Fix GPIO lock/unlock for banks above bank 0 Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 018/152] gpio: bcm-kona: Make sure GPIO bits are unlocked when requesting IRQ Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 019/152] gpio: bcm-kona: Add missing newline to dev_err format string Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 020/152] drm/amdgpu: bail out when failed to load fw in psp_init_cap_microcode() Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 021/152] xen/swiotlb: relax alignment requirements Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 022/152] x86/xen: allow larger contiguous memory regions in PV guests Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 023/152] block: cleanup and fix batch completion adding conditions Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 024/152] gpiolib: Fix crash on error in gpiochip_get_ngpios() Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 025/152] tools: fix annoying "mkdir -p ..." logs when building tools in parallel Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 026/152] RDMA/efa: Reset device on probe failure Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 027/152] fbdev: omap: use threaded IRQ for LCD DMA Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 028/152] soc/tegra: fuse: Update Tegra234 nvmem keepout list Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 029/152] media: cxd2841er: fix 64-bit division on gcc-9 Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 030/152] media: i2c: ds90ub913: Add error handling to ub913_hw_init() Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 031/152] media: i2c: ds90ub953: Add error handling for i2c reads/writes Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 032/152] media: uvcvideo: Implement dual stream quirk to fix loss of usb packets Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 033/152] media: uvcvideo: Add new quirk definition for the Sonix Technology Co. 292a camera Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 034/152] media: uvcvideo: Add Kurokesu C1 PRO camera Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 035/152] media: vidtv: Fix a null-ptr-deref in vidtv_mux_stop_thread Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 036/152] PCI/DPC: Quirk PIO log size for Intel Raptor Lake-P Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 037/152] PCI: switchtec: Add Microchip PCI100X device IDs Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 038/152] scsi: ufs: bsg: Set bsg_queue to NULL after removal Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 039/152] rtla/timerlat_hist: Abort event processing on second signal Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 040/152] rtla/timerlat_top: " Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 041/152] vfio/pci: Enable iowrite64 and ioread64 for vfio pci Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 042/152] NFS: Fix potential buffer overflowin nfs_sysfs_link_rpc_client() Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 043/152] Grab mm lock before grabbing pt lock Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 044/152] selftests: gpio: gpio-sim: Fix missing chip disablements Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 045/152] ACPI: x86: Add skip i2c clients quirk for Vexia EDU ATLA 10 tablet 5V Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 046/152] x86/mm/tlb: Only trim the mm_cpumask once a second Greg Kroah-Hartman
2025-04-10  1:13   ` Jinjiang Tu
2025-04-10  7:03     ` Greg KH
2025-04-10  7:40       ` Jinjiang Tu
2025-02-19  8:27 ` [PATCH 6.6 047/152] orangefs: fix a oob in orangefs_debug_write Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 048/152] ASoC: Intel: bytcr_rt5640: Add DMI quirk for Vexia Edu Atla 10 tablet 5V Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 049/152] batman-adv: fix panic during interface removal Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 050/152] batman-adv: Ignore neighbor throughput metrics in error case Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 051/152] batman-adv: Drop unmanaged ELP metric worker Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 052/152] drm/amdgpu: avoid buffer overflow attach in smu_sys_set_pp_table() Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 053/152] KVM: x86: Reject Hyper-Vs SEND_IPI hypercalls if local APIC isnt in-kernel Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 054/152] KVM: nSVM: Enter guest mode before initializing nested NPT MMU Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 055/152] perf/x86/intel: Ensure LBRs are disabled when a CPU is starting Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 056/152] usb: gadget: f_midi: Fixing wMaxPacketSize exceeded issue during MIDI bind retries Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 057/152] usb: dwc3: Fix timeout issue during controller enter/exit from halt state Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 058/152] usb: roles: set switch registered flag early on Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 059/152] usb: gadget: udc: renesas_usb3: Fix compiler warning Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 060/152] usb: dwc2: gadget: remove of_node reference upon udc_stop Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 061/152] USB: pci-quirks: Fix HCCPARAMS register error for LS7A EHCI Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 062/152] usb: core: fix pipe creation for get_bMaxPacketSize0 Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 063/152] USB: quirks: add USB_QUIRK_NO_LPM quirk for Teclast dist Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 064/152] USB: Add USB_QUIRK_NO_LPM quirk for sony xperia xz1 smartphone Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 065/152] usb: gadget: f_midi: fix MIDI Streaming descriptor lengths Greg Kroah-Hartman
2025-02-19  8:27 ` [PATCH 6.6 066/152] USB: hub: Ignore non-compliant devices with too many configs or interfaces Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 067/152] USB: cdc-acm: Fill in Renesas R-Car D3 USB Download mode quirk Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 068/152] usb: cdc-acm: Check control transfer buffer size before access Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 069/152] usb: cdc-acm: Fix handling of oversized fragments Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 070/152] USB: serial: option: add MeiG Smart SLM828 Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 071/152] USB: serial: option: add Telit Cinterion FN990B compositions Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 072/152] USB: serial: option: fix Telit Cinterion FN990A name Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 073/152] USB: serial: option: drop MeiG Smart defines Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 074/152] can: ctucanfd: handle skb allocation failure Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 075/152] can: c_can: fix unbalanced runtime PM disable in error path Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 076/152] can: j1939: j1939_sk_send_loop(): fix unable to send messages with data length zero Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 077/152] can: etas_es58x: fix potential NULL pointer dereference on udev->serial Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 078/152] alpha: make stack 16-byte aligned (most cases) Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 079/152] wifi: ath12k: fix handling of 6 GHz rules Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 080/152] kbuild: userprogs: fix bitsize and target detection on clang Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 081/152] efi: Avoid cold plugged memory for placing the kernel Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 082/152] cgroup: fix race between fork and cgroup.kill Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 083/152] serial: port: Assign ->iotype correctly when ->iobase is set Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 084/152] serial: port: Always update ->iotype in __uart_read_properties() Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 085/152] serial: 8250: Fix fifo underflow on flush Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 086/152] alpha: align stack for page fault and user unaligned trap handlers Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 087/152] gpiolib: acpi: Add a quirk for Acer Nitro ANV14 Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 088/152] gpio: stmpe: Check return value of stmpe_reg_read in stmpe_gpio_irq_sync_unlock Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 089/152] partitions: mac: fix handling of bogus partition table Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 090/152] regulator: qcom_smd: Add l2, l5 sub-node to mp5496 regulator Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 091/152] regmap-irq: Add missing kfree() Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 092/152] arm64: Handle .ARM.attributes section in linker scripts Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 093/152] mmc: mtk-sd: Fix register settings for hs400(es) mode Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 094/152] igc: Set buffer type for empty frames in igc_init_empty_frame Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 095/152] mlxsw: Add return value check for mlxsw_sp_port_get_stats_raw() Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 096/152] btrfs: fix hole expansion when writing at an offset beyond EOF Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 097/152] clocksource: Use pr_info() for "Checking clocksource synchronization" message Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 098/152] clocksource: Use migrate_disable() to avoid calling get_random_u32() in atomic context Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 099/152] ipv4: add RCU protection to ip4_dst_hoplimit() Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 100/152] net: treat possible_net_t net pointer as an RCU one and add read_pnet_rcu() Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 101/152] net: add dev_net_rcu() helper Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 102/152] ipv4: use RCU protection in ipv4_default_advmss() Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 103/152] ipv4: use RCU protection in rt_is_expired() Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 104/152] ipv4: use RCU protection in inet_select_addr() Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 105/152] net: ipv4: Cache pmtu for all packet paths if multipath enabled Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 106/152] ipv4: use RCU protection in __ip_rt_update_pmtu() Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 107/152] ipv4: icmp: convert to dev_net_rcu() Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 108/152] flow_dissector: use RCU protection to fetch dev_net() Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 109/152] ipv6: use RCU protection in ip6_default_advmss() Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 110/152] ipv6: icmp: convert to dev_net_rcu() Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 111/152] HID: hid-steam: Avoid overwriting smoothing parameter Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 112/152] HID: hid-steam: Disable watchdog instead of using a heartbeat Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 113/152] HID: hid-steam: Clean up locking Greg Kroah-Hartman
2025-02-19  8:28 ` Greg Kroah-Hartman [this message]
2025-02-19  8:28 ` [PATCH 6.6 115/152] HID: hid-steam: Add gamepad-only mode switched to by holding options Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 116/152] HID: hid-steam: remove pointless error message Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 117/152] HID: hid-steam: Fix cleanup in probe() Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 118/152] HID: hid-steam: Add Deck IMU support Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 119/152] HID: hid-steam: Make sure rumble work is canceled on removal Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 120/152] HID: hid-steam: Move hidraw input (un)registering to work Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 121/152] ndisc: use RCU protection in ndisc_alloc_skb() Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 122/152] neighbour: delete redundant judgment statements Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 123/152] neighbour: use RCU protection in __neigh_notify() Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 124/152] arp: use RCU protection in arp_xmit() Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 125/152] openvswitch: use RCU protection in ovs_vport_cmd_fill_info() Greg Kroah-Hartman
2025-02-19  8:28 ` [PATCH 6.6 126/152] ndisc: extend RCU protection in ndisc_send_skb() Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 127/152] ipv6: mcast: extend RCU protection in igmp6_send() Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 128/152] ipv6: mcast: add RCU protection to mld_newpack() Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 129/152] drm/tidss: Fix issue in irq handling causing irq-flood issue Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 130/152] drm/tidss: Clear the interrupt status for interrupts being disabled Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 131/152] drm/rcar-du: dsi: Fix PHY lock bit check Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 132/152] drm/v3d: Stop active perfmon if it is being destroyed Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 133/152] x86/static-call: Remove early_boot_irqs_disabled check to fix Xen PVH dom0 Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 134/152] drm/amd/display: Add null check for head_pipe in dcn201_acquire_free_pipe_for_layer Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 135/152] drm/amd/display: Pass non-null to dcn20_validate_apply_pipe_split_flags Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 136/152] netdevsim: print human readable IP address Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 137/152] selftests: rtnetlink: update netdevsim ipsec output format Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 138/152] md/raid5: recheck if reshape has finished with device_lock held Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 139/152] md/md-bitmap: factor behind write counters out from bitmap_{start/end}write() Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 140/152] md/md-bitmap: remove the last parameter for bimtap_ops->endwrite() Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 141/152] md: add a new callback pers->bitmap_sector() Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 142/152] md/raid5: implement pers->bitmap_sector() Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 143/152] md/md-bitmap: move bitmap_{start, end}write to md upper layer Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 144/152] arm64: Filter out SVE hwcaps when FEAT_SVE isnt implemented Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 145/152] mm: gup: fix infinite loop within __get_longterm_locked Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 146/152] alpha: replace hardcoded stack offsets with autogenerated ones Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 147/152] HID: hid-steam: Dont use cancel_delayed_work_sync in IRQ context Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 148/152] io_uring/kbuf: reallocate buf lists on upgrade Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 149/152] vsock: Keep the binding until socket destruction Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 150/152] vsock: Orphan socket after transport release Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 151/152] x86/i8253: Disable PIT timer 0 when not in use Greg Kroah-Hartman
2025-02-19  8:29 ` [PATCH 6.6 152/152] Revert "vfio/platform: check the bounds of read/write syscalls" Greg Kroah-Hartman
2025-02-19 12:24 ` [PATCH 6.6 000/152] 6.6.79-rc1 review Peter Schneider
2025-02-19 13:10 ` Jon Hunter
2025-02-19 18:16 ` [PATCH 6.6] " Hardik Garg
2025-02-19 22:25 ` [PATCH 6.6 000/152] " Ron Economos
2025-02-19 23:12 ` Mark Brown
2025-02-20 11:37 ` Naresh Kamboju
2025-02-20 12:15 ` Harshit Mogalapalli
2025-02-20 16:14 ` Shuah Khan
2025-02-20 16:47 ` Slade Watkins
2025-02-21 18:01 ` Florian Fainelli

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250219082554.567896070@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=jkosina@suse.com \
    --cc=patches@lists.linux.dev \
    --cc=sashal@kernel.org \
    --cc=stable@vger.kernel.org \
    --cc=vi@endrift.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox