Skip to content

Commit 3f2f689

Browse files
Wolfram Sangdlezcano
authored andcommitted
thermal/drivers/rcar_gen3_thermal: Remove R-Car H3 ES1.* handling
R-Car H3 ES1.* was only available to an internal development group and needed a lot of quirks and workarounds. These become a maintenance burden now, so our development group decided to remove upstream support and disable booting for this SoC. Public users only have ES2 onwards. Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Reviewed-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se> Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com> Link: https://lore.kernel.org/r/20230307163041.3815-7-wsa+renesas@sang-engineering.com Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
1 parent 10debf8 commit 3f2f689

1 file changed

Lines changed: 2 additions & 50 deletions

File tree

drivers/thermal/rcar_gen3_thermal.c

Lines changed: 2 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
#include <linux/of_device.h>
1515
#include <linux/platform_device.h>
1616
#include <linux/pm_runtime.h>
17-
#include <linux/sys_soc.h>
1817
#include <linux/thermal.h>
1918

2019
#include "thermal_hwmon.h"
@@ -27,7 +26,6 @@
2726
#define REG_GEN3_IRQTEMP1 0x14
2827
#define REG_GEN3_IRQTEMP2 0x18
2928
#define REG_GEN3_IRQTEMP3 0x1C
30-
#define REG_GEN3_CTSR 0x20
3129
#define REG_GEN3_THCTR 0x20
3230
#define REG_GEN3_TEMP 0x28
3331
#define REG_GEN3_THCODE1 0x50
@@ -46,14 +44,6 @@
4644
#define IRQ_TEMPD2 BIT(4)
4745
#define IRQ_TEMPD3 BIT(5)
4846

49-
/* CTSR bits */
50-
#define CTSR_PONM BIT(8)
51-
#define CTSR_AOUT BIT(7)
52-
#define CTSR_THBGR BIT(5)
53-
#define CTSR_VMEN BIT(4)
54-
#define CTSR_VMST BIT(1)
55-
#define CTSR_THSST BIT(0)
56-
5747
/* THCTR bits */
5848
#define THCTR_PONM BIT(6)
5949
#define THCTR_THSST BIT(0)
@@ -88,8 +78,6 @@ struct rcar_gen3_thermal_priv {
8878
struct rcar_gen3_thermal_tsc *tscs[TSC_MAX_NUM];
8979
struct thermal_zone_device_ops ops;
9080
unsigned int num_tscs;
91-
void (*thermal_init)(struct rcar_gen3_thermal_priv *priv,
92-
struct rcar_gen3_thermal_tsc *tsc);
9381
int ptat[3];
9482
};
9583

@@ -248,11 +236,6 @@ static irqreturn_t rcar_gen3_thermal_irq(int irq, void *data)
248236
return IRQ_HANDLED;
249237
}
250238

251-
static const struct soc_device_attribute r8a7795es1[] = {
252-
{ .soc_id = "r8a7795", .revision = "ES1.*" },
253-
{ /* sentinel */ }
254-
};
255-
256239
static bool rcar_gen3_thermal_read_fuses(struct rcar_gen3_thermal_priv *priv)
257240
{
258241
unsigned int i;
@@ -311,34 +294,6 @@ static bool rcar_gen3_thermal_read_fuses(struct rcar_gen3_thermal_priv *priv)
311294
return true;
312295
}
313296

314-
static void rcar_gen3_thermal_init_r8a7795es1(struct rcar_gen3_thermal_priv *priv,
315-
struct rcar_gen3_thermal_tsc *tsc)
316-
{
317-
rcar_gen3_thermal_write(tsc, REG_GEN3_CTSR, CTSR_THBGR);
318-
rcar_gen3_thermal_write(tsc, REG_GEN3_CTSR, 0x0);
319-
320-
usleep_range(1000, 2000);
321-
322-
rcar_gen3_thermal_write(tsc, REG_GEN3_CTSR, CTSR_PONM);
323-
324-
rcar_gen3_thermal_write(tsc, REG_GEN3_IRQCTL, 0x3F);
325-
rcar_gen3_thermal_write(tsc, REG_GEN3_IRQMSK, 0);
326-
if (priv->ops.set_trips)
327-
rcar_gen3_thermal_write(tsc, REG_GEN3_IRQEN,
328-
IRQ_TEMPD1 | IRQ_TEMP2);
329-
330-
rcar_gen3_thermal_write(tsc, REG_GEN3_CTSR,
331-
CTSR_PONM | CTSR_AOUT | CTSR_THBGR | CTSR_VMEN);
332-
333-
usleep_range(100, 200);
334-
335-
rcar_gen3_thermal_write(tsc, REG_GEN3_CTSR,
336-
CTSR_PONM | CTSR_AOUT | CTSR_THBGR | CTSR_VMEN |
337-
CTSR_VMST | CTSR_THSST);
338-
339-
usleep_range(1000, 2000);
340-
}
341-
342297
static void rcar_gen3_thermal_init(struct rcar_gen3_thermal_priv *priv,
343298
struct rcar_gen3_thermal_tsc *tsc)
344299
{
@@ -474,9 +429,6 @@ static int rcar_gen3_thermal_probe(struct platform_device *pdev)
474429
return -ENOMEM;
475430

476431
priv->ops = rcar_gen3_tz_of_ops;
477-
priv->thermal_init = rcar_gen3_thermal_init;
478-
if (soc_device_match(r8a7795es1))
479-
priv->thermal_init = rcar_gen3_thermal_init_r8a7795es1;
480432

481433
platform_set_drvdata(pdev, priv);
482434

@@ -516,7 +468,7 @@ static int rcar_gen3_thermal_probe(struct platform_device *pdev)
516468
for (i = 0; i < priv->num_tscs; i++) {
517469
struct rcar_gen3_thermal_tsc *tsc = priv->tscs[i];
518470

519-
priv->thermal_init(priv, tsc);
471+
rcar_gen3_thermal_init(priv, tsc);
520472
rcar_gen3_thermal_calc_coefs(priv, tsc, *ths_tj_1);
521473

522474
zone = devm_thermal_of_zone_register(dev, i, tsc, &priv->ops);
@@ -563,7 +515,7 @@ static int __maybe_unused rcar_gen3_thermal_resume(struct device *dev)
563515
for (i = 0; i < priv->num_tscs; i++) {
564516
struct rcar_gen3_thermal_tsc *tsc = priv->tscs[i];
565517

566-
priv->thermal_init(priv, tsc);
518+
rcar_gen3_thermal_init(priv, tsc);
567519
}
568520

569521
return 0;

0 commit comments

Comments
 (0)