DART-6UL SPI

From Variscite Wiki
Revision as of 18:35, 8 November 2016 by Aviad (talk | contribs)
DART-6UL- SPI

Testing SPI from user space require some changes.

  • Configure your kernel and add spidev driver. Device Drivers -> SPI support -> <*> User mode SPI device driver support
  • Add spidev and pinctrl to your device tree
&ecspi1 {
	fsl,spi-num-chipselects = <1>;
	cs-gpios = <&gpio4 26 0>;
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_ecspi1_1>;
	status = "okay";

        chip1: spidev@0 {
               compatible = "spidev";
               spi-max-frequency = <12000000>;
               reg = <0>;
        };
/*
        chip2: spidev@1 {
               compatible = "spidev";
               spi-max-frequency = <20000000>;
               reg = <1>;
	};
*/
};
pinctrl_ecspi1_1: ecspi1grp {
	fsl,pins = <
		MX6UL_PAD_CSI_DATA07__ECSPI1_MISO	0x100b1
		MX6UL_PAD_CSI_DATA06__ECSPI1_MOSI	0x100b1
		MX6UL_PAD_CSI_DATA04__ECSPI1_SCLK	0x100b1
		MX6UL_PAD_CSI_DATA05__GPIO4_IO26	0x80000000
	>;
};

Note: The pins here were set arbitrarily. You should set them based on your hardware design, and make sure they are not conflicting with other devices in the device tree.
you can also have multiple chip selects.