====== SPI interface using the IO-Port #2 ====== This page introduces how you can SPI interface using IO-Port on **ODROID-U3**.\\ **Note that SPI port supports only master mode and 1.8 Volt interface like other IO ports on Exynos processor.**\\ {{:en:u3:u3ioport_num.png?500|}} **J5 - 2x2 pins(IO Port #2)**\\ This socket is not provides at revision 0.3 ^ Pin Number ^ Expansion Net Name ^ Export Number ^ Pin Number ^ Expansion Net Name ^ Export Number ^ |1|XSPICLK_1 (GPB.4) | #21 |2|XSPICSN_1 (GPB.5) | #22 | |3|XSPIMOSI_1 (GPB.7) | #24 |4|XSPIMISO_1 (GPB.6)| #23 | If your ODROID-U3 have old version kernel you need to update using odroid-utility. sudo odroid-utility.sh **How to load the SPI driver module for generic SPI usage**\\ Load the module to activate the SPI host.\\ sudo modprobe spi-s3c64xx Load the module to activate the generic SPI. sudo modprobe spidev And you will have a standard SPI node. ls /dev/spidev1.0 **How to load the SPI driver module for serial Flash**\\ Load the module to activate the SPI host. sudo modprobe spi-s3c64xx Load the serial flash (misc) driver. sudo modprobe odroid-ioboard And you will have a Serial Flash node. ls /dev/ioboard-spi-misc **Where are the SPI device drivers in Kernel 3.8.y?**\\ {{https://github.com/hardkernel/linux/blob/odroid-3.8.y/drivers/spi/spi-s3c64xx.c|SPI host interface driver}}\\ {{https://github.com/hardkernel/linux/blob/odroid-3.8.y/drivers/spi/spidev.c|SPI generic driver}}\\ {{https://github.com/hardkernel/linux/blob/odroid-3.8.y/drivers/hardkernel/ioboard-spi-misc.c|Serial SPI Flash add-on driver example}} We have tested the ioboard-spi-misc.ko with a Serial SPI Flash memory SST25WF020A on the new IO Shield and the maximum speed was 40Mhz of SPI clock. **How to change SPI clock **\\ {{https://github.com/hardkernel/linux/blob/odroid-3.8.y/arch/arm/mach-exynos/mach-hkdk4412.c#L538|SPI Clock configuration}}\\ {{http://dn.odroid.com/wiki_image/odroid-u3-spi-clock-40MHz.jpg?500|}} Refer this link to know the generic SPIDEV driver usage in detail.\\ [[https://www.kernel.org/doc/Documentation/spi/spidev]]