Messages in this thread | | | Subject | Re: [PATCH] thermal: of: look for sensor driver parent node if device node missing | From | Lucas Stach <> | Date | Mon, 14 Jul 2014 14:04:55 +0200 |
| |
Am Montag, den 14.07.2014, 16:42 +0530 schrieb Laxman Dewangan: > There are some mfd devices which supports junction thermal interrupt > like ams,AS3722. The DT binding of these devices are defined as the > flat and drivers for sub module of such devices are registered as > the mfd_add_devices. In this method, the sub devices registered as > platform driver and these do not have the of_node pointer on their > device structure. In this case, use the parent of_node pointer to > get the required of_node pointer. > > Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> > --- > drivers/thermal/of-thermal.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/thermal/of-thermal.c b/drivers/thermal/of-thermal.c > index 04b1be7..85a7d71 100644 > --- a/drivers/thermal/of-thermal.c > +++ b/drivers/thermal/of-thermal.c > @@ -396,6 +396,8 @@ thermal_zone_of_sensor_register(struct device *dev, int sensor_id, > return ERR_PTR(-EINVAL); > > sensor_np = dev->of_node; > + if (!sensor_np && dev->parent) > + sensor_np = dev->parent->of_node; > > for_each_child_of_node(np, child) { > struct of_phandle_args sensor_specs;
This seems like the wrong way around. If the MFD has subdev information stored in the parent node it should be the MFD drivers responsibility to populate the subdev of_node with its own node. The subdev should not be forced to make such possible unsafe assumptions.
Regards, Lucas -- Pengutronix e.K. | Lucas Stach | Industrial Linux Solutions | http://www.pengutronix.de/ |
| |