RE: [PATCHv4 04/15] Thermal: Add platform level information to thermal.h

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 五, 2012-09-21 at 02:07 -0600, R, Durgadoss wrote:
> Hi Rui,
> 
> > -----Original Message-----
> > From: Zhang, Rui
> > Sent: Friday, September 21, 2012 12:43 PM
> > To: R, Durgadoss
> > Cc: lenb@xxxxxxxxxx; linux-acpi@xxxxxxxxxxxxxxx; eduardo.valentin@xxxxxx
> > Subject: Re: [PATCHv4 04/15] Thermal: Add platform level information to
> > thermal.h
> > 
> > On 二, 2012-09-18 at 11:04 +0530, Durgadoss R wrote:
> > > This patch adds platform level information to thermal.h
> > > by introducing two structures to hold:
> > >  * bind parameters for a thermal zone,
> > >  * zone level platform parameters
> > >
> > > Signed-off-by: Durgadoss R <durgadoss.r@xxxxxxxxx>
> > > ---
> > >  include/linux/thermal.h |   29 +++++++++++++++++++++++++++++
> > >  1 file changed, 29 insertions(+)
> > >
> > > diff --git a/include/linux/thermal.h b/include/linux/thermal.h
> > > index 32af124..4caa32e 100644
> > > --- a/include/linux/thermal.h
> > > +++ b/include/linux/thermal.h
> > > @@ -157,6 +157,7 @@ struct thermal_zone_device {
> > >  	int passive;
> > >  	unsigned int forced_passive;
> > >  	const struct thermal_zone_device_ops *ops;
> > > +	const struct thermal_zone_params *tzp;
> > >  	struct list_head thermal_instances;
> > >  	struct idr idr;
> > >  	struct mutex lock; /* protect thermal_instances list */
> > > @@ -164,6 +165,34 @@ struct thermal_zone_device {
> > >  	struct delayed_work poll_queue;
> > >  };
> > >
> > > +/* Structure that holds binding parameters for a zone */
> > > +struct thermal_bind_params {
> > > +	struct thermal_cooling_device *cdev;
> > > +
> > > +	/*
> > > +	 * This is a measure of 'how effectively these devices can
> > > +	 * cool 'this' thermal zone. The shall be determined by platform
> > > +	 * characterization. This is on a 'percentage' scale.
> > > +	 * See Documentation/thermal/sysfs-api.txt for more information.
> > > +	 */
> > > +	int weight;
> > > +
> > > +	/*
> > > +	 * This is a bit mask that gives the binding relation between this
> > > +	 * thermal zone and cdev, for a particular trip point.
> > > +	 * See Documentation/thermal/sysfs-api.txt for more information.
> > > +	 */
> > > +	int trip_mask;
> > > +	int (*match) (struct thermal_zone_device *tz,
> > > +			struct thermal_cooling_device *cdev);
> > > +};
> > 
> > we do not have field to describe the upper and lower limit?
> 
> Looks like I missed it here :-(
> But, IMO, we need an array of 'upper' and 'lower' limits here .. correct ?

either is ok.
if we are using two integers, we need different bind params for trip
points that have different upper and lower limit.
we can still use one bind params to describe multiple trip points if
they do not have any upper and lower limit.

> Let me know how you would want to address it ?
> a separate patch or fix here ?
> 
we can have an incremental patch for it.

thanks,
rui

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux