Intel® SoC FPGA Embedded Development Suite
Support for SoC FPGA Software Development, SoC FPGA HPS Architecture, HPS SoC Boot and Configuration, Operating Systems
461 Discussions

probe function for qspi is not called

New Contributor II



I am using latest linux-socfpga with arria5.


The kernel does not detect any mtd device (qspi) on board.

The problem is that I don't see that probe function for qspi is ever called...

Only if I change in dts file as following:

&qspi {

status = "okay";


flash: flash@0 {

#address-cells = <1>;

#size-cells = <1>;

-compatible = "n25q256a";

+compatible = "cdns,qspi-nor";


than I finally get that cqspi_probe() and spi_npor_scan() are called:

[  2.588663] cadence-qspi ff705000.spi: unrecognized JEDEC id bytes: ff ff ff ff ff ff

[  2.604067] cadence-qspi ff705000.spi: Cadence QSPI NOR probe failed -2

[  2.610805] cadence-qspi: probe of ff705000.spi failed with error -2


Should I change dts as I did ? Why does it fail to call probe with the original flash device name in dts ?




0 Kudos
1 Reply

Hi ,

The usage of the compatible property in dts is "<manufacturer>,<model>"

what you have given earlier is the part number of the flash chip.

HPS is composed of multiple peripherals IPs like that of QSPI Flash, The usage compatible = "cdns,qspi-nor" is the correct way.Because that specifies the IP of flash controller which in turn will work with the Flash chip to control it.

For clarification regarding the usage of properties in dts you can refer here



0 Kudos