On 10/07/2018 09:44:15+0000, Denis OSTERLAND wrote:
>  static int
>  isl1208_probe(struct i2c_client *client, const struct i2c_device_id *id)
>  {
> @@ -642,6 +744,7 @@ isl1208_probe(struct i2c_client *client, const struct 
> i2c_device_id *id)
>       rtc->ops = &isl1208_rtc_ops;
> 
>       i2c_set_clientdata(client, rtc);
> +     dev_set_drvdata(&rtc->dev, client);
> 
>       rc = isl1208_i2c_get_sr(client);
>       if (rc < 0) {
> @@ -653,6 +756,18 @@ isl1208_probe(struct i2c_client *client, const struct 
> i2c_device_id *id)
>               dev_warn(&client->dev, "rtc power failure detected, "
>                        "please set clock.\n");
> 
> +     if (id->driver_data == TYPE_ISL1219) {
> +             rc = ISL1219_REG_EV_EVEN;
> +             rc = i2c_smbus_write_byte_data(client, ISL1219_REG_EV, rc);

I'd pass ISL1219_REG_EV_EVEN directly instead of assigning it to rc.

> +             if (rc < 0) {
> +                     dev_err(&client->dev, "could not enable tamper 
> detection\n");
> +                     return rc;
> +             }
> +             rc = rtc_add_group(rtc, &isl1219_rtc_sysfs_files);
> +             if (rc)
> +                     return rc;
> +     }
> +
>       rc = sysfs_create_group(&client->dev.kobj, &isl1208_rtc_sysfs_files);
>       if (rc)
>               return rc;
> @@ -686,8 +801,9 @@ isl1208_remove(struct i2c_client *client)
>  }
> 
>  static const struct i2c_device_id isl1208_id[] = {
> -     { "isl1208", 0 },
> -     { "isl1218", 0 },
> +     { "isl1208", TYPE_ISL1208 },
> +     { "isl1218", TYPE_ISL1218 },
> +     { "isl1219", TYPE_ISL1219 },
>       { }
>  };
>  MODULE_DEVICE_TABLE(i2c, isl1208_id);
> @@ -695,6 +811,7 @@ MODULE_DEVICE_TABLE(i2c, isl1208_id);
>  static const struct of_device_id isl1208_of_match[] = {
>       { .compatible = "isil,isl1208" },
>       { .compatible = "isil,isl1218" },
> +     { .compatible = "isil,isl1219" },
>       { }
>  };
>  MODULE_DEVICE_TABLE(of, isl1208_of_match);
> --
> 2.18.0
> 
> 
> 
> Diehl Connectivity Solutions GmbH
> Geschäftsführung: Horst Leonberger
> Sitz der Gesellschaft: Nürnberg - Registergericht: Amtsgericht
> Nürnberg: HRB 32315
> ___________________________________________________________________________________________________
> 
> Der Inhalt der vorstehenden E-Mail ist nicht rechtlich bindend. Diese E-Mail 
> enthaelt vertrauliche und/oder rechtlich geschuetzte Informationen.
> Informieren Sie uns bitte, wenn Sie diese E-Mail faelschlicherweise erhalten 
> haben. Bitte loeschen Sie in diesem Fall die Nachricht.
> Jede unerlaubte Form der Reproduktion, Bekanntgabe, Aenderung, Verteilung 
> und/oder Publikation dieser E-Mail ist strengstens untersagt.
> The contents of the above mentioned e-mail is not legally binding. This 
> e-mail contains confidential and/or legally protected information. Please 
> inform us if you have received this e-mail by
> mistake and delete it in such a case. Each unauthorized reproduction, 
> disclosure, alteration, distribution and/or publication of this e-mail is 
> strictly prohibited.

-- 
Alexandre Belloni, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering
https://bootlin.com

Reply via email to