Home
last modified time | relevance | path

Searched refs:ibi (Results 1 – 7 of 7) sorted by relevance

/Linux-v6.6/drivers/i3c/master/mipi-i3c-hci/
Dpio.c132 struct hci_pio_ibi_data ibi; member
759 struct hci_pio_ibi_data *ibi = &pio->ibi; in hci_pio_get_ibi_segment() local
763 p = ibi->data_ptr; in hci_pio_get_ibi_segment()
764 p += (ibi->seg_len - ibi->seg_cnt) / 4; in hci_pio_get_ibi_segment()
766 while ((nr_words = ibi->seg_cnt/4)) { in hci_pio_get_ibi_segment()
775 ibi->seg_cnt -= nr_words * 4; in hci_pio_get_ibi_segment()
776 DBG("now %d left %d", nr_words * 4, ibi->seg_cnt); in hci_pio_get_ibi_segment()
781 if (ibi->seg_cnt) { in hci_pio_get_ibi_segment()
794 DBG("trailing %d", ibi->seg_cnt); in hci_pio_get_ibi_segment()
797 while (ibi->seg_cnt--) { in hci_pio_get_ibi_segment()
[all …]
/Linux-v6.6/drivers/i3c/master/
Di3c-master-cdns.c406 } ibi; member
876 s16 ibi; member
964 data->ibi = -1; in cdns_i3c_master_attach_i3c_dev()
1319 if (id >= master->ibi.num_slots || (ibir & IBIR_ERROR)) in cdns_i3c_master_handle_ibi()
1322 dev = master->ibi.slots[id]; in cdns_i3c_master_handle_ibi()
1323 spin_lock(&master->ibi.lock); in cdns_i3c_master_handle_ibi()
1341 dev->ibi->max_payload_len); in cdns_i3c_master_handle_ibi()
1346 spin_unlock(&master->ibi.lock); in cdns_i3c_master_handle_ibi()
1422 spin_lock_irqsave(&master->ibi.lock, flags); in cdns_i3c_master_disable_ibi()
1423 sirmap = readl(master->regs + SIR_MAP_DEV_REG(data->ibi)); in cdns_i3c_master_disable_ibi()
[all …]
Dsvc-i3c-master.c205 } ibi; member
216 int ibi; member
352 master->ibi.tbq_slot = slot; in svc_i3c_master_handle_ibi()
432 if (master->ibi.tbq_slot) { in svc_i3c_master_ibi_work()
435 master->ibi.tbq_slot); in svc_i3c_master_ibi_work()
436 master->ibi.tbq_slot = NULL; in svc_i3c_master_ibi_work()
448 i3c_master_queue_ibi(dev, master->ibi.tbq_slot); in svc_i3c_master_ibi_work()
449 master->ibi.tbq_slot = NULL; in svc_i3c_master_ibi_work()
644 data->ibi = -1; in svc_i3c_master_attach_i3c_dev()
1369 if (dev->ibi->max_payload_len > SVC_I3C_FIFO_SIZE) { in svc_i3c_master_request_ibi()
[all …]
Ddw-i3c-master.c1271 if (!dev || !dev->ibi) { in dw_i3c_master_handle_ibi_sir()
1285 if (dev->ibi->max_payload_len < len) { in dw_i3c_master_handle_ibi_sir()
1288 len, dev->ibi->max_payload_len); in dw_i3c_master_handle_ibi_sir()
/Linux-v6.6/drivers/i3c/
Dmaster.c1911 if (olddev->ibi) { in i3c_master_add_i3c_dev_locked()
1912 ibireq.handler = olddev->ibi->handler; in i3c_master_add_i3c_dev_locked()
1913 ibireq.max_payload_len = olddev->ibi->max_payload_len; in i3c_master_add_i3c_dev_locked()
1914 ibireq.num_slots = olddev->ibi->num_slots; in i3c_master_add_i3c_dev_locked()
1916 if (olddev->ibi->enabled) { in i3c_master_add_i3c_dev_locked()
2374 atomic_inc(&dev->ibi->pending_ibis); in i3c_master_queue_ibi()
2391 dev->ibi->handler(dev->dev, &payload); in i3c_master_handle_ibi()
2394 if (atomic_dec_and_test(&dev->ibi->pending_ibis)) in i3c_master_handle_ibi()
2395 complete(&dev->ibi->all_ibis_handled); in i3c_master_handle_ibi()
2767 if (!dev->ibi) in i3c_dev_disable_ibi_locked()
[all …]
/Linux-v6.6/include/linux/i3c/
Dmaster.h211 struct i3c_device_ibi_info *ibi; member
/Linux-v6.6/
DCREDITS1366 E: pgmdsg@ibi.com