Module Name: src
Committed By: martin
Date: Wed Sep 11 16:42:34 UTC 2024
Modified Files:
src/sys/dev/spi [netbsd-10]: spivar.h
Log Message:
Pull up following revision(s) (requested by rin in ticket #836):
sys/dev/spi/spivar.h: revision 1.13
Define mode macros for CPOL and CPHA, and define SPI_MODE_* in terms
of CPOL and CPHA. Add SPI_FREQ_*() helper macros to make setting the
transfer frequency less error prone.
To generate a diff of this commit:
cvs rdiff -u -r1.12 -r1.12.4.1 src/sys/dev/spi/spivar.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/dev/spi/spivar.h
diff -u src/sys/dev/spi/spivar.h:1.12 src/sys/dev/spi/spivar.h:1.12.4.1
--- src/sys/dev/spi/spivar.h:1.12 Wed Jan 19 13:33:11 2022
+++ src/sys/dev/spi/spivar.h Wed Sep 11 16:42:34 2024
@@ -1,4 +1,4 @@
-/* $NetBSD: spivar.h,v 1.12 2022/01/19 13:33:11 thorpej Exp $ */
+/* $NetBSD: spivar.h,v 1.12.4.1 2024/09/11 16:42:34 martin Exp $ */
/*-
* Copyright (c) 2006 Urbana-Champaign Independent Media Center.
@@ -55,16 +55,24 @@
struct spi_handle;
struct spi_transfer;
+#define SPI_MODE_CPHA __BIT(0)
+#define SPI_MODE_CPOL __BIT(1)
+
/*
* De facto standard latching modes.
*/
-#define SPI_MODE_0 0 /* CPOL = 0, CPHA = 0 */
-#define SPI_MODE_1 1 /* CPOL = 0, CPHA = 1 */
-#define SPI_MODE_2 2 /* CPOL = 1, CPHA = 0 */
-#define SPI_MODE_3 3 /* CPOL = 1, CPHA = 1 */
+#define SPI_MODE_0 0
+#define SPI_MODE_1 SPI_MODE_CPHA
+#define SPI_MODE_2 SPI_MODE_CPOL
+#define SPI_MODE_3 (SPI_MODE_CPHA | SPI_MODE_CPOL)
+
/* Philips' Microwire is just Mode 0 */
#define SPI_MODE_MICROWIRE SPI_MODE_0
+/* SPI transfer speed helper macros -- converts to Hz for spi_configure(). */
+#define SPI_FREQ_kHz(x) ((x) * 1000)
+#define SPI_FREQ_MHz(x) ((x) * 1000000)
+
struct spi_controller {
void *sct_cookie; /* controller private data */
int sct_nslaves;