Lines Matching +full:existing +full:- +full:parts

1 // SPDX-License-Identifier: GPL-2.0+
3 * nzxt-kraken2.c - hwmon driver for NZXT Kraken X42/X52/X62/X72 coolers
9 * Copyright 2019-2021 Jonas Malaco <[email protected]>
43 if (time_after(jiffies, priv->updated + STATUS_VALIDITY * HZ)) in kraken2_read()
44 return -ENODATA; in kraken2_read()
48 *val = priv->temp_input[channel]; in kraken2_read()
51 *val = priv->fan_input[channel]; in kraken2_read()
54 return -EOPNOTSUPP; /* unreachable */ in kraken2_read()
71 return -EOPNOTSUPP; /* unreachable */ in kraken2_read_string()
101 if (size < 7 || report->id != STATUS_REPORT_ID) in kraken2_raw_event()
109 * consistently skipped for certain integer parts. in kraken2_raw_event()
115 priv->temp_input[0] = data[1] * 1000 + data[2] * 100; in kraken2_raw_event()
117 priv->fan_input[0] = get_unaligned_be16(data + 3); in kraken2_raw_event()
118 priv->fan_input[1] = get_unaligned_be16(data + 5); in kraken2_raw_event()
120 priv->updated = jiffies; in kraken2_raw_event()
131 priv = devm_kzalloc(&hdev->dev, sizeof(*priv), GFP_KERNEL); in kraken2_probe()
133 return -ENOMEM; in kraken2_probe()
135 priv->hid_dev = hdev; in kraken2_probe()
139 * Initialize ->updated to STATUS_VALIDITY seconds in the past, making in kraken2_probe()
143 priv->updated = jiffies - STATUS_VALIDITY * HZ; in kraken2_probe()
152 * Enable hidraw so existing user-space tools can continue to work. in kraken2_probe()
166 priv->hwmon_dev = hwmon_device_register_with_info(&hdev->dev, "kraken2", in kraken2_probe()
169 if (IS_ERR(priv->hwmon_dev)) { in kraken2_probe()
170 ret = PTR_ERR(priv->hwmon_dev); in kraken2_probe()
188 hwmon_device_unregister(priv->hwmon_dev); in kraken2_remove()
202 .name = "nzxt-kraken2",