hc
2024-02-20 102a0743326a03cd1a1202ceda21e175b7d3575c
kernel/drivers/iio/light/hid-sensor-als.c
....@@ -1,20 +1,7 @@
1
+// SPDX-License-Identifier: GPL-2.0-only
12 /*
23 * HID Sensors Driver
34 * Copyright (c) 2012, Intel Corporation.
4
- *
5
- * This program is free software; you can redistribute it and/or modify it
6
- * under the terms and conditions of the GNU General Public License,
7
- * version 2, as published by the Free Software Foundation.
8
- *
9
- * This program is distributed in the hope it will be useful, but WITHOUT
10
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12
- * more details.
13
- *
14
- * You should have received a copy of the GNU General Public License along with
15
- * this program; if not, write to the Free Software Foundation, Inc.,
16
- * 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
17
- *
185 */
196 #include <linux/device.h>
207 #include <linux/platform_device.h>
....@@ -27,8 +14,6 @@
2714 #include <linux/iio/iio.h>
2815 #include <linux/iio/sysfs.h>
2916 #include <linux/iio/buffer.h>
30
-#include <linux/iio/trigger_consumer.h>
31
-#include <linux/iio/triggered_buffer.h>
3217 #include "../common/hid-sensors/hid-sensor-trigger.h"
3318
3419 enum {
....@@ -316,23 +301,17 @@
316301
317302 indio_dev->num_channels =
318303 ARRAY_SIZE(als_channels);
319
- indio_dev->dev.parent = &pdev->dev;
320304 indio_dev->info = &als_info;
321305 indio_dev->name = name;
322306 indio_dev->modes = INDIO_DIRECT_MODE;
323307
324
- ret = iio_triggered_buffer_setup(indio_dev, &iio_pollfunc_store_time,
325
- NULL, NULL);
326
- if (ret) {
327
- dev_err(&pdev->dev, "failed to initialize trigger buffer\n");
328
- goto error_free_dev_mem;
329
- }
330308 atomic_set(&als_state->common_attributes.data_ready, 0);
309
+
331310 ret = hid_sensor_setup_trigger(indio_dev, name,
332311 &als_state->common_attributes);
333312 if (ret < 0) {
334313 dev_err(&pdev->dev, "trigger setup failed\n");
335
- goto error_unreg_buffer_funcs;
314
+ goto error_free_dev_mem;
336315 }
337316
338317 ret = iio_device_register(indio_dev);
....@@ -356,9 +335,7 @@
356335 error_iio_unreg:
357336 iio_device_unregister(indio_dev);
358337 error_remove_trigger:
359
- hid_sensor_remove_trigger(&als_state->common_attributes);
360
-error_unreg_buffer_funcs:
361
- iio_triggered_buffer_cleanup(indio_dev);
338
+ hid_sensor_remove_trigger(indio_dev, &als_state->common_attributes);
362339 error_free_dev_mem:
363340 kfree(indio_dev->channels);
364341 return ret;
....@@ -373,8 +350,7 @@
373350
374351 sensor_hub_remove_callback(hsdev, HID_USAGE_SENSOR_ALS);
375352 iio_device_unregister(indio_dev);
376
- hid_sensor_remove_trigger(&als_state->common_attributes);
377
- iio_triggered_buffer_cleanup(indio_dev);
353
+ hid_sensor_remove_trigger(indio_dev, &als_state->common_attributes);
378354 kfree(indio_dev->channels);
379355
380356 return 0;