stm32: Add support for additional i2c buses

Reported by @StoneColdCrazy.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
Kevin O'Connor 2022-04-11 10:58:11 -04:00
parent 5d82be2f5d
commit 38e82e8d8f
1 changed files with 17 additions and 0 deletions

View File

@ -23,11 +23,28 @@ DECL_ENUMERATION("i2c_bus", "i2c1a", 1);
DECL_CONSTANT_STR("BUS_PINS_i2c1a", "PB8,PB9");
DECL_ENUMERATION("i2c_bus", "i2c2", 2);
DECL_CONSTANT_STR("BUS_PINS_i2c2", "PB10,PB11");
#if CONFIG_MACH_STM32F2 || CONFIG_MACH_STM324
DECL_ENUMERATION("i2c_bus", "i2c3", 3);
DECL_CONSTANT_STR("BUS_PINS_i2c3", "PA8,PC9");
#if CONFIG_MACH_STM32F2 || CONFIG_MACH_STM32F4x5
DECL_ENUMERATION("i2c_bus", "i2c2a", 4);
DECL_CONSTANT_STR("BUS_PINS_i2c2a", "PH4,PH5");
DECL_ENUMERATION("i2c_bus", "i2c3a", 5);
DECL_CONSTANT_STR("BUS_PINS_i2c3a", "PH7,PH8");
#endif
#endif
static const struct i2c_info i2c_bus[] = {
{ I2C1, GPIO('B', 6), GPIO('B', 7) },
{ I2C1, GPIO('B', 8), GPIO('B', 9) },
{ I2C2, GPIO('B', 10), GPIO('B', 11) },
#if CONFIG_MACH_STM32F2 || CONFIG_MACH_STM324
{ I2C3, GPIO('A', 8), GPIO('C', 9) },
#if CONFIG_MACH_STM32F2 || CONFIG_MACH_STM32F4x5
{ I2C2, GPIO('H', 4), GPIO('H', 5) },
{ I2C3, GPIO('H', 7), GPIO('H', 8) },
#endif
#endif
};
// Work around stm32 errata causing busy bit to be stuck