You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As defined by I2C standard: "The minimum HIGH and LOW periods of the SCL clock specified in Table 10 determine the maximum bit transfer rates of 100 kbit/s for Standard-mode devices, 400 kbit/s for Fast-mode devices, and 1000 kbit/s for Fast-mode Plus. Devices must be able to follow transfers at their own maximum bit rates, either by being able to transmit or receive at that speed or by applying the clock synchronization procedure". Thus the standard does not require that devices always run at the maximum speed allowed at any given mode.
Current I2C API does not allow to set an arbitrary I2C bus speed instead it is using a bit-field encoded value to always select a maximum one.
Recently I2C drivers were updated to use DTS which, based on the existing Linux definitions, allows to set an arbitrary bus speed value. The existing DTS support is only partial since the DTS provided values are only accepted if they match maximum allowed speed.
I2C API should be updated to support arbitrary bus speed values.
(Imported from Jira ZEP-2611)
The text was updated successfully, but these errors were encountered:
Reported by Piotr Mienkowski:
As defined by I2C standard: "The minimum HIGH and LOW periods of the SCL clock specified in Table 10 determine the maximum bit transfer rates of 100 kbit/s for Standard-mode devices, 400 kbit/s for Fast-mode devices, and 1000 kbit/s for Fast-mode Plus. Devices must be able to follow transfers at their own maximum bit rates, either by being able to transmit or receive at that speed or by applying the clock synchronization procedure". Thus the standard does not require that devices always run at the maximum speed allowed at any given mode.
Current I2C API does not allow to set an arbitrary I2C bus speed instead it is using a bit-field encoded value to always select a maximum one.
Recently I2C drivers were updated to use DTS which, based on the existing Linux definitions, allows to set an arbitrary bus speed value. The existing DTS support is only partial since the DTS provided values are only accepted if they match maximum allowed speed.
I2C API should be updated to support arbitrary bus speed values.
(Imported from Jira ZEP-2611)
The text was updated successfully, but these errors were encountered: