Module Name:    src
Committed By:   khorben
Date:           Wed May 15 13:52:19 UTC 2013

Modified Files:
        src/sys/dev/spi [khorben-n900]: files.spi spi.c spivar.h

Log Message:
Let the bus speed of SPI devices be specified within the kernel
configuration.


To generate a diff of this commit:
cvs rdiff -u -r1.2.114.1 -r1.2.114.2 src/sys/dev/spi/files.spi
cvs rdiff -u -r1.8.6.1 -r1.8.6.2 src/sys/dev/spi/spi.c
cvs rdiff -u -r1.4.20.1 -r1.4.20.2 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/files.spi
diff -u src/sys/dev/spi/files.spi:1.2.114.1 src/sys/dev/spi/files.spi:1.2.114.2
--- src/sys/dev/spi/files.spi:1.2.114.1	Fri May 10 01:25:07 2013
+++ src/sys/dev/spi/files.spi	Wed May 15 13:52:19 2013
@@ -1,8 +1,8 @@
-#	$NetBSD: files.spi,v 1.2.114.1 2013/05/10 01:25:07 khorben Exp $
+#	$NetBSD: files.spi,v 1.2.114.2 2013/05/15 13:52:19 khorben Exp $
 
 define	spibus { }
 
-device	spi { slave, [intr = -1] }
+device	spi { slave, [intr = -1], [speed = -1] }
 attach	spi at spibus
 file	dev/spi/spi.c			spi | spibus
 

Index: src/sys/dev/spi/spi.c
diff -u src/sys/dev/spi/spi.c:1.8.6.1 src/sys/dev/spi/spi.c:1.8.6.2
--- src/sys/dev/spi/spi.c:1.8.6.1	Fri May 10 01:25:07 2013
+++ src/sys/dev/spi/spi.c	Wed May 15 13:52:19 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: spi.c,v 1.8.6.1 2013/05/10 01:25:07 khorben Exp $ */
+/* $NetBSD: spi.c,v 1.8.6.2 2013/05/15 13:52:19 khorben Exp $ */
 
 /*-
  * Copyright (c) 2006 Urbana-Champaign Independent Media Center.
@@ -42,7 +42,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: spi.c,v 1.8.6.1 2013/05/10 01:25:07 khorben Exp $");
+__KERNEL_RCSID(0, "$NetBSD: spi.c,v 1.8.6.2 2013/05/15 13:52:19 khorben Exp $");
 
 #include "locators.h"
 
@@ -120,6 +120,7 @@ spi_search(device_t parent, cfdata_t cf,
 
 	sa.sa_handle = &sc->sc_slaves[addr];
 	sa.sa_intr = cf->cf_loc[SPICF_INTR];
+	sa.sa_speed = cf->cf_loc[SPICF_SPEED];
 
 	if (config_match(parent, cf, &sa) > 0)
 		config_attach(parent, cf, &sa, spi_print);
@@ -197,8 +198,7 @@ spi_configure(struct spi_handle *sh, int
 	if (sc->sc_speed)
 		speed = min(sc->sc_speed, speed);
 
-	rv = (*tag->sct_configure)(tag->sct_cookie, sh->sh_slave,
-	    mode, speed);
+	rv = (*tag->sct_configure)(tag->sct_cookie, sh->sh_slave, mode, speed);
 
 	if (rv == 0) {
 		sc->sc_mode = mode;
@@ -211,7 +211,6 @@ spi_configure(struct spi_handle *sh, int
 void
 spi_transfer_init(struct spi_transfer *st)
 {
-
 	mutex_init(&st->st_lock, MUTEX_DEFAULT, IPL_BIO);
 	cv_init(&st->st_cv, "spicv");
 

Index: src/sys/dev/spi/spivar.h
diff -u src/sys/dev/spi/spivar.h:1.4.20.1 src/sys/dev/spi/spivar.h:1.4.20.2
--- src/sys/dev/spi/spivar.h:1.4.20.1	Fri May 10 01:25:07 2013
+++ src/sys/dev/spi/spivar.h	Wed May 15 13:52:19 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: spivar.h,v 1.4.20.1 2013/05/10 01:25:07 khorben Exp $ */
+/* $NetBSD: spivar.h,v 1.4.20.2 2013/05/15 13:52:19 khorben Exp $ */
 
 /*-
  * Copyright (c) 2006 Urbana-Champaign Independent Media Center.
@@ -83,6 +83,7 @@ struct spibus_attach_args {
 struct spi_attach_args {
 	struct spi_handle	*sa_handle;
 	int			sa_intr;
+	int			sa_speed;
 };
 
 /*

Reply via email to