Messages in this thread | | | From | Fabio Estevam <> | Date | Tue, 25 Aug 2020 11:24:02 -0300 | Subject | Re: (EXT) Re: [PATCH 2/2] ARM: dts: imx6qdl: tqma6: minor fixes |
| |
Hi Matthias,
On Tue, Aug 25, 2020 at 4:22 AM Matthias Schiffer <matthias.schiffer@ew.tq-group.com> wrote:
> Hmm, unless I'm overlooking something, this is not going to work: > > - spi_get_gpio_descs() sets num_chipselect to the maximum of the > num_chipselect set in the driver and the number of cs-gpios > > - spi_imx_probe() sets num_chipselect to 3 if not specified in the > device tree > > So I think we would end up with 3 instead of 1 chipselect.
Oh, this has changed recently in 8cdcd8aeee281 ("spi: imx/fsl-lpspi: Convert to GPIO descriptors"): ....
- } else { - u32 num_cs; - - if (!of_property_read_u32(np, "num-cs", &num_cs)) - master->num_chipselect = num_cs; - /* If not preset, default value of 1 is used */
Initially, if num-cs was not present the default value for num_chipselect was 1.
- } + /* + * Get number of chip selects from device properties. This can be + * coming from device tree or boardfiles, if it is not defined, + * a default value of 3 chip selects will be used, as all the legacy + * board files have <= 3 chip selects. + */ + if (!device_property_read_u32(&pdev->dev, "num-cs", &val)) + master->num_chipselect = val; + else + master->num_chipselect = 3;
Now it became 3.
I think this is a driver issue and we should fix the driver instead of requiring to pass num-cs to the device tree.
num-cs is not even documented in the spi-imx binding.
| |