Pull i2c updates from Wolfram Sang: - new drivers for HPE GXP and Loongson 2K/LS7A - bigger refactorings for i801 and xiic - gpio driver gained ACPI and SDA-write only support - the core converted some OF helpers to fwnode helpers - usual bunch of driver updates * tag 'i2c-for-6.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: (52 commits) MAINTAINERS: Add HPE GXP I2C Support i2c: Add GXP SoC I2C Controller dt-bindings: i2c: Add hpe,gxp-i2c i2c: xiic: Remove some dead code i2c: xiic: Add SCL frequency configuration support i2c: xiic: Update compatible with new IP version dt-bindings: i2c: xiic: Add 'xlnx,axi-iic-2.1' to compatible i2c: i801: Call i801_check_post() from i801_access() i2c: i801: Call i801_check_pre() from i801_access() i2c: i801: Centralize configuring block commands in i801_block_transaction i2c: i801: Centralize configuring non-block commands in i801_simple_transaction i2c: i801: Handle SMBAUXCTL_E32B in i801_block_transaction_by_block only i2c: i801: Add i801_simple_transaction(), complementing i801_block_transaction() Documentation: i2c: correct spelling dt-bindings: i2c: i2c-st: convert to DT schema i2c: i801: add helper i801_set_hstadd() i2c: i801: make FEATURE_BLOCK_PROC dependent on FEATURE_BLOCK_BUFFER i2c: i801: make FEATURE_HOST_NOTIFY dependent on FEATURE_IRQ i2c: i801: improve interrupt handler i2c: st: use pm_sleep_ptr to avoid ifdef CONFIG_PM_SLEEP ...
Showing the changes to include/linux/platform_data (1 of 37 files). Show all
Unified · Split
| @@ -16,16 +16,25 @@ · 15 unmodified lines | |||
| 16 | * isn't actively driven high when setting the output value high. | 16 | * isn't actively driven high when setting the output value high. |
| 17 | * gpio_get_value() must return the actual pin state even if the | 17 | * gpio_get_value() must return the actual pin state even if the |
| 18 | * pin is configured as an output. | 18 | * pin is configured as an output. |
| 19 | * @sda_is_output_only: SDA output drivers can't be turned off. | ||
| 20 | * This is for clients that can only read SDA/SCL. | ||
| 21 | * @sda_has_no_pullup: SDA is used in a non-compliant way and has no pull-up. | ||
| 22 | * Therefore disable open-drain. | ||
| 19 | * @scl_is_open_drain: SCL is set up as open drain. Same requirements | 23 | * @scl_is_open_drain: SCL is set up as open drain. Same requirements |
| 20 | * as for sda_is_open_drain apply. | 24 | * as for sda_is_open_drain apply. |
| 21 | * @scl_is_output_only: SCL output drivers cannot be turned off. | 25 | * @scl_is_output_only: SCL output drivers cannot be turned off. |
| 26 | * @scl_has_no_pullup: SCL is used in a non-compliant way and has no pull-up. | ||
| 27 | * Therefore disable open-drain. | ||
| 22 | */ | 28 | */ |
| 23 | struct i2c_gpio_platform_data { | 29 | struct i2c_gpio_platform_data { |
| 24 | int udelay; | 30 | int udelay; |
| 25 | int timeout; | 31 | int timeout; |
| 26 | unsigned int sda_is_open_drain:1; | 32 | unsigned int sda_is_open_drain:1; |
| 33 | unsigned int sda_is_output_only:1; | ||
| 34 | unsigned int sda_has_no_pullup:1; | ||
| 27 | unsigned int scl_is_open_drain:1; | 35 | unsigned int scl_is_open_drain:1; |
| 28 | unsigned int scl_is_output_only:1; | 36 | unsigned int scl_is_output_only:1; |
| 37 | unsigned int scl_has_no_pullup:1; | ||
| 29 | }; | 38 | }; |
| 30 | 39 | ||
| 31 | #endif /* _LINUX_I2C_GPIO_H */ | 40 | #endif /* _LINUX_I2C_GPIO_H */ |