VAR-SOM-MX6 SPI

From Variscite Wiki
Revision as of 07:13, 10 April 2017 by Eran (talk | contribs)
VAR-SOM-MX6 - SPI

Testing SPI from user space require some changes.

  • Configure your kernel (using "make menuconfig", for example) and add spidev driver: Device Drivers -> SPI support -> <*> User mode SPI device driver support
  • Add spidev and pinctrl to your device tree

For VAR-SOM-MX6, edit arch/arm/boot/dts/imx6qdl-var-som.dtsi
For DART-MX6, edit arch/arm/boot/dts/imx6qdl-var-dart.dtsi

&ecspi1 {
	fsl,spi-num-chipselects = <1>;
	cs-gpios = <&gpio4 9 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 = <
		MX6QDL_PAD_KEY_COL1__ECSPI1_MISO	0x100b1
		MX6QDL_PAD_KEY_ROW0__ECSPI1_MOSI	0x100b1
		MX6QDL_PAD_KEY_COL0__ECSPI1_SCLK	0x100b1
		MX6QDL_PAD_KEY_ROW1__GPIO4_IO09      0x80000000
	>;
};

Pick and choose the right chip select and you can also have multiple chip selects.