linux-next: manual merge of the thermal-soc tree with Linus' tree

From: Mark Brown
Date: Mon Oct 30 2017 - 12:42:43 EST


Hi Eduardo,

Today's linux-next merge of the thermal-soc tree got a conflict in:

drivers/thermal/hisi_thermal.c

between commit:

3fe156f1dd9909 ("thermal: hisilicon: constify thermal_zone_of_device_ops structures")

from Linus' tree and various commits from the thermal-soc tree.

I fixed it up (see below) and can carry the fix as necessary. This
is now fixed as far as linux-next is concerned, but any non trivial
conflicts should be mentioned to your upstream maintainer when your tree
is submitted for merging. You may also want to consider cooperating
with the maintainer of the conflicting tree to minimise any particularly
complex conflicts.

diff --cc drivers/thermal/hisi_thermal.c
index bd3572c41585,6a4e866a3596..000000000000
--- a/drivers/thermal/hisi_thermal.c
+++ b/drivers/thermal/hisi_thermal.c
@@@ -206,20 -403,50 +403,50 @@@ static int hi6220_thermal_probe(struct
return 0;
}

- static const struct thermal_zone_of_device_ops hisi_of_thermal_ops = {
- .get_temp = hisi_thermal_get_temp,
- };
+ static int hi3660_thermal_probe(struct hisi_thermal_data *data)
+ {
+ struct platform_device *pdev = data->pdev;
+ struct device *dev = &pdev->dev;
+ struct resource *res;
+
+ data->get_temp = hi3660_thermal_get_temp;
+ data->enable_sensor = hi3660_thermal_enable_sensor;
+ data->disable_sensor = hi3660_thermal_disable_sensor;
+ data->irq_handler = hi3660_thermal_irq_handler;
+
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
+ data->regs = devm_ioremap_resource(dev, res);
+ if (IS_ERR(data->regs)) {
+ dev_err(dev, "failed to get io address\n");
+ return PTR_ERR(data->regs);
+ }

- static irqreturn_t hisi_thermal_alarm_irq(int irq, void *dev)
+ data->irq = platform_get_irq(pdev, 0);
+ if (data->irq < 0)
+ return data->irq;
+
+ data->sensor.id = HI3660_DEFAULT_SENSOR;
+
+ return 0;
+ }
+
+ static int hisi_thermal_get_temp(void *__data, int *temp)
{
- struct hisi_thermal_data *data = dev;
+ struct hisi_thermal_data *data = __data;
+ struct hisi_thermal_sensor *sensor = &data->sensor;

- disable_irq_nosync(irq);
- data->irq_enabled = false;
+ *temp = data->get_temp(data);

- return IRQ_WAKE_THREAD;
+ dev_dbg(&data->pdev->dev, "id=%d, temp=%d, thres=%d\n",
+ sensor->id, *temp, sensor->thres_temp);
+
+ return 0;
}

-static struct thermal_zone_of_device_ops hisi_of_thermal_ops = {
++static const struct thermal_zone_of_device_ops hisi_of_thermal_ops = {
+ .get_temp = hisi_thermal_get_temp,
+ };
+
static irqreturn_t hisi_thermal_alarm_irq_thread(int irq, void *dev)
{
struct hisi_thermal_data *data = dev;

Attachment: signature.asc
Description: PGP signature