Commit e28d0c9c authored by Eduardo Valentin's avatar Eduardo Valentin
Browse files

input: convert sun4i-ts to use devm_thermal_zone_of_sensor_register



This changes the driver to use the devm_ version
of thermal_zone_of_sensor_register and cleans
up the  local points and unregister calls.

Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: Maxime Ripard <maxime.ripard@free-electrons.com>
Cc: Chen-Yu Tsai <wens@csie.org>
Cc: Hans de Goede <hdegoede@redhat.com>
Cc: Zhang Rui <rui.zhang@intel.com>
Cc: Lukasz Majewski <l.majewski@samsung.com>
Cc: Heiko Stuebner <heiko@sntech.de>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Jens Thiele <karme@karme.de>
Cc: linux-input@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
Acked-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
Acked-by: default avatarHans de Goede <hdegoede@redhat.com>
Signed-off-by: default avatarEduardo Valentin <edubezval@gmail.com>
parent d7817ff2
Loading
Loading
Loading
Loading
+1 −8
Original line number Diff line number Diff line
@@ -115,7 +115,6 @@
struct sun4i_ts_data {
	struct device *dev;
	struct input_dev *input;
	struct thermal_zone_device *tz;
	void __iomem *base;
	unsigned int irq;
	bool ignore_fifo_data;
@@ -366,10 +365,7 @@ static int sun4i_ts_probe(struct platform_device *pdev)
	if (IS_ERR(hwmon))
		return PTR_ERR(hwmon);

	ts->tz = thermal_zone_of_sensor_register(ts->dev, 0, ts,
						 &sun4i_ts_tz_ops);
	if (IS_ERR(ts->tz))
		ts->tz = NULL;
	devm_thermal_zone_of_sensor_register(ts->dev, 0, ts, &sun4i_ts_tz_ops);

	writel(TEMP_IRQ_EN(1), ts->base + TP_INT_FIFOC);

@@ -377,7 +373,6 @@ static int sun4i_ts_probe(struct platform_device *pdev)
		error = input_register_device(ts->input);
		if (error) {
			writel(0, ts->base + TP_INT_FIFOC);
			thermal_zone_of_sensor_unregister(ts->dev, ts->tz);
			return error;
		}
	}
@@ -394,8 +389,6 @@ static int sun4i_ts_remove(struct platform_device *pdev)
	if (ts->input)
		input_unregister_device(ts->input);

	thermal_zone_of_sensor_unregister(ts->dev, ts->tz);

	/* Deactivate all IRQs */
	writel(0, ts->base + TP_INT_FIFOC);