Hi Yiping,
I have similar problem. I use dts as followed.
dspi@2100000 {
compatible = "fsl,ls1012a-dspi", "fsl,ls1021a-v1.0-dspi";
// compatible = "fsl,vf610-dspi";
#address-cells = <0x1>;
#size-cells = <0x0>;
reg = <0x0 0x2100000 0x0 0x10000>;
interrupts = <0x0 0x40 0x4>;
clock-names = "dspi";
clocks = <0x2 0x4 0x0>;
spi-num-chipselects = <0x3>;
big-endian;
bus-num = <0x01>;
status = "okay";
spidev@0 {
#address-cells = <0x01>;
#size-cells = <0x01>;
compatible = "spidev";
reg = <0x00>;
spi-max-frequency = <10000000>;
};
spidev@1 {
#address-cells = <0x01>;
#size-cells = <0x01>;
compatible = "spidev";
reg = <0x01>;
spi-max-frequency = <10000000>;
};
spidev@2 {
#address-cells = <0x01>;
#size-cells = <0x01>;
compatible = "spidev";
reg = <0x02>;
spi-max-frequency = <10000000>;
};
};
when I use compatible as "fsl,ls1012a-dspi", "fsl,ls1021a-v1.0-dspi" , I end up with kernel msg like this.
spidev spi1.2: setup mode 0, 8 bits/w, 10000000 Hz max --> 0
spidev spi1.2: spi mode 0
spidev spi1.2: setup mode 0, 8 bits/w, 10000000 Hz max --> 0
spidev spi1.2: 8 bits per word
spidev spi1.2: setup mode 0, 8 bits/w, 1000000 Hz max --> 0
fsl-dspi 2100000.dspi: wait transfer complete fail!
when I use compatible as compatible = "fsl,vf610-dspi", devices are note created as spidev1.x under /dev/.
fsl-dspi 2100000.spi: rx dma channel not available
fsl-dspi 2100000.spi: can't get dma channels
Can I get any help about this?