Hi Jean-Philippe

Thanks for the response.

> For platform bus, you can match by id or by name :
> for example in the board code you have  :
> 
> static struct platform_device davinci_nand_device = {
>> lines removed.... >>
>
> And in the driver code :
> 
> static struct platform_driver nand_davinci_driver = {
>> linesremoved.... >>
> 
> the device and driver name must match if you want the
> platform_match function to work.

I have found this code and the observed behaviour I have is that it is doing
a match by name for the TI DM365 EVM board I am using.  If I have the old
NAND chip (MT29F16G08FAA) plugged in then I can see platform_match going
through the list and it finds the davinci_nand driver.  If I plug my new
NAND chip (MT29F8G08ABABA) in then I can see the same platform_match
occurring but this time it does not find the driver so no match occurs.
 
I know this particular chip is supported on this EVM as I have managed to
get it working correctly with uBoot but it obviously initialises and defines
things differently to the kernel.  So what I do not understand or know is
what decides which drivers should be loaded?  Something must be doing a
check based on the fact that I have enabled the driver in the board config
but it is not  available for the platform_match to succeed.  

When I looked at the execution of the code I can see the following functions
being called: platform_driver_probe, platform_driver_register,
platform_match (repeated looking through list of driver names),
platform_driver_unregister.  It does not appear that the actual matching for
NAND IDs is occurring as that section of the driver code does not appear to
be executed so I think I am missing something that is executed earlier to
detect the hardware.

I would appreciate any pointers.

Regards
Sean

--
Sean Preston
Email: se...@pfk.co.za

_______________________________________________
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to