Thread (6 messages) 6 messages, 2 authors, 2011-05-24

Problem registering the Platform ADC driver

From: Joachim Holst <hidden>
Date: 2011-05-24 09:57:35

On Tue, May 24, 2011 at 1:42 PM, Joachim Holst [off-list ref]
wrote:
quoted
Thanks Jocke, for your reply. As you said in your example of
board-msm7x30.c file which uses platform_add_devices, my board file
board-icnova_adb4000.c uses platform_device_register for the registration
of
all peripherals initialized under function __init ek_board_init(void). I
found that platform_add_device or platform_register_device can be used for
device registration.
You are quite correct. I previously failed to read your code as good as I
should have :-( Sorry about that.
Here is board-icnova_adb4000.c http://pastebin.com/dr0QzsyQ
<http://pastebin.com/dr0QzsyQ%20>Linux#390. The functions called under
ek_board_init are defined under
http://lxr.linux.no/#linux+v2.6.38/arch/arm/mach-at91/at91sam9g45_devices.c.
All of them uses platform_device_register. In my case also it should work.

Still I am not sure why it is not working, any further thoughts or
suggestions?
First, are you sure that platform_device_register actually succeeds?

The times this has happened to me, it has always been a problem with the
"name" between the platform device and the platform driver.

To avoid those problems, I usually use a #define for the name. That way,
I'm sure that a spelling problem (which can be _really_ hard to spot)  is
not the problem. Also, I usually don't care about setting the .id and the
.num_resources variables.

Otherwise, as far as I can tell, your code should work.

BRs,
/Jocke!


-- 
If it can't be fixed with duct-tape, it's definitely borken...
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help