diff options
Diffstat (limited to 'drivers/arm/i2c_master.c')
| -rw-r--r-- | drivers/arm/i2c_master.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/arm/i2c_master.c b/drivers/arm/i2c_master.c index 5814375f3..9b4a752b1 100644 --- a/drivers/arm/i2c_master.c +++ b/drivers/arm/i2c_master.c | |||
| @@ -33,11 +33,17 @@ | |||
| 33 | static uint8_t i2c_address; | 33 | static uint8_t i2c_address; |
| 34 | 34 | ||
| 35 | static const I2CConfig i2cconfig = { | 35 | static const I2CConfig i2cconfig = { |
| 36 | #ifdef USE_I2CV1 | ||
| 37 | I2C1_OPMODE, | ||
| 38 | I2C1_CLOCK_SPEED, | ||
| 39 | I2C1_DUTY_CYCLE, | ||
| 40 | #else | ||
| 36 | STM32_TIMINGR_PRESC(I2C1_TIMINGR_PRESC) | | 41 | STM32_TIMINGR_PRESC(I2C1_TIMINGR_PRESC) | |
| 37 | STM32_TIMINGR_SCLDEL(I2C1_TIMINGR_SCLDEL) | STM32_TIMINGR_SDADEL(I2C1_TIMINGR_SDADEL) | | 42 | STM32_TIMINGR_SCLDEL(I2C1_TIMINGR_SCLDEL) | STM32_TIMINGR_SDADEL(I2C1_TIMINGR_SDADEL) | |
| 38 | STM32_TIMINGR_SCLH(I2C1_TIMINGR_SCLH) | STM32_TIMINGR_SCLL(I2C1_TIMINGR_SCLL), | 43 | STM32_TIMINGR_SCLH(I2C1_TIMINGR_SCLH) | STM32_TIMINGR_SCLL(I2C1_TIMINGR_SCLL), |
| 39 | 0, | 44 | 0, |
| 40 | 0 | 45 | 0 |
| 46 | #endif | ||
| 41 | }; | 47 | }; |
| 42 | 48 | ||
| 43 | static i2c_status_t chibios_to_qmk(const msg_t* status) { | 49 | static i2c_status_t chibios_to_qmk(const msg_t* status) { |
| @@ -61,8 +67,13 @@ void i2c_init(void) | |||
| 61 | 67 | ||
| 62 | chThdSleepMilliseconds(10); | 68 | chThdSleepMilliseconds(10); |
| 63 | 69 | ||
| 70 | #ifdef USE_I2CV1 | ||
| 71 | palSetPadMode(I2C1_SCL_BANK, I2C1_SCL, PAL_MODE_STM32_ALTERNATE_OPENDRAIN); | ||
| 72 | palSetPadMode(I2C1_SDA_BANK, I2C1_SDA, PAL_MODE_STM32_ALTERNATE_OPENDRAIN); | ||
| 73 | #else | ||
| 64 | palSetPadMode(I2C1_SCL_BANK, I2C1_SCL, PAL_MODE_ALTERNATE(I2C1_SCL_PAL_MODE) | PAL_STM32_OTYPE_OPENDRAIN); | 74 | palSetPadMode(I2C1_SCL_BANK, I2C1_SCL, PAL_MODE_ALTERNATE(I2C1_SCL_PAL_MODE) | PAL_STM32_OTYPE_OPENDRAIN); |
| 65 | palSetPadMode(I2C1_SDA_BANK, I2C1_SDA, PAL_MODE_ALTERNATE(I2C1_SDA_PAL_MODE) | PAL_STM32_OTYPE_OPENDRAIN); | 75 | palSetPadMode(I2C1_SDA_BANK, I2C1_SDA, PAL_MODE_ALTERNATE(I2C1_SDA_PAL_MODE) | PAL_STM32_OTYPE_OPENDRAIN); |
| 76 | #endif | ||
| 66 | 77 | ||
| 67 | //i2cInit(); //This is invoked by halInit() so no need to redo it. | 78 | //i2cInit(); //This is invoked by halInit() so no need to redo it. |
| 68 | } | 79 | } |
