Setup SPI
This topic provides details on how to setup the SPI Service.
To be able to use the SPI Service, you need to install the spidev
and spisvc
modules on the target.
Verify if spidev
isn't already in the /dev directory:
root@swi-mdm9x15:~# ls /dev/spi*ls: /dev/spi*: No such file or directory
Then verify the spidev
and spisvc
modules aren't already installed, like this:
root@swi-mdm9x15:~# lsmodNot taintedipv6 287772 14 [permanent], Live 0xbf076000msm_sdcc 61674 0 - Live 0xbf060000usb_storage 41205 0 - Live 0xbf04c000sd_mod 29459 0 - Live 0xbf03f000scsi_mod 131955 2 usb_storage,sd_mod, Live 0xbf00d000unix 28948 625 - Live 0xbf000000
Install spidev:
root@swi-mdm9x15:~/ktest_dir# modprobe spidev
Check spidev
is now listed:
root@swi-mdm9x15:~/ktest_dir# lsmodNot taintedspidev 6060 0 - Live 0xbf0d2000ipv6 287772 14 [permanent], Live 0xbf076000msm_sdcc 61674 0 - Live 0xbf060000usb_storage 41205 0 - Live 0xbf04c000sd_mod 29459 0 - Live 0xbf03f000scsi_mod 131955 2 usb_storage,sd_mod, Live 0xbf00d000unix 28948 625 - Live 0xbf000000
Next, you'll need to create a kernel module .ko file. Follow the instructions in Out of Tree Kernel Module topic howToAddKernelDriver_makeKernel. Your
.ko file should use the code in the files located in
legato/drivers/spisvc: Makefile, spisvc.c, and spisvc.mdef
. Use scp
to copy your kernel module (driver) onto the target like this:
scp ktest_module.ko root@$target_IP:/home/root/ktest_dir
After you've copied your kernel module .ko file, install it like this:
root@swi-mdm9x15:~/ktest_dir# insmod spisvc.ko
Check spisvc
is installed:
root@swi-mdm9x15:~/ktest_dir# lsmodTainted: Gspisvc 694 0 - Live 0xbf0d7000 (O)spidev 6060 0 - Live 0xbf0d2000ipv6 287772 14 [permanent], Live 0xbf076000msm_sdcc 61674 0 - Live 0xbf060000usb_storage 41205 0 - Live 0xbf04c000sd_mod 29459 0 - Live 0xbf03f000scsi_mod 131955 2 usb_storage,sd_mod, Live 0xbf00d000unix 28948 625 - Live 0xbf000000
Check the target to ensure spidev0.0
now exists:
root@swi-mdm9x15:~/ktest_dir# ls /dev/*spi*/dev/spidev0.0
Start the spisvc:
root@swi-mdm9x15:~/ktest_dir# app start spisvc
Copyright (C) Sierra Wireless Inc.