Lines Matching refs:cdata
2126 struct pwm_cdev_data *cdata;
2133 cdata = kzalloc(struct_size(cdata, pwm, chip->npwm), GFP_KERNEL);
2134 if (!cdata)
2137 cdata->chip = chip;
2139 file->private_data = cdata;
2146 struct pwm_cdev_data *cdata = file->private_data;
2149 for (i = 0; i < cdata->chip->npwm; ++i) {
2150 struct pwm_device *pwm = cdata->pwm[i];
2155 pwm_put(cdata->pwm[i]);
2159 kfree(cdata);
2164 static int pwm_cdev_request(struct pwm_cdev_data *cdata, unsigned int hwpwm)
2166 struct pwm_chip *chip = cdata->chip;
2171 if (!cdata->pwm[hwpwm]) {
2186 cdata->pwm[hwpwm] = pwm;
2192 static int pwm_cdev_free(struct pwm_cdev_data *cdata, unsigned int hwpwm)
2194 struct pwm_chip *chip = cdata->chip;
2199 if (cdata->pwm[hwpwm]) {
2200 struct pwm_device *pwm = cdata->pwm[hwpwm];
2207 cdata->pwm[hwpwm] = NULL;
2213 static struct pwm_device *pwm_cdev_get_requested_pwm(struct pwm_cdev_data *cdata,
2216 struct pwm_chip *chip = cdata->chip;
2221 if (cdata->pwm[hwpwm])
2222 return cdata->pwm[hwpwm];
2230 struct pwm_cdev_data *cdata = file->private_data;
2231 struct pwm_chip *chip = cdata->chip;
2243 return pwm_cdev_request(cdata, hwpwm);
2250 return pwm_cdev_free(cdata, hwpwm);
2268 pwm = pwm_cdev_get_requested_pwm(cdata, cwf.hwpwm);
2308 pwm = pwm_cdev_get_requested_pwm(cdata, cwf.hwpwm);
2352 pwm = pwm_cdev_get_requested_pwm(cdata, cwf.hwpwm);