driver/i2c: Added I2C timing calculation function.
This commit adds I2C timing value automatic calculation algorithm
for all supported families added. This patch improves I2C timing calculation
according to I2C input clock and I2C bus speed.
This commit also allows user to change the system clock and I2C input clock.

Related issue: #12907

Pull request type:
[x] Patch update (Bug fix / Target update / Docs update / Test update / Refactor)
[] Feature update (New feature / Functionality change / New API)
[] Major update (Breaking change E.g. Return code change / API behaviour change)

Test results:
[] No Tests required for this change (E.g docs only update)
[x] Covered by existing mbed-os tests (Greentea or Unittest)
[] Tests / results supplied as part of this PR

Signed-off-by: Affrin Pinhero <affrin.pinhero@hcl.com>
ls
1 parent a3be10c commit d974b4743939c8ba62483842c35f720180cf5120
@Affrin Pinhero Affrin Pinhero authored on 19 Apr 2021
Showing 33 changed files
View
targets/TARGET_STM/TARGET_STM32F0/CMakeLists.txt
View
targets/TARGET_STM/TARGET_STM32F0/i2c_device.c 0 → 100755
View
targets/TARGET_STM/TARGET_STM32F0/i2c_device.h
View
targets/TARGET_STM/TARGET_STM32F3/CMakeLists.txt
View
targets/TARGET_STM/TARGET_STM32F3/i2c_device.c 0 → 100755
View
targets/TARGET_STM/TARGET_STM32F3/i2c_device.h
View
targets/TARGET_STM/TARGET_STM32F7/CMakeLists.txt
View
targets/TARGET_STM/TARGET_STM32F7/i2c_device.c 0 → 100755
View
targets/TARGET_STM/TARGET_STM32F7/i2c_device.h
View
targets/TARGET_STM/TARGET_STM32G0/CMakeLists.txt
View
targets/TARGET_STM/TARGET_STM32G0/i2c_device.c 0 → 100755
View
targets/TARGET_STM/TARGET_STM32G0/i2c_device.h
View
targets/TARGET_STM/TARGET_STM32G4/CMakeLists.txt
View
targets/TARGET_STM/TARGET_STM32G4/i2c_device.c 0 → 100755
View
targets/TARGET_STM/TARGET_STM32G4/i2c_device.h
View
targets/TARGET_STM/TARGET_STM32H7/i2c_device.c 100644 → 100755
View
targets/TARGET_STM/TARGET_STM32H7/i2c_device.h
View
targets/TARGET_STM/TARGET_STM32L0/CMakeLists.txt
View
targets/TARGET_STM/TARGET_STM32L0/i2c_device.c 0 → 100755
View
targets/TARGET_STM/TARGET_STM32L0/i2c_device.h
View
targets/TARGET_STM/TARGET_STM32L4/CMakeLists.txt
View
targets/TARGET_STM/TARGET_STM32L4/i2c_device.c 0 → 100755
View
targets/TARGET_STM/TARGET_STM32L4/i2c_device.h
View
targets/TARGET_STM/TARGET_STM32L5/CMakeLists.txt
View
targets/TARGET_STM/TARGET_STM32L5/i2c_device.c 0 → 100755
View
targets/TARGET_STM/TARGET_STM32L5/i2c_device.h
View
targets/TARGET_STM/TARGET_STM32WB/CMakeLists.txt
View
targets/TARGET_STM/TARGET_STM32WB/i2c_device.c 0 → 100755
View
targets/TARGET_STM/TARGET_STM32WB/i2c_device.h
View
targets/TARGET_STM/TARGET_STM32WL/CMakeLists.txt
View
targets/TARGET_STM/TARGET_STM32WL/i2c_device.c 0 → 100755
View
targets/TARGET_STM/TARGET_STM32WL/i2c_device.h
View
targets/TARGET_STM/i2c_api.c