aboutsummaryrefslogtreecommitdiff
path: root/drivers/spi/spi-rzv2m-csi.c
diff options
context:
space:
mode:
authorGravatar Fabrizio Castro <fabrizio.castro.jz@renesas.com> 2023-07-15 02:04:00 +0100
committerGravatar Mark Brown <broonie@kernel.org> 2023-07-17 12:41:42 +0100
commitaecf9fbdb7a4dc6d83e8d9984c8d9dc074d8ea2e (patch)
tree3d8dbb6ca33dd12ca9280aa1f5229bd7ef06e2d4 /drivers/spi/spi-rzv2m-csi.c
parentspi: rzv2m-csi: Adopt HZ_PER_MHZ for max spi clock (diff)
downloadlinux-aecf9fbdb7a4dc6d83e8d9984c8d9dc074d8ea2e.tar.gz
linux-aecf9fbdb7a4dc6d83e8d9984c8d9dc074d8ea2e.tar.bz2
linux-aecf9fbdb7a4dc6d83e8d9984c8d9dc074d8ea2e.zip
spi: rzv2m-csi: Rework CSI_CKS_MAX definition
Clock "csiclk" gets divided by 2 * CSI_CLKSEL_CKS in order to generate the serial clock (output from master), with CSI_CLKSEL_CKS ranging from 0x1 (that means "csiclk" is divided by 2) to 0x3FFF ("csiclk" is divided by 32766). CSI_CKS_MAX is used for referring to the setting corresponding to the maximum frequency divider. Value 0x3FFF for CSI_CKS_MAX doesn't really means much to the reader without an explanation and a more readable definition. Add a comment with a meaningful description and also replace value 0x3FFF with the corresponding GENMASK, to make it very clear what the macro means. Signed-off-by: Fabrizio Castro <fabrizio.castro.jz@renesas.com> Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Link: https://lore.kernel.org/r/20230715010407.1751715-4-fabrizio.castro.jz@renesas.com Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers/spi/spi-rzv2m-csi.c')
-rw-r--r--drivers/spi/spi-rzv2m-csi.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/spi/spi-rzv2m-csi.c b/drivers/spi/spi-rzv2m-csi.c
index 3931045a85eb..621774949bde 100644
--- a/drivers/spi/spi-rzv2m-csi.c
+++ b/drivers/spi/spi-rzv2m-csi.c
@@ -65,7 +65,12 @@
#define CSI_FIFO_SIZE_BYTES 32
#define CSI_FIFO_HALF_SIZE 16
#define CSI_EN_DIS_TIMEOUT_US 100
-#define CSI_CKS_MAX 0x3FFF
+/*
+ * Clock "csiclk" gets divided by 2 * CSI_CLKSEL_CKS in order to generate the
+ * serial clock (output from master), with CSI_CLKSEL_CKS ranging from 0x1 (that
+ * means "csiclk" is divided by 2) to 0x3FFF ("csiclk" is divided by 32766).
+ */
+#define CSI_CKS_MAX GENMASK(13, 0)
#define UNDERRUN_ERROR BIT(0)
#define OVERFLOW_ERROR BIT(1)