summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcin Bukat <marcin.bukat@gmail.com>2013-04-04 13:06:46 +0200
committerMarcin Bukat <marcin.bukat@gmail.com>2013-04-04 13:06:46 +0200
commit670af6344ea5fd2b3f84e33bde305d3e2f3c13a3 (patch)
treed83b0ec6e858dcb7774048520984fa5f5413a85f
parentf8d36b5baab7bc60b2d150ff451e28c12b77bb96 (diff)
downloadrockbox-670af6344ea5fd2b3f84e33bde305d3e2f3c13a3.zip
rockbox-670af6344ea5fd2b3f84e33bde305d3e2f3c13a3.tar.gz
rockbox-670af6344ea5fd2b3f84e33bde305d3e2f3c13a3.tar.bz2
rockbox-670af6344ea5fd2b3f84e33bde305d3e2f3c13a3.tar.xz
rk27xx: Correct comment about i2c divider calculation
Change-Id: I75605d5bd6f8a3d1f44b63a9f4467ebcdd15267a
-rw-r--r--firmware/target/arm/rk27xx/i2c-rk27xx.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/firmware/target/arm/rk27xx/i2c-rk27xx.c b/firmware/target/arm/rk27xx/i2c-rk27xx.c
index 093fe70..f9f2093 100644
--- a/firmware/target/arm/rk27xx/i2c-rk27xx.c
+++ b/firmware/target/arm/rk27xx/i2c-rk27xx.c
@@ -131,13 +131,14 @@ void i2c_init(void)
/* set I2C divider to stay within allowed SCL freq limit
* APBfreq = 50Mhz
- * SCLfreq = (APBfreq/5*(I2CCDVR[5:3] + 1) * 2^((I2CCDVR[2:0] + 1))
- */
-
- /* we are driving this slightly above specs
- * (6<<3) | (1<<0) 416kHz
- * (7<<3) | (1<<0) 357kHz
- * (6<<3) | (2<<0) 208kHz
+ * I2C_div = (I2CCDVR[5:3] + 1) * 2^((I2CCDVR[2:0] + 1))
+ * SCLfreq = APBfreq/(5*I2C_div)
+ *
+ * (5<<3) | (1<<0) 416.7 KHz (above spec)
+ * (6<<3) | (1<<0) 357.1 kHz
+ * (7<<3) | (1<<0) 312.4 kHz
+ * (6<<3) | (2<<0) 178.6 kHz
+ * (7<<3) | (2<<0) 156.3 kHz
*/
I2C_OPR = (I2C_OPR & ~(0x3F)) | (6<<3) | (1<<0);