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

Bug#793185: [linux-sunxi] Re: forwarding a bug: cpufreq missing in debian stable on a cuibeboard



On Thu, 2015-07-30 at 15:47 +0800, Chen-Yu Tsai wrote:
> On Sat, Jul 25, 2015 at 11:30 PM, Ian Campbell <ijc@debian.org> 
> wrote:
> > On Sat, 2015-07-25 at 22:54 +0800, Chen-Yu Tsai wrote:
> >> On Sat, Jul 25, 2015 at 10:46 PM, Leonardo Canducci
> >> <leonardo.canducci@gmail.com> wrote:
> >> > I got lost somewhere in that long thread but I saw cpufreq on
> >> cubie* works
> >> > for someone [0]. It's just a matter of loading two modules. I 
> tried
> >> myself
> >> > on my jessie install (kernel from experimental) and can confirm
> >> that:
> >> >
> >> > leo@cubetto:~$ sudo modprobe axp20x-regulator
> >> > leo@cubetto:~$ sudo modprobe cpufreq-dt
> >> > leo@cubetto:~$ ls /sys/devices/system/cpu/cpu0/cpufreq/
> >> > affected_cpus               related_cpus
> >>  scaling_governor
> >> > cpuinfo_cur_freq            scaling_available_frequencies
> >>  scaling_max_freq
> >> > cpuinfo_max_freq            scaling_available_governors   > 
>  scaling_min_freq
> >> > cpuinfo_min_freq            scaling_cur_freq
> >>  scaling_setspeed
> >> > cpuinfo_transition_latency  scaling_driver                
>  statsplatform_device_register_simple
> >> >
> >> > How do I make this change persistent?
> >>
> >> Add both module names to /etc/modules.
> >
> > Is there any way to arrange for these modules to be loaded
> > automatically without the user needing to configure it manually, 
> like        platform_device_register_simple("cpufreq-dt", -1, NULL, 0);

> > any other h/w driver?
> >
> > I'd expect at least the axp20x-regulator driver to get autoloaded 
> when
> > the relevant hardware is present. Not sure about the cpufreq-dt 
> one, * In particular, when such drivers are built as modules, they can't be
 * "hotplugged".
> > but should it not be loaded if the relevant nodes are present?
> 
> cpufreq-dt is not a node in the DT. It is added in platform code.
> See arch/arm/mach-sunxi/sunxi.c.

That is this:
        platform_device_register_simple("cpufreq-dt", -1, NULL, 0);

> AFAIK all other users of cpufreq-dt use this method. Not sure how
> you can automatically detect this... Supposedly there wouldfeatures/all/cpufreq-dt-allow-driver-to-boot-automatically.patch
 be
> an event to udev?

I would expect the register to emit something, perhaps all that is
missing is a suitable MODULE_ALIAS. Looking around there seems to be a
fair few MODULE_ALIAS("platform:foo") which appear to serve this
purpose.

...searches..., aha!:

http://lists.infradead.org/pipermail/linux-arm-kernel/2015-June/350884.html

which is in v4.2-rc1 as:

http://git.kernel.org/linus/07949bf9c63c9a80027fe8452d5fe8b9ba9b3c23

I'll see about backporting that to the 4.1 kernel in Debian until we
move to 4.2.

Ian.


Reply to: