From: rogerq@ti.com (Roger Quadros) Date: Thu, 11 Aug 2011 16:37:19 -0500 Subject: [RFC PATCH 6/6] hwmon: OMAP4: On die temperature sensor driver In-Reply-To: <20110811185558.GC15970@legolas.emea.dhcp.ti.com> References: <1312979122-5896-1-git-send-email-j-keerthy@ti.com> <1312979122-5896-7-git-send-email-j-keerthy@ti.com> <20110810124629.GJ12882@legolas.emea.dhcp.ti.com> <20110811103658.GG27742@legolas.emea.dhcp.ti.com> <20110811141248.GK28500@legolas.emea.dhcp.ti.com> <20110811185408.GB15970@legolas.emea.dhcp.ti.com> <20110811185558.GC15970@legolas.emea.dhcp.ti.com> Message-ID: <4E444B8F.9060908@ti.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On 08/11/2011 01:55 PM, Felipe Balbi wrote: > Hi, > > On Thu, Aug 11, 2011 at 09:54:09PM +0300, Felipe Balbi wrote: >>>> you need some other way to handle this. Why do you need to manually set >>>> the rate rather than having hwmod handle this for you ? >>>> >>>> your argument that "it's a one time setting" is not enough to have this >>>> in the driver. Drivers should not care about clocks anymore, this should >>>> have been done on another layer. >>> >>> Hwmod will have no idea on the rate required. >> >> does the rate need to change ? Also, I have not mentioned hwmod anytime > > i did mention hwmod, nevermind that part. Still I'm not sure where is > the right place to handle this. > Aren't the omap_device_pm_latency callbacks the right place to do it? e.g. in the following snippet from mach-omap2/temp_sensor_device.c +static struct omap_device_pm_latency omap_temp_sensor_latency[] = { + { + .deactivate_func = omap_device_idle_hwmods, + .activate_func = omap_device_enable_hwmods, + .flags = OMAP_DEVICE_LATENCY_AUTO_ADJUST, + } +}; instead of directly pointing activate_func to omap_device_enable_hwmods, it could point to a function that sets the required clock rate and then enables the hwmod. regards, -roger