Lines Matching refs:ibi
197 } ibi; member
208 int ibi; member
344 master->ibi.tbq_slot = slot; in svc_i3c_master_handle_ibi()
424 if (master->ibi.tbq_slot) { in svc_i3c_master_ibi_work()
427 master->ibi.tbq_slot); in svc_i3c_master_ibi_work()
428 master->ibi.tbq_slot = NULL; in svc_i3c_master_ibi_work()
440 i3c_master_queue_ibi(dev, master->ibi.tbq_slot); in svc_i3c_master_ibi_work()
441 master->ibi.tbq_slot = NULL; in svc_i3c_master_ibi_work()
636 data->ibi = -1; in svc_i3c_master_attach_i3c_dev()
1345 if (dev->ibi->max_payload_len > SVC_I3C_FIFO_SIZE) { in svc_i3c_master_request_ibi()
1347 dev->ibi->max_payload_len, SVC_I3C_FIFO_SIZE); in svc_i3c_master_request_ibi()
1355 spin_lock_irqsave(&master->ibi.lock, flags); in svc_i3c_master_request_ibi()
1356 for (i = 0; i < master->ibi.num_slots; i++) { in svc_i3c_master_request_ibi()
1357 if (!master->ibi.slots[i]) { in svc_i3c_master_request_ibi()
1358 data->ibi = i; in svc_i3c_master_request_ibi()
1359 master->ibi.slots[i] = dev; in svc_i3c_master_request_ibi()
1363 spin_unlock_irqrestore(&master->ibi.lock, flags); in svc_i3c_master_request_ibi()
1365 if (i < master->ibi.num_slots) in svc_i3c_master_request_ibi()
1381 spin_lock_irqsave(&master->ibi.lock, flags); in svc_i3c_master_free_ibi()
1382 master->ibi.slots[data->ibi] = NULL; in svc_i3c_master_free_ibi()
1383 data->ibi = -1; in svc_i3c_master_free_ibi()
1384 spin_unlock_irqrestore(&master->ibi.lock, flags); in svc_i3c_master_free_ibi()
1529 spin_lock_init(&master->ibi.lock); in svc_i3c_master_probe()
1530 master->ibi.num_slots = SVC_I3C_MAX_DEVS; in svc_i3c_master_probe()
1531 master->ibi.slots = devm_kcalloc(&pdev->dev, master->ibi.num_slots, in svc_i3c_master_probe()
1532 sizeof(*master->ibi.slots), in svc_i3c_master_probe()
1534 if (!master->ibi.slots) { in svc_i3c_master_probe()