My pin mux setting for SPI is
ecspi1 {
fsl,spi-num-chipselects = <1>;
cs-gpios = <&gpio2 30 0>;
bus-number = <1>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ecspi1_1>;
status = "okay";
spidev@0 {
compatible = "spidev";
spi-max-frequency = <20000000>;
reg = <0>;
};
pinctrl_ecspi1_1: ecspi1grp-1 {
fsl,pins = <
MX6QDL_PAD_EIM_D17__ECSPI1_MISO 0x100b1
MX6QDL_PAD_EIM_D18__ECSPI1_MOSI 0x100b1
MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0x100b1
MX6QDL_PAD_EIM_EB2__GPIO2_IO30 0x80000000
>;
};
I am using the SPI master driver provided by freescale.I also enabled User mode SPI driver support.
IMX6 is master and another micro controller is slave.
I am sending data from IMX6 master to slave with user mode spi driver support.
No clock is seen ( IMX_SPI1_SCLK) Is there any change in pinmux setting or spi master driver required??
I am using kernel version 3.10
Hi,
Make sure that any other node is using the MX6QDL_PAD_EIM_D16 pad.
if there is some other node using it disable it.
Best Regards,
Alejandro
If you check the dts for the sabreauto they disable the i2c3 due to a pin conflict
&ecspi1 {
pinctrl-assert-gpios = <&gpio5 4 GPIO_ACTIVE_LOW>;
status = "okay";
};
&flexcan2 {
/* max7310_c on i2c3 is gone */
status = "disabled";
};
&i2c3 {
/* pin conflict with ecspi1 */
status = "disabled";
};