Lines Matching refs:bd

112 static int bd9571mwv_identify(struct bd9571mwv *bd)  in bd9571mwv_identify()  argument
114 struct device *dev = bd->dev; in bd9571mwv_identify()
118 ret = regmap_read(bd->regmap, BD9571MWV_VENDOR_CODE, &value); in bd9571mwv_identify()
131 ret = regmap_read(bd->regmap, BD9571MWV_PRODUCT_CODE, &value); in bd9571mwv_identify()
144 ret = regmap_read(bd->regmap, BD9571MWV_PRODUCT_REVISION, &value); in bd9571mwv_identify()
159 struct bd9571mwv *bd; in bd9571mwv_probe() local
162 bd = devm_kzalloc(&client->dev, sizeof(*bd), GFP_KERNEL); in bd9571mwv_probe()
163 if (!bd) in bd9571mwv_probe()
166 i2c_set_clientdata(client, bd); in bd9571mwv_probe()
167 bd->dev = &client->dev; in bd9571mwv_probe()
168 bd->irq = client->irq; in bd9571mwv_probe()
170 bd->regmap = devm_regmap_init_i2c(client, &bd9571mwv_regmap_config); in bd9571mwv_probe()
171 if (IS_ERR(bd->regmap)) { in bd9571mwv_probe()
172 dev_err(bd->dev, "Failed to initialize register map\n"); in bd9571mwv_probe()
173 return PTR_ERR(bd->regmap); in bd9571mwv_probe()
176 ret = bd9571mwv_identify(bd); in bd9571mwv_probe()
180 ret = regmap_add_irq_chip(bd->regmap, bd->irq, IRQF_ONESHOT, 0, in bd9571mwv_probe()
181 &bd9571mwv_irq_chip, &bd->irq_data); in bd9571mwv_probe()
183 dev_err(bd->dev, "Failed to register IRQ chip\n"); in bd9571mwv_probe()
187 ret = mfd_add_devices(bd->dev, PLATFORM_DEVID_AUTO, bd9571mwv_cells, in bd9571mwv_probe()
189 regmap_irq_get_domain(bd->irq_data)); in bd9571mwv_probe()
191 regmap_del_irq_chip(bd->irq, bd->irq_data); in bd9571mwv_probe()
200 struct bd9571mwv *bd = i2c_get_clientdata(client); in bd9571mwv_remove() local
202 regmap_del_irq_chip(bd->irq, bd->irq_data); in bd9571mwv_remove()