i2c updates for v2024.01-rc2

- nuvoton: support standard/fast/fast plus mode
- bootcount: remove legacy i2c driver and implement
  DM based version

Bugfixes:
- designware_i2c: adjust timing calculation
  SPL probing failed on the StarFive VisionFive 2 board
  Heinrich fixed this, by syncing timing calculation with
  linux implementation.
This commit is contained in:
Tom Rini
2023-11-02 10:12:33 -04:00
8 changed files with 218 additions and 74 deletions

View File

@@ -537,6 +537,18 @@ int i2c_get_chip(struct udevice *bus, uint chip_addr, uint offset_len,
int i2c_get_chip_for_busnum(int busnum, int chip_addr, uint offset_len,
struct udevice **devp);
/**
* i2c_get_chip_by_phandle() - get a device to use to access a chip
* based on a phandle property pointing to it
*
* @parent: Parent device containing the phandle pointer
* @name: Name of phandle property in the parent device node
* @devp: Returns pointer to new device or NULL if not found
* Return: 0 on success, -ve on failure
*/
int i2c_get_chip_by_phandle(const struct udevice *parent, const char *prop_name,
struct udevice **devp);
/**
* i2c_chip_of_to_plat() - Decode standard I2C platform data
*