[PATCH v3 0/3] hwmon: Add ASUS ROG Ryujin III support
From: Arie Miller
Date: Wed Aug 12 2026 - 06:41:22 EST
Add hardware monitoring support for ASUS ROG Ryujin III coolers.
Compared with the Ryujin II, the Ryujin III uses different offsets in
its status reports and a different cooler-duty channel. It also does not
expose the Ryujin II's external fan-controller channels. The first patch
moves those details into per-device configuration and rejects HID devices
without that configuration before it is dereferenced. The second patch
adds the Extreme and EVA Edition variants. The third patch, authored by
Will Smith, adds the White Edition USB ID. Will confirmed his authorship
sign-off and tested that variant on his hardware.
The Ryujin III implementation and White Edition were tested through the
linked project pull requests. The EVA Edition hardware was tested by me.
Codex using gpt-5.6-sol assisted with porting the changes to the current
hwmon tree, organizing the patch series, updating documentation and
commit messages, and running build, checkpatch, Sparse, and Sphinx
validation. I reviewed and tested the resulting changes on ROG Ryujin
III EVA Edition hardware.
The v3 series passes git diff --check and checkpatch --strict. Its final
tree is identical to v2, for which the driver object compiled in-tree
with W=1 in both built-in and module configurations, and Sparse reported
no findings for either configuration. The range-diff confirms that
patches 2 and 3 are unchanged and that patch 4 was folded into patch 1.
Changes in v3:
- Fold the missing driver_data check from patch 4 into patch 1, as
requested by Guenter Roeck.
- No source changes from v2.
v2: https://lore.kernel.org/r/20260811233943.319729-1-renari@xxxxxxxxxx
v1: https://lore.kernel.org/r/20260807000107.1786892-1-renari@xxxxxxxxxx
Arie Miller (2):
hwmon: (asus_rog_ryujin) Add per-device configuration
hwmon: (asus_rog_ryujin) Add ROG Ryujin III support
Will Smith (1):
hwmon: (asus_rog_ryujin) Add ROG Ryujin III White Edition
Documentation/hwmon/asus_rog_ryujin.rst | 25 ++++---
drivers/hwmon/Kconfig | 4 +-
drivers/hwmon/asus_rog_ryujin.c | 96 ++++++++++++++++++-------
3 files changed, 87 insertions(+), 38 deletions(-)
Range-diff against v2:
1: 686fd2251bea ! 1: 35b53d4b4085 hwmon: (asus_rog_ryujin) Add per-device configuration
@@ Commit message
a different report layout or do not include the external fan
controller, while preserving the existing Ryujin II 360 behavior.
+ Handles an issue reported by Sashiko where an id could
+ be missing driver_data.
+
+ Link: https://lore.kernel.org/r/5a817284-a9f4-48b2-9f0f-802c5dc6963c@xxxxxxxxxxxx
Assisted-by: Codex:gpt-5.6-sol sparse
Signed-off-by: Arie Miller <renari@xxxxxxxxxx>
@@ drivers/hwmon/asus_rog_ryujin.c: static int rog_ryujin_raw_event(struct hid_devi
if (!completion_done(&priv->cooler_status_received))
complete_all(&priv->cooler_status_received);
@@ drivers/hwmon/asus_rog_ryujin.c: static int rog_ryujin_probe(struct hid_device *hdev, const struct hid_device_id
+ struct rog_ryujin_data *priv;
+ int ret;
+
++ if (!id->driver_data)
++ return -EINVAL;
++
+ priv = devm_kzalloc(&hdev->dev, sizeof(*priv), GFP_KERNEL);
+ if (!priv)
return -ENOMEM;
priv->hdev = hdev;
2: 68d87330a2f7 = 2: ce2e2c681daf hwmon: (asus_rog_ryujin) Add ROG Ryujin III support
3: c3d95809f962 = 3: 2dca57c91535 hwmon: (asus_rog_ryujin) Add ROG Ryujin III White Edition
4: e9558b907537 < -: ------------ hwmon: (asus_rog_ryujin) Handle missing driver data
base-commit: 54743b5ab981d686b885c3da639d4ed6cc995e8b
--
2.55.0