bool                    is_decoded_cs;
        u32                     fifo_depth;
        u32                     fifo_width;
+       u32                     num_chipselect;
        bool                    rclk_en;
        u32                     trigger_address;
        u32                     wr_delay;
                return -ENXIO;
        }
 
+       if (of_property_read_u32(np, "num-cs", &cqspi->num_chipselect))
+               cqspi->num_chipselect = CQSPI_MAX_CHIPSELECT;
+
        cqspi->rclk_en = of_property_read_bool(np, "cdns,rclk-en");
 
        return 0;
        cqspi->current_cs = -1;
        cqspi->sclk = 0;
 
+       master->num_chipselect = cqspi->num_chipselect;
+
        ret = cqspi_setup_flash(cqspi);
        if (ret) {
                dev_err(dev, "failed to setup flash parameters %d\n", ret);