Question on platform_driver probe in backlight driver

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

 



Hi,

I own a Sahara Touch-iT Slate PC for wich I received from the manufacturer a 
the source to a kernel module for setting the backlight intensity. This 
source is meant to be compiled to a module and works quite fine with kernel 
2.6.16.

I wanted to see if I can adapt a current linux kernel source to include this 
module. So I fetched the current source (first 2.6.18, later 2.6.19-rc1) and 
took a look at the other sources in drivers/video/backlight especially the 
corgi_bl.c.

I modified the orignal source I received to as closly match the corgi_bl.c.

Now I got one problem/thing I don't understand.

The original source called in its module init function 
backlight_device_register.

The corgi_bl.c doesn't do that. Instead its init function calls 
platform_driver_register passing it a platform_driver struct. This in turn 
references a probe function which does the backlight_device_register.

So I did the same in my source, and it does not work as I would expect. The 
init function is called and I see the printk output in syslog. But the probe 
function is never called, no printk output in syslog and also the files 
in /sys/class/backlight never appear.

Now I wonder, what am I missing. What must be done, so that the probe function 
is called?

You can find a patch which can be applied to either the 2.6.18 or the 
2.6.19-rc1 kernel source together the config file and a list of steps I use 
to build the kernel on http://claudio.ch/p/6.html. The URL of the patch 
itself is http://claudio.ch/p/kb3886.patch

claudio
-- 
Claudio Nieder, Kanalweg 1, CH-8610 Uster, Tel +41 79 357 6743
yahoo messenger: claudionieder aim: claudionieder icq:42315212
mailto:private@xxxxxxxxxx                http://www.claudio.ch

Attachment: pgpjd4Wax6k8W.pgp
Description: PGP signature


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux