AnsweredAssumed Answered

SPI MISO non-functional

Question asked by matthew montoya on Oct 18, 2016
Latest reply on Oct 21, 2016 by jimmychan

I’ve seen on multiple busses is that the MISO just outright doesn’t work in linux. We are using kernel 3.15 (boundary branch).

 

The behavior is (on and IMX6 quad plus):

In UBoot:

SPI 4 appears to be fully functional. I am able to read/write and see all the data expected.

In linux, it seems to be writing, I see the data on a logic analyzer, however the MISO is just flat.

The CLK, SSO, and MOSI all seem to function properly.

This is using the same bit patterns as what is sent In U-Boot.

 

For ECSPI4 the device tree entries are as follow:

Pin-ctrl group:

MX6QDL_PAD_EIM_D22__ECSPI4_MISO   0x100b1

MX6QDL_PAD_EIM_D28__ECSPI4_MOSI   0x100b1

MX6QDL_PAD_EIM_D21__ECSPI4_SCLK    0x100b1

 

&ecspi4 {

fsl,spi-num-chipselects = <1>;

cs-gpios = (&gpio3 20 GPIO_ACTIVE_LOW>;

pinctrl-names = “default”;

pinctrl-0 = &pinctrl_ecspi4>;

status = “okay”;

spidev0@00 {

compatible = “spidev”;

spi-max-freuqnecy = <20000000>;

reg = <0>;

};

};

 

The above code I had to type out real quick (developed in VM on windows machine so I couldn’t copy/paste)

 

Weve also seen this issue on ECSPI2 where with a logic analyzer, we see the data being written out on the bus, but no reply

Outcomes