Commit d01ee4db authored by Joakim Tjernlund's avatar Joakim Tjernlund Committed by Heiko Schocher
Browse files

fsl_i2c: Add CONFIG_FSL_I2C_CUSTOM_{DFSR/FDR}



Some boards need a higher DFSR value than the spec currently
recommends so give these boards the means to define there own.

For completeness, add CONFIG_FSL_I2C_CUSTOM_FDR too.
Signed-off-by: default avatarJoakim Tjernlund <Joakim.Tjernlund@transmode.se>
parent 21f4cbb7
......@@ -172,14 +172,22 @@ static unsigned int set_i2c_bus_speed(const struct fsl_i2c *dev,
u8 fdr;
#ifdef __PPC__
u8 dfsr;
#ifdef CONFIG_FSL_I2C_CUSTOM_DFSR
dfsr = CONFIG_FSL_I2C_CUSTOM_DFSR;
#else
dfsr = fsl_i2c_speed_map[i].dfsr;
#endif
writeb(dfsr, &dev->dfsrr); /* set default filter */
#endif
#ifdef CONFIG_FSL_I2C_CUSTOM_FDR
fdr = CONFIG_FSL_I2C_CUSTOM_FDR;
speed = i2c_clk / divider; /* Fake something */
#else
fdr = fsl_i2c_speed_map[i].fdr;
speed = i2c_clk / fsl_i2c_speed_map[i].divider;
writeb(fdr, &dev->fdr); /* set bus speed */
#ifdef __PPC__
writeb(dfsr, &dev->dfsrr); /* set default filter */
#endif
writeb(fdr, &dev->fdr); /* set bus speed */
break;
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment