summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorBrad Bishop <bradleyb@fuzziesquirrel.com>2020-07-31 01:03:25 +0300
committerJoel Stanley <joel@jms.id.au>2020-08-13 06:48:19 +0300
commita8491dbd49c38930ce71930515a75aa57b4252c9 (patch)
treee819bc95a4793b1dc7e57bf69823dddf6670dda6 /drivers
parent58b804d88a57eaff5825b0732ff6f2915097213b (diff)
downloadlinux-a8491dbd49c38930ce71930515a75aa57b4252c9.tar.xz
spi: fsi: Fix clock running too fast
Use a clock divider tuned to a 200MHz FSI clock. Use of the previous divider at 200MHz results in corrupt data from endpoint devices. Ideally the clock divider would be calculated from the FSI clock, but that would require some significant work on the FSI driver. OpenBMC-Staging-Count: 1 Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com> Signed-off-by: Eddie James <eajames@linux.ibm.com> Signed-off-by: Joel Stanley <joel@jms.id.au>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/spi/spi-fsi.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/spi/spi-fsi.c b/drivers/spi/spi-fsi.c
index 8f64af0140e0..559d0ff981f3 100644
--- a/drivers/spi/spi-fsi.c
+++ b/drivers/spi/spi-fsi.c
@@ -350,7 +350,7 @@ static int fsi_spi_transfer_init(struct fsi_spi *ctx)
u64 status = 0ULL;
u64 wanted_clock_cfg = SPI_FSI_CLOCK_CFG_ECC_DISABLE |
SPI_FSI_CLOCK_CFG_SCK_NO_DEL |
- FIELD_PREP(SPI_FSI_CLOCK_CFG_SCK_DIV, 4);
+ FIELD_PREP(SPI_FSI_CLOCK_CFG_SCK_DIV, 19);
end = jiffies + msecs_to_jiffies(SPI_FSI_INIT_TIMEOUT_MS);
do {