Lines Matching defs:pcf

27 int pcf50633_read_block(struct pcf50633 *pcf, u8 reg,
32 ret = regmap_raw_read(pcf->regmap, reg, data, nr_regs);
41 int pcf50633_write_block(struct pcf50633 *pcf , u8 reg,
44 return regmap_raw_write(pcf->regmap, reg, data, nr_regs);
48 u8 pcf50633_reg_read(struct pcf50633 *pcf, u8 reg)
53 ret = regmap_read(pcf->regmap, reg, &val);
61 int pcf50633_reg_write(struct pcf50633 *pcf, u8 reg, u8 val)
63 return regmap_write(pcf->regmap, reg, val);
67 int pcf50633_reg_set_bit_mask(struct pcf50633 *pcf, u8 reg, u8 mask, u8 val)
69 return regmap_update_bits(pcf->regmap, reg, mask, val);
73 int pcf50633_reg_clear_bits(struct pcf50633 *pcf, u8 reg, u8 val)
75 return regmap_update_bits(pcf->regmap, reg, val, 0);
83 struct pcf50633 *pcf = dev_get_drvdata(dev);
102 dump[n1] = pcf50633_reg_read(pcf, n + n1);
114 struct pcf50633 *pcf = dev_get_drvdata(dev);
118 pcf->resume_reason[0],
119 pcf->resume_reason[1],
120 pcf->resume_reason[2],
121 pcf->resume_reason[3],
122 pcf->resume_reason[4]);
140 pcf50633_client_dev_register(struct pcf50633 *pcf, const char *name,
147 dev_err(pcf->dev, "Failed to allocate %s\n", name);
151 (*pdev)->dev.parent = pcf->dev;
155 dev_err(pcf->dev, "Failed to register %s: %d\n", name, ret);
168 struct pcf50633 *pcf;
179 pcf = devm_kzalloc(&client->dev, sizeof(*pcf), GFP_KERNEL);
180 if (!pcf)
183 i2c_set_clientdata(client, pcf);
184 pcf->dev = &client->dev;
185 pcf->pdata = pdata;
187 mutex_init(&pcf->lock);
189 pcf->regmap = devm_regmap_init_i2c(client, &pcf50633_regmap_config);
190 if (IS_ERR(pcf->regmap)) {
191 ret = PTR_ERR(pcf->regmap);
192 dev_err(pcf->dev, "Failed to allocate register map: %d\n", ret);
196 version = pcf50633_reg_read(pcf, 0);
197 variant = pcf50633_reg_read(pcf, 1);
199 dev_err(pcf->dev, "Unable to probe pcf50633\n");
204 dev_info(pcf->dev, "Probed device version %d variant %d\n",
207 pcf50633_irq_init(pcf, client->irq);
210 pcf50633_client_dev_register(pcf, "pcf50633-input", &pcf->input_pdev);
211 pcf50633_client_dev_register(pcf, "pcf50633-rtc", &pcf->rtc_pdev);
212 pcf50633_client_dev_register(pcf, "pcf50633-mbc", &pcf->mbc_pdev);
213 pcf50633_client_dev_register(pcf, "pcf50633-adc", &pcf->adc_pdev);
214 pcf50633_client_dev_register(pcf, "pcf50633-backlight", &pcf->bl_pdev);
224 pdev->dev.parent = pcf->dev;
234 pcf->regulator_pdev[i] = pdev;
239 dev_warn(pcf->dev, "error creating sysfs entries\n");
242 pdata->probe_done(pcf);
250 platform_device_put(pcf->regulator_pdev[j]);
257 struct pcf50633 *pcf = i2c_get_clientdata(client);
261 pcf50633_irq_free(pcf);
263 platform_device_unregister(pcf->input_pdev);
264 platform_device_unregister(pcf->rtc_pdev);
265 platform_device_unregister(pcf->mbc_pdev);
266 platform_device_unregister(pcf->adc_pdev);
267 platform_device_unregister(pcf->bl_pdev);
270 platform_device_unregister(pcf->regulator_pdev[i]);