Thanks, John.
I Iooked at kernel/drivers/iio/dac/ad/5064.c
There's the following struct which is passed to *spi_register_driver()*:
static struct spi_driver ad5064_spi_driver = {
.driver = {
.name = "ad5064",
.owner = THIS_MODULE,
},
.probe = ad5064_spi_probe,
.remove = ad5064_spi_remove,
.id_table = ad5064_spi_ids,
};
I compiled the module and loaded it but the probe function never gets
called. Why?
Am Montag, 28. Juli 2014 18:09:34 UTC+2 schrieb john3909:
>
>
> From: Nils <[email protected] <javascript:>>
> Reply-To: "[email protected] <javascript:>" <
> [email protected] <javascript:>>
> Date: Monday, July 28, 2014 at 7:00 AM
> To: "[email protected] <javascript:>" <[email protected]
> <javascript:>>
> Subject: [beagleboard] Using SPI in a kernel module
>
> Hello,
>
> I'm currently working on a kernel module which needs to communicate via
> SPI to an external microchip.
>
> I used the cape manager to enable SPI. The device is accessible through
> /dev/spidev1.0.
> But since it's a kernel module, I guess it's not recommended to access
> files via sys_open()?
>
> Another approach I found would be adding a struct to
> *arch/arm/mach-omap2/board-am335xevm.c
> *and then use *spi_register_driver()* in my kernel module. But in my
> kernel sources (3.8.13) this file doesn't exist.
>
> There is no board files since the introduction of device tree.
>
>
>
> What would be the right way to use SPI in my kernel module?
>
> Look at examples in /drivers/staging/iio or /drivers/iio
>
> There are plenty of examples of using SPI calls in a kernel module.
>
> Use the power of GIT to find what you are looking for. In the Kernel
> source do the following:
>
> git grep spi_sync_transfer
>
> Regards,
> John
>
>
>
> Regards,
> Nils
>
> --
> For more options, visit http://beagleboard.org/discuss
> ---
> You received this message because you are subscribed to the Google Groups
> "BeagleBoard" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected] <javascript:>.
> For more options, visit https://groups.google.com/d/optout.
>
>
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.