Hi Everybody,
I am using linux kernel 5.4.24, and trying to use spi in slave mode
my settings are as follows:
imx6qdl.dtsi:
ecspi3: spi@2010000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi";
reg = <0x02010000 0x4000>;
interrupts = <0 33 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6QDL_CLK_ECSPI3>,
<&clks IMX6QDL_CLK_ECSPI3>;
clock-names = "ipg", "per";
dmas = <&sdma 7 7 1>, <&sdma 8 7 2>;
dma-names = "rx", "tx";
status = "disabled";
};
imx6qdl-sabresd.dtsi:
&ecspi3 {
pinctrl-0 = <&pinctrl_ecspi3>;
spi-slave;
status = "okay";
slave@0 {
reg = <0>;
compatible = "spidev";
spi-max-frequency = <15000000>;
};
};
pinctrl_ecspi3: ecspi3grp {
fsl,pins = <
MX6QDL_PAD_DISP0_DAT2__ECSPI3_MISO 0x100b1
MX6QDL_PAD_DISP0_DAT1__ECSPI3_MOSI 0x100b1
MX6QDL_PAD_DISP0_DAT0__ECSPI3_SCLK 0x100b1
MX6QDL_PAD_DISP0_DAT3__GPIO4_IO24 0x1b0b0
>;
};
when i compile the device tree i get the error:
DTC arch/arm/boot/dts/imx6dl-sabresd.dtb
arch/arm/boot/dts/imx6qdl.dtsi:417.25-429.7: Warning (spi_bus_bridge): /soc/aips-bus@2000000/spba-bus@2000000/spi@2010000: incorrect #address-cells for SPI bus
also defined at arch/arm/boot/dts/imx6qdl-sabresd.dtsi:385.9-397.3
arch/arm/boot/dts/imx6dl-sabresd.dtb: Warning (spi_bus_reg): Failed prerequisite 'spi_bus_bridge'
although all the examples i see have similar setting when i use these settings i get the error above. Also during boot the related spi device is not probed successfully and device is not listed in /dev/ directory
Best Regards
Y.
Hi Yavuz
for correct bindings one can look at imx6ul-14x14-evk-ecspi-slave.dts example
Best regards
igor