Lines Matching refs:pca
72 struct pca9685 *pca = to_pca(chip); in pca9685_pwm_config() local
82 regmap_write(pca->regmap, reg, LED_FULL); in pca9685_pwm_config()
93 regmap_write(pca->regmap, reg, LED_FULL); in pca9685_pwm_config()
106 regmap_write(pca->regmap, reg, (int)duty & 0xff); in pca9685_pwm_config()
113 regmap_write(pca->regmap, reg, ((int)duty >> 8) & 0xf); in pca9685_pwm_config()
120 struct pca9685 *pca = to_pca(chip); in pca9685_pwm_enable() local
132 regmap_write(pca->regmap, reg, 0); in pca9685_pwm_enable()
139 regmap_write(pca->regmap, reg, 0); in pca9685_pwm_enable()
150 regmap_update_bits(pca->regmap, reg, LED_FULL, 0x0); in pca9685_pwm_enable()
157 struct pca9685 *pca = to_pca(chip); in pca9685_pwm_disable() local
165 regmap_write(pca->regmap, reg, LED_FULL); in pca9685_pwm_disable()
173 regmap_write(pca->regmap, reg, 0x0); in pca9685_pwm_disable()
178 struct pca9685 *pca = to_pca(chip); in pca9685_pwm_request() local
180 if (pca->active_cnt++ == 0) in pca9685_pwm_request()
181 return regmap_update_bits(pca->regmap, PCA9685_MODE1, in pca9685_pwm_request()
189 struct pca9685 *pca = to_pca(chip); in pca9685_pwm_free() local
191 if (--pca->active_cnt == 0) in pca9685_pwm_free()
192 regmap_update_bits(pca->regmap, PCA9685_MODE1, MODE1_SLEEP, in pca9685_pwm_free()
216 struct pca9685 *pca; in pca9685_pwm_probe() local
220 pca = devm_kzalloc(&client->dev, sizeof(*pca), GFP_KERNEL); in pca9685_pwm_probe()
221 if (!pca) in pca9685_pwm_probe()
224 pca->regmap = devm_regmap_init_i2c(client, &pca9685_regmap_i2c_config); in pca9685_pwm_probe()
225 if (IS_ERR(pca->regmap)) { in pca9685_pwm_probe()
226 ret = PTR_ERR(pca->regmap); in pca9685_pwm_probe()
232 i2c_set_clientdata(client, pca); in pca9685_pwm_probe()
234 regmap_read(pca->regmap, PCA9685_MODE2, &mode2); in pca9685_pwm_probe()
246 regmap_write(pca->regmap, PCA9685_MODE2, mode2); in pca9685_pwm_probe()
249 regmap_write(pca->regmap, PCA9685_ALL_LED_OFF_L, 0); in pca9685_pwm_probe()
250 regmap_write(pca->regmap, PCA9685_ALL_LED_OFF_H, 0); in pca9685_pwm_probe()
252 pca->chip.ops = &pca9685_pwm_ops; in pca9685_pwm_probe()
254 pca->chip.npwm = PCA9685_MAXCHAN + 1; in pca9685_pwm_probe()
256 pca->chip.dev = &client->dev; in pca9685_pwm_probe()
257 pca->chip.base = -1; in pca9685_pwm_probe()
258 pca->chip.can_sleep = true; in pca9685_pwm_probe()
260 return pwmchip_add(&pca->chip); in pca9685_pwm_probe()
265 struct pca9685 *pca = i2c_get_clientdata(client); in pca9685_pwm_remove() local
267 regmap_update_bits(pca->regmap, PCA9685_MODE1, MODE1_SLEEP, in pca9685_pwm_remove()
270 return pwmchip_remove(&pca->chip); in pca9685_pwm_remove()