From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wr1-f52.google.com (mail-wr1-f52.google.com [209.85.221.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id EE0C938B991 for ; Wed, 7 Jan 2026 15:42:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.52 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767800556; cv=none; b=UflPzj7Y7EjFFbpzvE4wjYgf5/8SF9IETwUJ+pkfRjYI25ASeIjMwMZ6EnwbC8Ai2FjVFfHjVIoVZxcl6nVyL02FiTGFL700oIgRmwQDn9QfFPjUFPiVCZk8WC+9yEhsFHZPRfw/nh5ndLzaPby/8L75PJkxzxUBB4LpjNf+BrQ= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767800556; c=relaxed/simple; bh=x9Hcb0Q3w9zJfuuLZgWxqP+CMVd6u+ZGPiyTAvfaIl8=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=r6tKo+okJC2w+v/NZYakTaI+n1NUboTtuqBP0RoN3yqf52uoGqvSPlHZIPXqqCl1z+k9c3/rr830M81URnoL8JhS12XmyLdtjG3rgoUiPjvThFRFzbb7B0THXLy5v2/3mfHbG5tX941c74SLCJ0K/lUBMsQhtda6zGD6xL1GBSA= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=CTHYxA8M; arc=none smtp.client-ip=209.85.221.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="CTHYxA8M" Received: by mail-wr1-f52.google.com with SMTP id ffacd0b85a97d-42e2e77f519so1414393f8f.2 for ; Wed, 07 Jan 2026 07:42:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1767800553; x=1768405353; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=VU/Yg5TAYVvtXfFxHaN/ydqPCL5J5MgG0h7mnX2Sing=; b=CTHYxA8M1XKD6CqCGRiZng4bwdzW6ZVWEPQqHeTgPwhnlYL0pGp6ING+J3K3XMSYHK bdSKFlmbczvcmCXDDaVqzNzdwVmXc914IYGHAvTbhyY5a4Iky73vb/sOGz57/7mFJlu4 /OrOPPb6yQ3UJpcEU3GrrcwKUMR/vVdSP8rdB8G5z7rYWvDrCCoDBmmMqfM/FAxm09Fj jN7zdgx3d5QnC9cOzJkJQ5RXc1MTa2oHDbzTSfQ3P/qBcoaIBz+qlCvbb5a+eqmwYD26 sSeuaA7m6sqpNTVgMtBrHRMPnEyxCcZTxQJjhHGLNWLe0seson+ZJZF2I/EPrvjNGqZO 8mSQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1767800553; x=1768405353; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=VU/Yg5TAYVvtXfFxHaN/ydqPCL5J5MgG0h7mnX2Sing=; b=KtWF8NvsPTwSLptgrL/xIi60q/kKOIyazNEDFogAf3IZ4aZWtixFeVuOcwLZHcCeSe MQrHlCOXzBME3b5lfzyx26IbMm4lxXrEAB21wLqXRCT54nXzvMhOQDAHdZbcmBHCSRAA q9zR3VEdQEx4Ilakkg7DOnztqERQ5ydqUB+e2bC32PbL0MQEkUJYGGYieU96oZXPtKKT 522V//W1lZo+FNEu2SnQLPkGvCrGW75qdtlvQ+1KULlNGzmRJlcFZu6v+QiFpyAhAvzC THZ3EvlSl5cicOfGisbgigenAB6dTnY80n/6E79pD/uTAW9rysFz3s2nIdz2hjRCf0RD b6mg== X-Forwarded-Encrypted: i=1; AJvYcCX0jKh3EeKg82p3lLHstdeSiwnjK8nCJ02U2+iVDgeoAmUEx1khOhSE0OwKxncC9kIzupCZQfON3of9N+0=@vger.kernel.org X-Gm-Message-State: AOJu0YyvBY5XcwFoGY+N7KJAAK4skyAQ2sins80jHoHqKafzfybLGIMx Xr6/84MNaMEel6TCX5WPzlABPX8j0L9KnOSLbR5z5IzDxJA0TQwP4OQ/ X-Gm-Gg: AY/fxX5psvdHottaWPRdhI+PN4RNlM7fVX6ydWpgQ5WQuGpm6LbV7MurWEj84g6L3hN eb3PCXNXuZ1Za+d7pahPhElXMirEoBp5gvda+T/mlarxfMsZ83DMRBA+1443w+lRtWbOZU71C/W SgBedhcbyk9eIvrYiiQdqsfdoQVy4MIzV6gWp/b+OMCthqRetUH+I0kUl4rbovFRt8YnQVcxqih Al5MLG9e/OFaS+1Zx89prWCGEjMqmRZo4FqoVzPfbqiKAg//c1Qd8Em+k5D8l2OAAouUwOpDIVQ x4R5iJenRXZJlRtXSMhTkGcMSBNzfb30XMR2EqbUBkn1dkNunSab428tK5FI2UWWEqkOObTSEMw LtbqNSas3zC6jB+fRSIaFrCBj86buKY2gAC4I2Ky6o8JgX0iyWXkje/bumgIWzl0MGnU5K/OsW9 112YGoXv5B5Zo0HxY/fGEfC7f40/aX3Bm8eCYgLJU= X-Google-Smtp-Source: AGHT+IGNw/PN8GgWUXM0bOrKRqopXBAaWOKCxwLh4cnYpAU9VEZZ5PH53ncCUkfhOrRCsKUd4TTmWg== X-Received: by 2002:a05:6000:2384:b0:42b:4185:e58a with SMTP id ffacd0b85a97d-432c37758c0mr3571565f8f.14.1767800553135; Wed, 07 Jan 2026 07:42:33 -0800 (PST) Received: from ionutnechita-arz2022.local ([2a02:2f0e:ca09:7000:33fc:5cce:3767:6b22]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-432bd5ee243sm10897704f8f.31.2026.01.07.07.42.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 Jan 2026 07:42:31 -0800 (PST) From: "Ionut Nechita (Sunlight Linux)" To: benato.denis96@gmail.com, jikos@kernel.org, bentiss@kernel.org Cc: ionut_n2001@yahoo.com, linux-input@vger.kernel.org, linux-kernel@vger.kernel.org, sunlightlinux@gmail.com, superm1@kernel.org Subject: [PATCH v5 0/4] HID: asus: Add Fn+F5 fan control key support for ROG laptops Date: Wed, 7 Jan 2026 17:42:16 +0200 Message-ID: <20260107154219.164514-2-sunlightlinux@gmail.com> X-Mailer: git-send-email 2.52.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Ionut Nechita This series adds support for the Fn+F5 fan control key on Asus ROG laptops and addresses spurious HID vendor codes that cause kernel log spam on these devices. The series introduces: 1. Code cleanup by replacing a magic number with an existing constant 2. Filtering of spurious HID vendor usage codes on ROG laptops 3. Infrastructure for HID-to-WMI communication 4. Fn+F5 fan control key handler with userspace fallback support The Fn+F5 key handler attempts to forward events to asus-wmi when available. If asus-wmi is unavailable or fails, the event is passed to userspace via evdev, allowing userspace fan control implementations. Tested on Asus ROG series laptops. Changes in v5: - Removed IS_REACHABLE(CONFIG_ASUS_WMI) guards from patch 3 as asus_wmi_evaluate_method() already returns -ENODEV when asus-wmi is not available, and the warning is helpful for users (Mario's feedback) - Updated commit message for patch 3 to reflect the removal of conditional compilation guards Changes in v4: - Added Reviewed-by tag from Mario Limonciello (AMD) to all patches Changes in v3: - Added IS_REACHABLE(CONFIG_ASUS_WMI) conditional compilation guards to prevent build failures when asus-wmi is not compiled (patch 3) - Modified Fn+F5 handler to pass events to userspace when asus-wmi is unavailable or fails, enabling userspace fan control (patch 4) - Updated comments and commit message to reflect that spurious codes affect all ROG laptops, not just G14/G15, and occur during normal operation, not just on keypresses (patch 2) - Simplified commit message for WMI infrastructure patch (patch 3) - Added Reviewed-by tag from Denis Benato - Removed Change-Id tags Changes in v2: - Split the original patch into a logical series of 4 patches - Improved code organization and commit messages Ionut Nechita (4): HID: asus: Replace magic number with HID_UP_ASUSVENDOR constant HID: asus: Filter spurious HID vendor codes on ROG laptops HID: asus: Add WMI communication infrastructure HID: asus: Implement Fn+F5 fan control key handler drivers/hid/hid-asus.c | 73 +++++++++++++++++++++- include/linux/platform_data/x86/asus-wmi.h | 1 + 2 files changed, 73 insertions(+), 1 deletion(-) -- 2.52.0