Lines Matching full:fn
91 struct rmi_function *fn; member
171 static int rmi_f54_request_report(struct rmi_function *fn, u8 report_type) in rmi_f54_request_report() argument
173 struct f54_data *f54 = dev_get_drvdata(&fn->dev); in rmi_f54_request_report()
174 struct rmi_device *rmi_dev = fn->rmi_dev; in rmi_f54_request_report()
179 error = rmi_write(rmi_dev, f54->fn->fd.data_base_addr, in rmi_f54_request_report()
195 error = rmi_write(rmi_dev, fn->fd.command_base_addr, F54_GET_REPORT); in rmi_f54_request_report()
214 struct rmi_device *rmi_dev = f54->fn->rmi_dev; in rmi_f54_get_report_size()
315 ret = rmi_f54_request_report(f54->fn, reptype); in rmi_f54_buffer_queue()
317 dev_err(&f54->fn->dev, "Error requesting F54 report\n"); in rmi_f54_buffer_queue()
329 dev_err(&f54->fn->dev, "Timed out\n"); in rmi_f54_buffer_queue()
338 dev_err(&f54->fn->dev, "Error acquiring frame ptr\n"); in rmi_f54_buffer_queue()
390 "rmi4:%s", dev_name(&f54->fn->dev)); in rmi_f54_vidioc_querycap()
413 struct rmi_device *rmi_dev = f54->fn->rmi_dev; in rmi_f54_set_input()
530 struct rmi_function *fn = f54->fn; in rmi_f54_work() local
539 dev_err(&fn->dev, "Bad report size, report type=%d\n", in rmi_f54_work()
551 error = rmi_read(fn->rmi_dev, f54->fn->fd.command_base_addr, in rmi_f54_work()
554 dev_err(&fn->dev, "Failed to read back command\n"); in rmi_f54_work()
559 dev_err(&fn->dev, "Get report command timed out\n"); in rmi_f54_work()
566 rmi_dbg(RMI_DEBUG_FN, &fn->dev, "Get report command completed, reading data\n"); in rmi_f54_work()
573 error = rmi_write_block(fn->rmi_dev, in rmi_f54_work()
574 fn->fd.data_base_addr + F54_FIFO_OFFSET, in rmi_f54_work()
577 dev_err(&fn->dev, "Failed to set fifo start offset\n"); in rmi_f54_work()
581 error = rmi_read_block(fn->rmi_dev, fn->fd.data_base_addr + in rmi_f54_work()
585 dev_err(&fn->dev, "%s: read [%d bytes] returned %d\n", in rmi_f54_work()
608 static int rmi_f54_config(struct rmi_function *fn) in rmi_f54_config() argument
610 struct rmi_driver *drv = fn->rmi_dev->driver; in rmi_f54_config()
612 drv->clear_irq_bits(fn->rmi_dev, fn->irq_mask); in rmi_f54_config()
617 static int rmi_f54_detect(struct rmi_function *fn) in rmi_f54_detect() argument
623 f54 = dev_get_drvdata(&fn->dev); in rmi_f54_detect()
625 error = rmi_read_block(fn->rmi_dev, fn->fd.query_base_addr, in rmi_f54_detect()
628 dev_err(&fn->dev, "%s: Failed to query F54 properties\n", in rmi_f54_detect()
639 rmi_dbg(RMI_DEBUG_FN, &fn->dev, "F54 num_rx_electrodes: %d\n", in rmi_f54_detect()
641 rmi_dbg(RMI_DEBUG_FN, &fn->dev, "F54 num_tx_electrodes: %d\n", in rmi_f54_detect()
643 rmi_dbg(RMI_DEBUG_FN, &fn->dev, "F54 capabilities: 0x%x\n", in rmi_f54_detect()
645 rmi_dbg(RMI_DEBUG_FN, &fn->dev, "F54 clock rate: 0x%x\n", in rmi_f54_detect()
647 rmi_dbg(RMI_DEBUG_FN, &fn->dev, "F54 family: 0x%x\n", in rmi_f54_detect()
655 static int rmi_f54_probe(struct rmi_function *fn) in rmi_f54_probe() argument
661 f54 = devm_kzalloc(&fn->dev, sizeof(struct f54_data), GFP_KERNEL); in rmi_f54_probe()
665 f54->fn = fn; in rmi_f54_probe()
666 dev_set_drvdata(&fn->dev, f54); in rmi_f54_probe()
668 ret = rmi_f54_detect(fn); in rmi_f54_probe()
677 f54->report_data = devm_kzalloc(&fn->dev, in rmi_f54_probe()
694 ret = v4l2_device_register(&fn->dev, &f54->v4l2); in rmi_f54_probe()
696 dev_err(&fn->dev, "Unable to register video dev.\n"); in rmi_f54_probe()
705 f54->queue.dev = &fn->dev; in rmi_f54_probe()
720 dev_err(&fn->dev, "Unable to register video subdevice."); in rmi_f54_probe()
735 static void rmi_f54_remove(struct rmi_function *fn) in rmi_f54_remove() argument
737 struct f54_data *f54 = dev_get_drvdata(&fn->dev); in rmi_f54_remove()