Re: [PATCH 1/1] platform: chrome: convert to i2c_new_scanned_device

From: Enric Balletbo i Serra
Date: Tue Dec 17 2019 - 04:53:26 EST


Hi Wolfram,

On 16/12/19 13:29, Wolfram Sang wrote:
> Move from the deprecated i2c_new_probed_device() to the new
> i2c_new_scanned_device(). Make use of the new ERRPTR if suitable.
>
> Signed-off-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>

Applied for 5.6

Thanks,
Enric
> ---
> Build tested only.
>
> drivers/platform/chrome/chromeos_laptop.c | 18 ++++++++++--------
> 1 file changed, 10 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/platform/chrome/chromeos_laptop.c b/drivers/platform/chrome/chromeos_laptop.c
> index 8723bcf10c93..4f3651fcd9fe 100644
> --- a/drivers/platform/chrome/chromeos_laptop.c
> +++ b/drivers/platform/chrome/chromeos_laptop.c
> @@ -63,7 +63,7 @@ struct acpi_peripheral {
> struct chromeos_laptop {
> /*
> * Note that we can't mark this pointer as const because
> - * i2c_new_probed_device() changes passed in I2C board info, so.
> + * i2c_new_scanned_device() changes passed in I2C board info, so.
> */
> struct i2c_peripheral *i2c_peripherals;
> unsigned int num_i2c_peripherals;
> @@ -87,8 +87,8 @@ chromes_laptop_instantiate_i2c_device(struct i2c_adapter *adapter,
> * address we scan secondary addresses. In any case the client
> * structure gets assigned primary address.
> */
> - client = i2c_new_probed_device(adapter, info, addr_list, NULL);
> - if (!client && alt_addr) {
> + client = i2c_new_scanned_device(adapter, info, addr_list, NULL);
> + if (IS_ERR(client) && alt_addr) {
> struct i2c_board_info dummy_info = {
> I2C_BOARD_INFO("dummy", info->addr),
> };
> @@ -97,9 +97,9 @@ chromes_laptop_instantiate_i2c_device(struct i2c_adapter *adapter,
> };
> struct i2c_client *dummy;
>
> - dummy = i2c_new_probed_device(adapter, &dummy_info,
> - alt_addr_list, NULL);
> - if (dummy) {
> + dummy = i2c_new_scanned_device(adapter, &dummy_info,
> + alt_addr_list, NULL);
> + if (!IS_ERR(dummy)) {
> pr_debug("%d-%02x is probed at %02x\n",
> adapter->nr, info->addr, dummy->addr);
> i2c_unregister_device(dummy);
> @@ -107,12 +107,14 @@ chromes_laptop_instantiate_i2c_device(struct i2c_adapter *adapter,
> }
> }
>
> - if (!client)
> + if (IS_ERR(client)) {
> + client = NULL;
> pr_debug("failed to register device %d-%02x\n",
> adapter->nr, info->addr);
> - else
> + } else {
> pr_debug("added i2c device %d-%02x\n",
> adapter->nr, info->addr);
> + }
>
> return client;
> }
>