[PATCH V5 4/7] cpufreq: add clk-reg cpufreq driver

Richard Zhao richard.zhao at linaro.org
Wed Dec 28 07:05:20 EST 2011


On Wed, Dec 28, 2011 at 11:42:37AM +0000, Mark Brown wrote:
> On Wed, Dec 28, 2011 at 11:31:29AM +0800, Richard Zhao wrote:
> > On Wed, Dec 28, 2011 at 11:14:10AM +0800, Richard Zhao wrote:
> 
> > > > +		if (cpu_reg) {
> > > > +			ret = regulator_is_supported_voltage(cpu_reg,
> > > > +					cpu_volts[i * 2], cpu_volts[i * 2 + 1]);
> 
> > > Is there any reason you didn't export symbol regulator_is_supported_voltage?
> > > and also it don't have !REGULATOR dummy implementation.
> 
> > regulator_set_voltage_time and some other functions don't have dummy one
> > either.
> 
> You can't usefully work with voltages without knowing what the actual
> voltages are - the only sensible stubs we could provide would return
> errors but then any driver using the stubs would probably fail to do
> whatever it was doing.  With enable and disable we can sensibly stub
> things out with an always on regulator.
Sorry, I can not get your point here. Let me describe the problem I met:
 - regulator_is_supported_voltage is not exported. when I build clk-reg-cpufreq
   as kernel module, there's a link error.
 - I saw linux/regulator/consumer.h has some dummy functions if !REGULATOR. I
   tried to make clk-reg-cpufreq driver work even !REGULATOR. I think that's
   why the dummy functions are there. If regulator_get return NULL, it'll avoid
   calling other regulator functions. But regulator_is_supported_voltage and
   regulator_set_voltage_time don't have such dummy ones. Undefined functions.

Thanks
Richard



More information about the linux-arm-kernel mailing list