On 12/07/2022 09:30, Li-hao Kuo wrote: > Add thermal driver for Sunplus. > > Signed-off-by: Li-hao Kuo <lhjeff911@xxxxxxxxx> Thank you for your patch. There is something to discuss/improve. _data); > + ret = sunplus_get_otp_temp_coef(sp_data, &pdev->dev); > + if (ret) > + return ret; > + > + sp_data->pcb_tz = devm_thermal_zone_of_sensor_register(&pdev->dev, > + 0, > + sp_data, &sp_of_thermal_ops); > + > + if (IS_ERR(sp_data->pcb_tz)) { > + ret = PTR_ERR(sp_data->pcb_tz); > + dev_err(dev, "Failed to register tsensor: %d\n", ret); > + return ret; > + } > + > + return ret; > +} > + > +static int sunplus_thermal_remove(struct platform_device *pdev) > +{ > + struct sp_thermal_data *sp_data = platform_get_drvdata(pdev); > + > + thermal_zone_of_sensor_unregister(&pdev->dev, sp_data->pcb_tz); You used devm to register, so this looks wrong and will lead to double free. Best regards, Krzysztof