Hi Arnd, Thanks for the quick reply. Le Friday 28 March 2014 à 19:02 +0100, Arnd Bergmann a écrit : > On Friday 28 March 2014, Jean Delvare wrote: > > > The current situation is kind of odd, because CPU_FREQ_CBE_PMI (bool) > > depends on CPU_FREQ_CBE (tristate) so it is possible to have > > CPU_FREQ_CBE=m and CPU_FREQ_CBE_PMI=y. If ppc_cbe_cpufreq_pmi really > > depends on ppc_cbe_cpufreq, then that will fail, as ppc_cbe_cpufreq as > > a module may not be loaded when ppc_cbe_cpufreq_pmi is initialized. The > > compiler would complain about missing symbols. So I suspect this > > dependency doesn't actually exist, otherwise after one year someone > > would have noticed the build breakage, right? > > I believe CPU_FREQ_CBE can be built with support for CPU_FREQ_CBE_PMI > or without, but if the PMI code is a module, then CPU_FREQ_CBE > cannot be 'y'. > > > As a conclusion I believe the following changes should be applied: > > * CPU_FREQ_CBE_PMI should be changed to a tristate. > > * CPU_FREQ_CBE_PMI should not depend on CPU_FREQ_CBE. > > > > I can write and submit the patches once it is confirmed that this > > changes are the right way to fix the problem. > > If you do this, you should also add > > depends on CPU_FREQ_CBE_PMI || !CPU_FREQ_CBE_PMI > > to the CPU_FREQ_CBE option, to correctly handle the dependency. Ah, my bad, I thought both modules were more or less independent, I didn't realize ppc_cbe_cpufreq_pmi was actually a helper "module" for ppc_cbe_cpufreq when enabled. Thinking about it some more, I think this would be much more simple to build ppc_cbe_cpufreq_pmi.c as an object that would part of ppc_cbe_cpufreq.ko. That is, build everything as a single module in the end. That would solve the cross-dependency issue, and the code in ppc_cbe_cpufreq_pmi would no longer have to be built-in. But well, I don't really have the time to look into this, especially as I don't even have a powerpc machine at hand to test the changes. So if nobody cares, things will have to stay the way they are. > I don't actually see a problem with the current code, other than > that CPU_FREQ_CBE_PMI could in theory be a module. This code is > used only for an IBM machine that has been end-of-service for > a couple of years. If anyone still wants to build kernels for > it, they probably want it built-in anyway, and not have > the same kernel run on other machines. Thanks for pointing this out. I don't know much about powerpc hardware so I didn't realize that. We indeed ended up disabling this driver altogether in our default ppc kernel config. Which was the easiest way to solve our problem after all :-) -- Jean Delvare SUSE L3 Support -- To unsubscribe from this list: send the line "unsubscribe cpufreq" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html