Hello,
I wanted to use the Zynq-SPI of the PS from within Linux.
Therefore I added the following to my Devicetree:
.
ps7_spi_1: ps7-spi@e0007000 {
bus-num = <0>;
tcompatible = "xlnx,ps7-spi-1.00.a";
tinterrupt-parent = <&gic>;
tinterrupts = < 0 49 4 >;
tnum-chip-select = <4>;
treg = < 0xe0007000 0x1000 >;
tspeed-hz = <100000000>;
txlnx,has-ss0 = <0x0>;
txlnx,has-ss1 = <0x1>;
txlnx,has-ss2 = <0x0>;
txlnx,spi-clk-freq-hz = <0x5f5e100>;
} ;
.
And made sure the Linux Kernel supports the Device. The following entrys are within my config:
.
$cat .config | grep SPI |grep -v "^#" |grep -v "QSPI" |grep -v "SPIN"
CONFIG_REGMAP_SPI=y
CONFIG_SPI=y
CONFIG_SPI_MASTER=y
CONFIG_SPI_BITBANG=y
CONFIG_SPI_XCOMM=y
CONFIG_SPI_AD9250FMC=y
CONFIG_SPI_XILINX=y
CONFIG_SPI_XILINX_PS_SPI=y
CONFIG_SND_SOC_I2C_AND_SPI=y
CONFIG_AD7606_IFACE_SPI=y
CONFIG_AD5624R_SPI=y
.
After boot the Hardware adress of the SPI e0007000 is shown within the /proc/iomem.
$ cat /proc/iomem |grep spi
e0007000-e0007fff : e0007000.ps7-spi
.
But no SPI device shows up within /dev/ , what else do I have to change to make the SPI work?
.
I wasn't sure where to put the question, somehow it involves Hardware and Software aspects.