vibrator 37 drivers/input/misc/gpio-vibra.c static int gpio_vibrator_start(struct gpio_vibrator *vibrator) vibrator 39 drivers/input/misc/gpio-vibra.c struct device *pdev = vibrator->input->dev.parent; vibrator 42 drivers/input/misc/gpio-vibra.c if (!vibrator->vcc_on) { vibrator 43 drivers/input/misc/gpio-vibra.c err = regulator_enable(vibrator->vcc); vibrator 48 drivers/input/misc/gpio-vibra.c vibrator->vcc_on = true; vibrator 51 drivers/input/misc/gpio-vibra.c gpiod_set_value_cansleep(vibrator->gpio, 1); vibrator 56 drivers/input/misc/gpio-vibra.c static void gpio_vibrator_stop(struct gpio_vibrator *vibrator) vibrator 58 drivers/input/misc/gpio-vibra.c gpiod_set_value_cansleep(vibrator->gpio, 0); vibrator 60 drivers/input/misc/gpio-vibra.c if (vibrator->vcc_on) { vibrator 61 drivers/input/misc/gpio-vibra.c regulator_disable(vibrator->vcc); vibrator 62 drivers/input/misc/gpio-vibra.c vibrator->vcc_on = false; vibrator 68 drivers/input/misc/gpio-vibra.c struct gpio_vibrator *vibrator = vibrator 71 drivers/input/misc/gpio-vibra.c if (vibrator->running) vibrator 72 drivers/input/misc/gpio-vibra.c gpio_vibrator_start(vibrator); vibrator 74 drivers/input/misc/gpio-vibra.c gpio_vibrator_stop(vibrator); vibrator 80 drivers/input/misc/gpio-vibra.c struct gpio_vibrator *vibrator = input_get_drvdata(dev); vibrator 87 drivers/input/misc/gpio-vibra.c vibrator->running = level; vibrator 88 drivers/input/misc/gpio-vibra.c schedule_work(&vibrator->play_work); vibrator 95 drivers/input/misc/gpio-vibra.c struct gpio_vibrator *vibrator = input_get_drvdata(input); vibrator 97 drivers/input/misc/gpio-vibra.c cancel_work_sync(&vibrator->play_work); vibrator 98 drivers/input/misc/gpio-vibra.c gpio_vibrator_stop(vibrator); vibrator 99 drivers/input/misc/gpio-vibra.c vibrator->running = false; vibrator 104 drivers/input/misc/gpio-vibra.c struct gpio_vibrator *vibrator; vibrator 107 drivers/input/misc/gpio-vibra.c vibrator = devm_kzalloc(&pdev->dev, sizeof(*vibrator), GFP_KERNEL); vibrator 108 drivers/input/misc/gpio-vibra.c if (!vibrator) vibrator 111 drivers/input/misc/gpio-vibra.c vibrator->input = devm_input_allocate_device(&pdev->dev); vibrator 112 drivers/input/misc/gpio-vibra.c if (!vibrator->input) vibrator 115 drivers/input/misc/gpio-vibra.c vibrator->vcc = devm_regulator_get(&pdev->dev, "vcc"); vibrator 116 drivers/input/misc/gpio-vibra.c err = PTR_ERR_OR_ZERO(vibrator->vcc); vibrator 124 drivers/input/misc/gpio-vibra.c vibrator->gpio = devm_gpiod_get(&pdev->dev, "enable", GPIOD_OUT_LOW); vibrator 125 drivers/input/misc/gpio-vibra.c err = PTR_ERR_OR_ZERO(vibrator->gpio); vibrator 133 drivers/input/misc/gpio-vibra.c INIT_WORK(&vibrator->play_work, gpio_vibrator_play_work); vibrator 135 drivers/input/misc/gpio-vibra.c vibrator->input->name = "gpio-vibrator"; vibrator 136 drivers/input/misc/gpio-vibra.c vibrator->input->id.bustype = BUS_HOST; vibrator 137 drivers/input/misc/gpio-vibra.c vibrator->input->close = gpio_vibrator_close; vibrator 139 drivers/input/misc/gpio-vibra.c input_set_drvdata(vibrator->input, vibrator); vibrator 140 drivers/input/misc/gpio-vibra.c input_set_capability(vibrator->input, EV_FF, FF_RUMBLE); vibrator 142 drivers/input/misc/gpio-vibra.c err = input_ff_create_memless(vibrator->input, NULL, vibrator 149 drivers/input/misc/gpio-vibra.c err = input_register_device(vibrator->input); vibrator 155 drivers/input/misc/gpio-vibra.c platform_set_drvdata(pdev, vibrator); vibrator 163 drivers/input/misc/gpio-vibra.c struct gpio_vibrator *vibrator = platform_get_drvdata(pdev); vibrator 165 drivers/input/misc/gpio-vibra.c cancel_work_sync(&vibrator->play_work); vibrator 166 drivers/input/misc/gpio-vibra.c if (vibrator->running) vibrator 167 drivers/input/misc/gpio-vibra.c gpio_vibrator_stop(vibrator); vibrator 175 drivers/input/misc/gpio-vibra.c struct gpio_vibrator *vibrator = platform_get_drvdata(pdev); vibrator 177 drivers/input/misc/gpio-vibra.c if (vibrator->running) vibrator 178 drivers/input/misc/gpio-vibra.c gpio_vibrator_start(vibrator); vibrator 44 drivers/input/misc/msm-vibrator.c static void msm_vibrator_write(struct msm_vibrator *vibrator, int offset, vibrator 47 drivers/input/misc/msm-vibrator.c writel(value, vibrator->base + offset); vibrator 50 drivers/input/misc/msm-vibrator.c static int msm_vibrator_start(struct msm_vibrator *vibrator) vibrator 54 drivers/input/misc/msm-vibrator.c mutex_lock(&vibrator->mutex); vibrator 56 drivers/input/misc/msm-vibrator.c if (!vibrator->enabled) { vibrator 57 drivers/input/misc/msm-vibrator.c ret = clk_set_rate(vibrator->clk, 24000); vibrator 59 drivers/input/misc/msm-vibrator.c dev_err(&vibrator->input->dev, vibrator 64 drivers/input/misc/msm-vibrator.c ret = clk_prepare_enable(vibrator->clk); vibrator 66 drivers/input/misc/msm-vibrator.c dev_err(&vibrator->input->dev, vibrator 71 drivers/input/misc/msm-vibrator.c ret = regulator_enable(vibrator->vcc); vibrator 73 drivers/input/misc/msm-vibrator.c dev_err(&vibrator->input->dev, vibrator 75 drivers/input/misc/msm-vibrator.c clk_disable(vibrator->clk); vibrator 79 drivers/input/misc/msm-vibrator.c gpiod_set_value_cansleep(vibrator->enable_gpio, 1); vibrator 81 drivers/input/misc/msm-vibrator.c vibrator->enabled = true; vibrator 84 drivers/input/misc/msm-vibrator.c d_reg_val = 127 - ((126 * vibrator->magnitude) / 0xffff); vibrator 85 drivers/input/misc/msm-vibrator.c msm_vibrator_write(vibrator, REG_CFG_RCGR, vibrator 89 drivers/input/misc/msm-vibrator.c msm_vibrator_write(vibrator, REG_M, 1); vibrator 90 drivers/input/misc/msm-vibrator.c msm_vibrator_write(vibrator, REG_N, 128); vibrator 91 drivers/input/misc/msm-vibrator.c msm_vibrator_write(vibrator, REG_D, d_reg_val); vibrator 92 drivers/input/misc/msm-vibrator.c msm_vibrator_write(vibrator, REG_CMD_RCGR, 1); vibrator 93 drivers/input/misc/msm-vibrator.c msm_vibrator_write(vibrator, REG_CBCR, 1); vibrator 96 drivers/input/misc/msm-vibrator.c mutex_unlock(&vibrator->mutex); vibrator 101 drivers/input/misc/msm-vibrator.c static void msm_vibrator_stop(struct msm_vibrator *vibrator) vibrator 103 drivers/input/misc/msm-vibrator.c mutex_lock(&vibrator->mutex); vibrator 105 drivers/input/misc/msm-vibrator.c if (vibrator->enabled) { vibrator 106 drivers/input/misc/msm-vibrator.c gpiod_set_value_cansleep(vibrator->enable_gpio, 0); vibrator 107 drivers/input/misc/msm-vibrator.c regulator_disable(vibrator->vcc); vibrator 108 drivers/input/misc/msm-vibrator.c clk_disable(vibrator->clk); vibrator 109 drivers/input/misc/msm-vibrator.c vibrator->enabled = false; vibrator 112 drivers/input/misc/msm-vibrator.c mutex_unlock(&vibrator->mutex); vibrator 117 drivers/input/misc/msm-vibrator.c struct msm_vibrator *vibrator = container_of(work, vibrator 121 drivers/input/misc/msm-vibrator.c if (vibrator->magnitude) vibrator 122 drivers/input/misc/msm-vibrator.c msm_vibrator_start(vibrator); vibrator 124 drivers/input/misc/msm-vibrator.c msm_vibrator_stop(vibrator); vibrator 130 drivers/input/misc/msm-vibrator.c struct msm_vibrator *vibrator = input_get_drvdata(dev); vibrator 132 drivers/input/misc/msm-vibrator.c mutex_lock(&vibrator->mutex); vibrator 135 drivers/input/misc/msm-vibrator.c vibrator->magnitude = effect->u.rumble.strong_magnitude; vibrator 137 drivers/input/misc/msm-vibrator.c vibrator->magnitude = effect->u.rumble.weak_magnitude; vibrator 139 drivers/input/misc/msm-vibrator.c mutex_unlock(&vibrator->mutex); vibrator 141 drivers/input/misc/msm-vibrator.c schedule_work(&vibrator->worker); vibrator 148 drivers/input/misc/msm-vibrator.c struct msm_vibrator *vibrator = input_get_drvdata(input); vibrator 150 drivers/input/misc/msm-vibrator.c cancel_work_sync(&vibrator->worker); vibrator 151 drivers/input/misc/msm-vibrator.c msm_vibrator_stop(vibrator); vibrator 156 drivers/input/misc/msm-vibrator.c struct msm_vibrator *vibrator; vibrator 160 drivers/input/misc/msm-vibrator.c vibrator = devm_kzalloc(&pdev->dev, sizeof(*vibrator), GFP_KERNEL); vibrator 161 drivers/input/misc/msm-vibrator.c if (!vibrator) vibrator 164 drivers/input/misc/msm-vibrator.c vibrator->input = devm_input_allocate_device(&pdev->dev); vibrator 165 drivers/input/misc/msm-vibrator.c if (!vibrator->input) vibrator 168 drivers/input/misc/msm-vibrator.c vibrator->vcc = devm_regulator_get(&pdev->dev, "vcc"); vibrator 169 drivers/input/misc/msm-vibrator.c if (IS_ERR(vibrator->vcc)) { vibrator 170 drivers/input/misc/msm-vibrator.c if (PTR_ERR(vibrator->vcc) != -EPROBE_DEFER) vibrator 172 drivers/input/misc/msm-vibrator.c PTR_ERR(vibrator->vcc)); vibrator 173 drivers/input/misc/msm-vibrator.c return PTR_ERR(vibrator->vcc); vibrator 176 drivers/input/misc/msm-vibrator.c vibrator->enable_gpio = devm_gpiod_get(&pdev->dev, "enable", vibrator 178 drivers/input/misc/msm-vibrator.c if (IS_ERR(vibrator->enable_gpio)) { vibrator 179 drivers/input/misc/msm-vibrator.c if (PTR_ERR(vibrator->enable_gpio) != -EPROBE_DEFER) vibrator 181 drivers/input/misc/msm-vibrator.c PTR_ERR(vibrator->enable_gpio)); vibrator 182 drivers/input/misc/msm-vibrator.c return PTR_ERR(vibrator->enable_gpio); vibrator 185 drivers/input/misc/msm-vibrator.c vibrator->clk = devm_clk_get(&pdev->dev, "pwm"); vibrator 186 drivers/input/misc/msm-vibrator.c if (IS_ERR(vibrator->clk)) { vibrator 187 drivers/input/misc/msm-vibrator.c if (PTR_ERR(vibrator->clk) != -EPROBE_DEFER) vibrator 189 drivers/input/misc/msm-vibrator.c PTR_ERR(vibrator->clk)); vibrator 190 drivers/input/misc/msm-vibrator.c return PTR_ERR(vibrator->clk); vibrator 199 drivers/input/misc/msm-vibrator.c vibrator->base = devm_ioremap(&pdev->dev, res->start, vibrator 201 drivers/input/misc/msm-vibrator.c if (!vibrator->base) { vibrator 206 drivers/input/misc/msm-vibrator.c vibrator->enabled = false; vibrator 207 drivers/input/misc/msm-vibrator.c mutex_init(&vibrator->mutex); vibrator 208 drivers/input/misc/msm-vibrator.c INIT_WORK(&vibrator->worker, msm_vibrator_worker); vibrator 210 drivers/input/misc/msm-vibrator.c vibrator->input->name = "msm-vibrator"; vibrator 211 drivers/input/misc/msm-vibrator.c vibrator->input->id.bustype = BUS_HOST; vibrator 212 drivers/input/misc/msm-vibrator.c vibrator->input->close = msm_vibrator_close; vibrator 214 drivers/input/misc/msm-vibrator.c input_set_drvdata(vibrator->input, vibrator); vibrator 215 drivers/input/misc/msm-vibrator.c input_set_capability(vibrator->input, EV_FF, FF_RUMBLE); vibrator 217 drivers/input/misc/msm-vibrator.c ret = input_ff_create_memless(vibrator->input, NULL, vibrator 224 drivers/input/misc/msm-vibrator.c ret = input_register_device(vibrator->input); vibrator 230 drivers/input/misc/msm-vibrator.c platform_set_drvdata(pdev, vibrator); vibrator 238 drivers/input/misc/msm-vibrator.c struct msm_vibrator *vibrator = platform_get_drvdata(pdev); vibrator 240 drivers/input/misc/msm-vibrator.c cancel_work_sync(&vibrator->worker); vibrator 242 drivers/input/misc/msm-vibrator.c if (vibrator->enabled) vibrator 243 drivers/input/misc/msm-vibrator.c msm_vibrator_stop(vibrator); vibrator 251 drivers/input/misc/msm-vibrator.c struct msm_vibrator *vibrator = platform_get_drvdata(pdev); vibrator 253 drivers/input/misc/msm-vibrator.c if (vibrator->enabled) vibrator 254 drivers/input/misc/msm-vibrator.c msm_vibrator_start(vibrator); vibrator 36 drivers/input/misc/pwm-vibra.c static int pwm_vibrator_start(struct pwm_vibrator *vibrator) vibrator 38 drivers/input/misc/pwm-vibra.c struct device *pdev = vibrator->input->dev.parent; vibrator 42 drivers/input/misc/pwm-vibra.c if (!vibrator->vcc_on) { vibrator 43 drivers/input/misc/pwm-vibra.c err = regulator_enable(vibrator->vcc); vibrator 48 drivers/input/misc/pwm-vibra.c vibrator->vcc_on = true; vibrator 51 drivers/input/misc/pwm-vibra.c pwm_get_state(vibrator->pwm, &state); vibrator 52 drivers/input/misc/pwm-vibra.c pwm_set_relative_duty_cycle(&state, vibrator->level, 0xffff); vibrator 55 drivers/input/misc/pwm-vibra.c err = pwm_apply_state(vibrator->pwm, &state); vibrator 61 drivers/input/misc/pwm-vibra.c if (vibrator->pwm_dir) { vibrator 62 drivers/input/misc/pwm-vibra.c pwm_get_state(vibrator->pwm_dir, &state); vibrator 63 drivers/input/misc/pwm-vibra.c state.duty_cycle = vibrator->direction_duty_cycle; vibrator 66 drivers/input/misc/pwm-vibra.c err = pwm_apply_state(vibrator->pwm_dir, &state); vibrator 69 drivers/input/misc/pwm-vibra.c pwm_disable(vibrator->pwm); vibrator 77 drivers/input/misc/pwm-vibra.c static void pwm_vibrator_stop(struct pwm_vibrator *vibrator) vibrator 79 drivers/input/misc/pwm-vibra.c if (vibrator->pwm_dir) vibrator 80 drivers/input/misc/pwm-vibra.c pwm_disable(vibrator->pwm_dir); vibrator 81 drivers/input/misc/pwm-vibra.c pwm_disable(vibrator->pwm); vibrator 83 drivers/input/misc/pwm-vibra.c if (vibrator->vcc_on) { vibrator 84 drivers/input/misc/pwm-vibra.c regulator_disable(vibrator->vcc); vibrator 85 drivers/input/misc/pwm-vibra.c vibrator->vcc_on = false; vibrator 91 drivers/input/misc/pwm-vibra.c struct pwm_vibrator *vibrator = container_of(work, vibrator 94 drivers/input/misc/pwm-vibra.c if (vibrator->level) vibrator 95 drivers/input/misc/pwm-vibra.c pwm_vibrator_start(vibrator); vibrator 97 drivers/input/misc/pwm-vibra.c pwm_vibrator_stop(vibrator); vibrator 103 drivers/input/misc/pwm-vibra.c struct pwm_vibrator *vibrator = input_get_drvdata(dev); vibrator 105 drivers/input/misc/pwm-vibra.c vibrator->level = effect->u.rumble.strong_magnitude; vibrator 106 drivers/input/misc/pwm-vibra.c if (!vibrator->level) vibrator 107 drivers/input/misc/pwm-vibra.c vibrator->level = effect->u.rumble.weak_magnitude; vibrator 109 drivers/input/misc/pwm-vibra.c schedule_work(&vibrator->play_work); vibrator 116 drivers/input/misc/pwm-vibra.c struct pwm_vibrator *vibrator = input_get_drvdata(input); vibrator 118 drivers/input/misc/pwm-vibra.c cancel_work_sync(&vibrator->play_work); vibrator 119 drivers/input/misc/pwm-vibra.c pwm_vibrator_stop(vibrator); vibrator 124 drivers/input/misc/pwm-vibra.c struct pwm_vibrator *vibrator; vibrator 128 drivers/input/misc/pwm-vibra.c vibrator = devm_kzalloc(&pdev->dev, sizeof(*vibrator), GFP_KERNEL); vibrator 129 drivers/input/misc/pwm-vibra.c if (!vibrator) vibrator 132 drivers/input/misc/pwm-vibra.c vibrator->input = devm_input_allocate_device(&pdev->dev); vibrator 133 drivers/input/misc/pwm-vibra.c if (!vibrator->input) vibrator 136 drivers/input/misc/pwm-vibra.c vibrator->vcc = devm_regulator_get(&pdev->dev, "vcc"); vibrator 137 drivers/input/misc/pwm-vibra.c err = PTR_ERR_OR_ZERO(vibrator->vcc); vibrator 145 drivers/input/misc/pwm-vibra.c vibrator->pwm = devm_pwm_get(&pdev->dev, "enable"); vibrator 146 drivers/input/misc/pwm-vibra.c err = PTR_ERR_OR_ZERO(vibrator->pwm); vibrator 154 drivers/input/misc/pwm-vibra.c INIT_WORK(&vibrator->play_work, pwm_vibrator_play_work); vibrator 157 drivers/input/misc/pwm-vibra.c pwm_init_state(vibrator->pwm, &state); vibrator 159 drivers/input/misc/pwm-vibra.c err = pwm_apply_state(vibrator->pwm, &state); vibrator 166 drivers/input/misc/pwm-vibra.c vibrator->pwm_dir = devm_pwm_get(&pdev->dev, "direction"); vibrator 167 drivers/input/misc/pwm-vibra.c err = PTR_ERR_OR_ZERO(vibrator->pwm_dir); vibrator 171 drivers/input/misc/pwm-vibra.c pwm_init_state(vibrator->pwm_dir, &state); vibrator 173 drivers/input/misc/pwm-vibra.c err = pwm_apply_state(vibrator->pwm_dir, &state); vibrator 180 drivers/input/misc/pwm-vibra.c vibrator->direction_duty_cycle = vibrator 181 drivers/input/misc/pwm-vibra.c pwm_get_period(vibrator->pwm_dir) / 2; vibrator 183 drivers/input/misc/pwm-vibra.c &vibrator->direction_duty_cycle); vibrator 188 drivers/input/misc/pwm-vibra.c vibrator->pwm_dir = NULL; vibrator 199 drivers/input/misc/pwm-vibra.c vibrator->input->name = "pwm-vibrator"; vibrator 200 drivers/input/misc/pwm-vibra.c vibrator->input->id.bustype = BUS_HOST; vibrator 201 drivers/input/misc/pwm-vibra.c vibrator->input->dev.parent = &pdev->dev; vibrator 202 drivers/input/misc/pwm-vibra.c vibrator->input->close = pwm_vibrator_close; vibrator 204 drivers/input/misc/pwm-vibra.c input_set_drvdata(vibrator->input, vibrator); vibrator 205 drivers/input/misc/pwm-vibra.c input_set_capability(vibrator->input, EV_FF, FF_RUMBLE); vibrator 207 drivers/input/misc/pwm-vibra.c err = input_ff_create_memless(vibrator->input, NULL, vibrator 214 drivers/input/misc/pwm-vibra.c err = input_register_device(vibrator->input); vibrator 220 drivers/input/misc/pwm-vibra.c platform_set_drvdata(pdev, vibrator); vibrator 227 drivers/input/misc/pwm-vibra.c struct pwm_vibrator *vibrator = dev_get_drvdata(dev); vibrator 229 drivers/input/misc/pwm-vibra.c cancel_work_sync(&vibrator->play_work); vibrator 230 drivers/input/misc/pwm-vibra.c if (vibrator->level) vibrator 231 drivers/input/misc/pwm-vibra.c pwm_vibrator_stop(vibrator); vibrator 238 drivers/input/misc/pwm-vibra.c struct pwm_vibrator *vibrator = dev_get_drvdata(dev); vibrator 240 drivers/input/misc/pwm-vibra.c if (vibrator->level) vibrator 241 drivers/input/misc/pwm-vibra.c pwm_vibrator_start(vibrator); vibrator 106 drivers/staging/greybus/vibrator.c ATTRIBUTE_GROUPS(vibrator);