svn commit: r310886 - head/sys/arm/ti/am335x

Luiz Otavio O Souza loos at FreeBSD.org
Sat Dec 31 02:18:09 UTC 2016


Author: loos
Date: Sat Dec 31 02:18:08 2016
New Revision: 310886
URL: https://svnweb.freebsd.org/changeset/base/310886

Log:
  Fixes the sensor initialization, always reset the digital outputs to start.
  
  Obtained from:	pfSense
  MFC after:	3 days
  Sponsored by:	Rubicon Communications, LLC (Netgate)

Modified:
  head/sys/arm/ti/am335x/am335x_scm.c

Modified: head/sys/arm/ti/am335x/am335x_scm.c
==============================================================================
--- head/sys/arm/ti/am335x/am335x_scm.c	Sat Dec 31 02:02:42 2016	(r310885)
+++ head/sys/arm/ti/am335x/am335x_scm.c	Sat Dec 31 02:18:08 2016	(r310886)
@@ -110,11 +110,14 @@ am335x_scm_attach(device_t dev)
 	struct sysctl_oid_list *tree;
 	uint32_t reg;
 
-	/* Set ADC to continous mode, clear output reset. */
-	reg = SCM_BGAP_CLRZ | SCM_BGAP_CONTCONV;
-	ti_scm_reg_write_4(SCM_BGAP_CTRL, reg);
-	/* Flush write. */
+	/* Reset the digital outputs. */
+	ti_scm_reg_write_4(SCM_BGAP_CTRL, 0);
+	ti_scm_reg_read_4(SCM_BGAP_CTRL, &reg);
+	DELAY(500);
+	/* Set continous mode. */
+	ti_scm_reg_write_4(SCM_BGAP_CTRL, SCM_BGAP_CONTCONV);
 	ti_scm_reg_read_4(SCM_BGAP_CTRL, &reg);
+	DELAY(500);
 	/* Start the ADC conversion. */
 	reg = SCM_BGAP_CLRZ | SCM_BGAP_CONTCONV | SCM_BGAP_SOC;
 	ti_scm_reg_write_4(SCM_BGAP_CTRL, reg);


More information about the svn-src-all mailing list