Re: [PATCH v2] spi-fsl-dspi: Fix CTAR Register access

From: Bhuvanchandra DV
Date: Thu Dec 10 2015 - 03:44:50 EST


On 12/10/2015 12:45 PM, Alexander Stein wrote:
On Thursday 10 December 2015 11:25:30, Bhuvanchandra DV wrote:
DSPI instances in Vybrid have a different amount of chip selects
and CTARs (Clock and transfer Attributes Register). In case of
DSPI1 we only have 2 CTAR registers and 4 CS. In present driver
implementation CTAR offset is derived from CS instance which will
lead to out of bound access if chip select instance is greater than
CTAR register instance, hence use single CTAR0 register for all CS
instances. Since we write the CTAR register anyway before each access,
there is no value in using the additional CTAR registers. Also one
should not program a value in CTAS for a CTAR register that is not
present, hence configure CTAS to use CTAR0.

Shouldn't the information put into struct fsl_dspi_devtype_data how much CTAR and CS the actual implementation has available? E.g. LS1021A has 6 CS and 4 CTAR

I guess still this will not help us when CS instance greater than CTAR instance is selected. Other point to consider here is we are writing the CTAR register before every access, so for us there is no additional advantage of using multiple CTAR registers.


Best regards,
Alexander


--
Best regards,
Bhuvan
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/