Lines Matching refs:tps
67 struct tps65086 *tps;
71 tps = devm_kzalloc(&client->dev, sizeof(*tps), GFP_KERNEL);
72 if (!tps)
75 i2c_set_clientdata(client, tps);
76 tps->dev = &client->dev;
77 tps->irq = client->irq;
79 tps->regmap = devm_regmap_init_i2c(client, &tps65086_regmap_config);
80 if (IS_ERR(tps->regmap)) {
81 dev_err(tps->dev, "Failed to initialize register map\n");
82 return PTR_ERR(tps->regmap);
86 ret = regmap_read(tps->regmap, TPS65086_DEVICEID1, &tps->chip_id);
88 dev_err(tps->dev, "Failed to read revision register 1\n");
92 ret = regmap_read(tps->regmap, TPS65086_DEVICEID2, &version);
94 dev_err(tps->dev, "Failed to read revision register 2\n");
98 dev_info(tps->dev, "Device: TPS65086%01lX, OTP: %c, Rev: %ld\n",
103 if (tps->irq > 0) {
104 ret = regmap_add_irq_chip(tps->regmap, tps->irq, IRQF_ONESHOT, 0,
105 &tps65086_irq_chip, &tps->irq_data);
107 dev_err(tps->dev, "Failed to register IRQ chip\n");
112 ret = mfd_add_devices(tps->dev, PLATFORM_DEVID_AUTO, tps65086_cells,
114 regmap_irq_get_domain(tps->irq_data));
115 if (ret && tps->irq > 0)
116 regmap_del_irq_chip(tps->irq, tps->irq_data);
123 struct tps65086 *tps = i2c_get_clientdata(client);
125 if (tps->irq > 0)
126 regmap_del_irq_chip(tps->irq, tps->irq_data);