Lines Matching refs:keypad_data
100 static int keypad_matrix_key_parse_dt(struct st_keyscan *keypad_data)
102 struct device *dev = keypad_data->input_dev->dev.parent;
106 error = matrix_keypad_parse_properties(dev, &keypad_data->n_rows,
107 &keypad_data->n_cols);
113 of_property_read_u32(np, "st,debounce-us", &keypad_data->debounce_us);
116 keypad_data->n_rows, keypad_data->n_cols,
117 keypad_data->debounce_us);
124 struct st_keyscan *keypad_data;
134 keypad_data = devm_kzalloc(&pdev->dev, sizeof(*keypad_data),
136 if (!keypad_data)
153 keypad_data->input_dev = input_dev;
155 error = keypad_matrix_key_parse_dt(keypad_data);
160 keypad_data->n_rows,
161 keypad_data->n_cols,
168 input_set_drvdata(input_dev, keypad_data);
171 keypad_data->base = devm_ioremap_resource(&pdev->dev, res);
172 if (IS_ERR(keypad_data->base))
173 return PTR_ERR(keypad_data->base);
175 keypad_data->clk = devm_clk_get(&pdev->dev, NULL);
176 if (IS_ERR(keypad_data->clk)) {
178 return PTR_ERR(keypad_data->clk);
181 error = clk_enable(keypad_data->clk);
187 keyscan_stop(keypad_data);
189 keypad_data->irq = platform_get_irq(pdev, 0);
190 if (keypad_data->irq < 0)
193 error = devm_request_irq(&pdev->dev, keypad_data->irq, keyscan_isr, 0,
194 pdev->name, keypad_data);
206 platform_set_drvdata(pdev, keypad_data);