platform_device and driver misunderstanding

Hello all!

I`m doing my embedded project with bf537 (on BF537-STAMP), with kernel 2.6.28.7.
Through digging over several drivers, LDD3 and other stuff, I realized that I`m totally confused.
The issue is that I`m writing network(ethernet) driver, using spi(existing spidev or over) driver. By now I have a driver, that is capable to create ethx interface and fill in information(all of these is fully described in LDD3). But what I can`t find, is the way, how I can use ANOTHER, existing spi driver. Probe() function gets struct platform_device, which(as i know) i fill in a special file, there rosources, devices and other staff is allocated and registerd, etc... So, if i have to get an access to spi(spi resources), i have to declare them, make a master....so to write a nes spi driver. But i want to use existing.
Also, looking at similar driver(bfin_mac) i found something useful, but still it creates MII master, it doesn`t take it from "somewhere in the kernel".

I understand, that what i wrote may be wrong, but that is what I found using a set of drivers from different versions of the kernel.

Could someone explain the mechanism driver ONE may use loaded in the kernel driver TWO?

Thank you very much!!

Webcast
How to Build an Optimal Hadoop Cluster to Store and Maintain Unlimited Amounts of Data Using Microservers

Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.

Learn More

Sponsored by AMD

White Paper
Red Hat White Paper: Using an Open Source Framework to Catch the Bad Guy

Built-in forensics, incident response, and security with Red Hat Enterprise Linux 6

Every security policy provides guidance and requirements for ensuring adequate protection of information and data, as well as high-level technical and administrative security requirements for a system in a given environment. Traditionally, providing security for a system focuses on the confidentiality of the information on it. However, protecting the data integrity and system and data availability is just as important. For example, when processing United States intelligence information, there are three attributes that require protection: confidentiality, integrity, and availability.

Learn more about catching the bad guy in this free white paper.

Learn More

Sponsored by DLT Solutions