Thread (1 message) 1 message, 1 author, 2013-02-20

Re: [RFC PATCH 7/9] thermal: tegra30: add tegra30 thermal driver

From: Wei Ni <hidden>
Date: 2013-02-20 12:29:50
Also in: linux-arm-kernel, linux-devicetree, linux-pm

Possibly related (same subject, not in this thread)

On 02/20/2013 07:56 AM, Russell King - ARM Linux wrote:
On Mon, Feb 18, 2013 at 07:30:29PM +0800, Wei Ni wrote:
quoted
+static struct tegra_thermal_data * __devinit thermal_tegra_dt_parse_pdata(
__dev* no longer exists.
Ok, I will change it.
quoted
+	tdata = devm_kzalloc(&pdev->dev, sizeof(*tdata), GFP_KERNEL);
+	if (!tdata) {
+		dev_err(&pdev->dev, "Can't allocate platform data\n");
+		return NULL;
+	}
+	memset(tdata, 0, sizeof(*tdata));
Useless memset.  k*z*alloc already zeros the memory before returning.
Yes, I forgot to remove this line.
quoted
+static int tegra30_thermal_probe(struct platform_device *pdev)
+{
+	struct tegra_thermal_data *pdata = pdev->dev.platform_data;
You read pdata here....
quoted
+	struct thermal_zone *tz;
+	struct thermal_sensor *ts;
+	static struct thermal_cooling_device *cdev;
+	int ret;
+
+	pdata = thermal_tegra_dt_parse_pdata(pdev);
and immediately overwrite it here.
quoted
+	if (!pdata) {
+		dev_err(&pdev->dev, "Get platform data failed.\n");
+		return -EINVAL;
+	}
+
+	/* Create a thermal zone */
+	tz = create_thermal_zone("tz_tegra", NULL);
+	if (!tz) {
+		dev_err(&pdev->dev, "Create thermal_zone failed.\n");
+		return -EINVAL;
+	}
+
+	pdata->tz = tz;
This isn't how you deal with driver data.  Set driver data against a
platform device using platform_set_drvdata(pdev, tz).
Yes, I didn't consider it carefully.
As Stephen said, our tegra will only support DT, so I will remove the
platform date.

Thanks.
Wei.
quoted
+static int tegra30_thermal_remove(struct platform_device *pdev)
+{
+	struct tegra_thermal_data *pdata = pdev->dev.platform_data;
and use platform_get_drvdata() here - and don't use pdata->tz.
	struct struct thermal_zone *tz = platform_get_drvdata(pdev);
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help