Hello NXP experts!
I am configuring an IMX93 processor with Yocto (https://github.com/nxp-imx/imx-manifest -b imx-linux-styhead -m imx-6.12.3-1.0.0.xml) for a custom board.
I have to configure the LPSPI3 peripheral in slave mode, based on kernel 6.12.3.
This is the DTS, I have followed this example linux-imx/arch/arm64/boot/dts/freescale/imx93-11x11-evk-i2c-spi-slave.dts at lf-6.12.y · nxp-imx/lin...:
/*slave spi*/&lpspi3 {fsl,spi-num-chipselects = <1>;pinctrl-names = "default";pinctrl-0 = <&pinctrl_lpspi3>;status = "okay";spi-slave;slave {compatible = "lwn,bk4";:spi-max-frequency = <10000000>;};};
pinctrl_lpspi3: lpspi3grp {fsl,pins = <MX93_PAD_GPIO_IO08__LPSPI3_PCS0 0x3feMX93_PAD_GPIO_IO09__LPSPI3_SIN 0x3feMX93_PAD_GPIO_IO10__LPSPI3_SOUT 0x3feMX93_PAD_GPIO_IO11__LPSPI3_SCK 0x3fe>;};
I am running this SPI example:
Basically, the problem is that when I start the binary, I see a voltage drop on MOSI signal, with the same configuration there is not a drop on SCK signal.
In the image below you can see:
In the image below you can see:
As you can see, there is a voltage drop on MOSI and there isn't a voltage drop on SCK.
I have configured the same pin, the same peripheral with M33 core and I don't see this voltage drop.
When I use the LPSPI 4 as master, instead, I have no issue.
Any suggestion?
Please help me.
Thanks,
Ciancio.
Hi @il_ciancio
Here is the test method about slave and master of LPSPI on imx93.
1. Slave runs "spidev_test -D /dev/spidev0.0 -s 8000000 -v -p 12345678 &"
2. Master runs "spidev_test -D /dev/spidev1.0 -s 8000000 -v -p 12345678"
3. Check if the TX RX of the master and slave are equal
B.R
HI
You said when you use LPSPI4 as master, there is no problem, when use LPSPI3 as master, the problem occurred. right?
Did you check if your HW connect is no problem when you use LPSPI3 as master?
B.R
Hi,
I will update you about this. It is a little bit hard because on my board the LSPI3 SCK (GPIO_11) has only one direction (same for the SOUT from the master to the SIN of the LSPI3).
Can you check the other response?
Thanks a lot.
B.R.,
Ciancio
Hi @il_ciancio
Did you run the spidev_test command test the spi master and slave device? Please run it see the test result.
B.R
Hi @pengyong_zhang,
I have runned spidev_test on my spi_slave peripheral.
This is the command:
This is the output:
.
I am not receiving the data, below there is the Master (basically each seconds I am sendin in ASCII 1 to 9):
.
The strange things is that:
.
Some question:
Thanks for your time and your support.
BR,
Ciancio