Lines Matching refs:info
45 struct pm80x_onkey_info *info = data;
49 ret = regmap_read(info->map, PM800_STATUS_1, &val);
51 dev_err(info->idev->dev.parent, "failed to read status: %d\n", ret);
56 input_report_key(info->idev, KEY_POWER, val);
57 input_sync(info->idev);
69 struct pm80x_onkey_info *info;
72 info = kzalloc(sizeof(struct pm80x_onkey_info), GFP_KERNEL);
73 if (!info)
76 info->pm80x = chip;
78 info->irq = platform_get_irq(pdev, 0);
79 if (info->irq < 0) {
84 info->map = info->pm80x->regmap;
85 if (!info->map) {
91 info->idev = input_allocate_device();
92 if (!info->idev) {
98 info->idev->name = "88pm80x_on";
99 info->idev->phys = "88pm80x_on/input0";
100 info->idev->id.bustype = BUS_I2C;
101 info->idev->dev.parent = &pdev->dev;
102 info->idev->evbit[0] = BIT_MASK(EV_KEY);
103 __set_bit(KEY_POWER, info->idev->keybit);
105 err = pm80x_request_irq(info->pm80x, info->irq, pm80x_onkey_handler,
106 IRQF_ONESHOT, "onkey", info);
109 info->irq, err);
113 err = input_register_device(info->idev);
119 platform_set_drvdata(pdev, info);
122 regmap_update_bits(info->map, PM800_RTC_MISC4, PM800_LONG_ONKEY_EN,
125 regmap_update_bits(info->map, PM800_RTC_MISC3,
133 pm80x_free_irq(info->pm80x, info->irq, info);
135 input_free_device(info->idev);
137 kfree(info);
143 struct pm80x_onkey_info *info = platform_get_drvdata(pdev);
145 pm80x_free_irq(info->pm80x, info->irq, info);
146 input_unregister_device(info->idev);
147 kfree(info);