| /linux/drivers/i3c/master/mipi-i3c-hci/ |
| H A D | core.c | 118 static void i3c_hci_set_master_dyn_addr(struct i3c_hci *hci) in i3c_hci_set_master_dyn_addr() argument 121 MASTER_DYNAMIC_ADDR(hci->dyn_addr) | MASTER_DYNAMIC_ADDR_VALID); in i3c_hci_set_master_dyn_addr() 126 struct i3c_hci *hci = to_i3c_hci(m); in i3c_hci_bus_init() local 130 if (hci->cmd == &mipi_i3c_hci_cmd_v1) { in i3c_hci_bus_init() 131 ret = mipi_i3c_hci_dat_v1.init(hci); in i3c_hci_bus_init() 139 hci->dyn_addr = ret; in i3c_hci_bus_init() 140 i3c_hci_set_master_dyn_addr(hci); in i3c_hci_bus_init() 142 info.dyn_addr = hci->dyn_addr; in i3c_hci_bus_init() 147 ret = hci->io->init(hci); in i3c_hci_bus_init() 152 if (hci->quirks & HCI_QUIRK_RESP_BUF_THLD) in i3c_hci_bus_init() [all …]
|
| H A D | pio.c | 22 #define pio_reg_read(r) readl(hci->PIO_regs + (PIO_##r)) 23 #define pio_reg_write(r, v) writel(v, hci->PIO_regs + (PIO_##r)) 137 static void __hci_pio_init(struct i3c_hci *hci, u32 *size_val_ptr) in __hci_pio_init() argument 140 struct hci_pio_data *pio = hci->io_data; in __hci_pio_init() 153 if (hci->version_major == 1) { in __hci_pio_init() 192 static void hci_pio_suspend(struct i3c_hci *hci) in hci_pio_suspend() argument 196 i3c_hci_sync_irq_inactive(hci); in hci_pio_suspend() 199 static void hci_pio_resume(struct i3c_hci *hci) in hci_pio_resume() argument 201 __hci_pio_init(hci, NULL); in hci_pio_resume() 204 static int hci_pio_init(struct i3c_hci *hci) in hci_pio_init() argument [all …]
|
| H A D | dma.c | 40 #define rhs_reg_read(r) readl(hci->RHS_regs + (RHS_##r)) 41 #define rhs_reg_write(r, v) writel(v, hci->RHS_regs + (RHS_##r)) 148 static void hci_dma_cleanup(struct i3c_hci *hci) in hci_dma_cleanup() argument 150 struct hci_rings_data *rings = hci->io_data; in hci_dma_cleanup() 164 i3c_hci_sync_irq_inactive(hci); in hci_dma_cleanup() 178 struct i3c_hci *hci = data; in hci_dma_free() local 179 struct hci_rings_data *rings = hci->io_data; in hci_dma_free() 209 hci->io_data = NULL; in hci_dma_free() 212 static void hci_dma_init_rh(struct i3c_hci *hci, struct hci_rh_data *rh, int i) in hci_dma_init_rh() argument 266 static void hci_dma_init_rings(struct i3c_hci *hci) in hci_dma_init_rings() argument [all …]
|
| H A D | hci.h | 27 #define reg_read(r) readl(hci->base_regs + (r)) 28 #define reg_write(r, v) writel(v, hci->base_regs + (r)) 123 bool (*irq_handler)(struct i3c_hci *hci); 124 int (*queue_xfer)(struct i3c_hci *hci, struct hci_xfer *xfer, int n); 125 bool (*dequeue_xfer)(struct i3c_hci *hci, struct hci_xfer *xfer, int n); 126 int (*handle_error)(struct i3c_hci *hci, struct hci_xfer *xfer, int n); 127 int (*request_ibi)(struct i3c_hci *hci, struct i3c_dev_desc *dev, 129 void (*free_ibi)(struct i3c_hci *hci, struct i3c_dev_desc *dev); 130 void (*recycle_ibi_slot)(struct i3c_hci *hci, struct i3c_dev_desc *dev, 132 int (*init)(struct i3c_hci *hci); [all …]
|
| H A D | cmd_v1.c | 120 static enum hci_cmd_mode get_i3c_mode(struct i3c_hci *hci) in get_i3c_mode() argument 122 struct i3c_bus *bus = i3c_master_get_bus(&hci->master); in get_i3c_mode() 135 static enum hci_cmd_mode get_i2c_mode(struct i3c_hci *hci) in get_i2c_mode() argument 137 struct i3c_bus *bus = i3c_master_get_bus(&hci->master); in get_i2c_mode() 168 static int hci_cmd_v1_prep_ccc(struct i3c_hci *hci, in hci_cmd_v1_prep_ccc() argument 173 enum hci_cmd_mode mode = get_i3c_mode(hci); in hci_cmd_v1_prep_ccc() 184 ret = mipi_i3c_hci_dat_v1.get_index(hci, ccc_addr); in hci_cmd_v1_prep_ccc() 218 static void hci_cmd_v1_prep_i3c_xfer(struct i3c_hci *hci, in hci_cmd_v1_prep_i3c_xfer() argument 224 enum hci_cmd_mode mode = get_i3c_mode(hci); in hci_cmd_v1_prep_i3c_xfer() 253 static void hci_cmd_v1_prep_i2c_xfer(struct i3c_hci *hci, in hci_cmd_v1_prep_i2c_xfer() argument [all …]
|
| H A D | cmd_v2.c | 64 static unsigned int get_i3c_rate_idx(struct i3c_hci *hci) in get_i3c_rate_idx() argument 66 struct i3c_bus *bus = i3c_master_get_bus(&hci->master); in get_i3c_rate_idx() 81 static unsigned int get_i2c_rate_idx(struct i3c_hci *hci) in get_i2c_rate_idx() argument 83 struct i3c_bus *bus = i3c_master_get_bus(&hci->master); in get_i2c_rate_idx() 90 static void hci_cmd_v2_prep_private_xfer(struct i3c_hci *hci, in hci_cmd_v2_prep_private_xfer() argument 149 static int hci_cmd_v2_prep_ccc(struct i3c_hci *hci, struct hci_xfer *xfer, in hci_cmd_v2_prep_ccc() argument 153 unsigned int rate = get_i3c_rate_idx(hci); in hci_cmd_v2_prep_ccc() 159 hci_cmd_v2_prep_private_xfer(hci, xfer, ccc_addr, mode, rate); in hci_cmd_v2_prep_ccc() 215 static void hci_cmd_v2_prep_i3c_xfer(struct i3c_hci *hci, in hci_cmd_v2_prep_i3c_xfer() argument 220 unsigned int rate = get_i3c_rate_idx(hci); in hci_cmd_v2_prep_i3c_xfer() [all …]
|
| H A D | cmd.h | 51 (atomic_inc_return_relaxed(&hci->next_cmd_tid) % (1U << 4)) 55 int (*prep_ccc)(struct i3c_hci *hci, struct hci_xfer *xfer, 57 void (*prep_i3c_xfer)(struct i3c_hci *hci, struct i3c_dev_desc *dev, 59 void (*prep_i2c_xfer)(struct i3c_hci *hci, struct i2c_dev_desc *dev, 61 int (*perform_daa)(struct i3c_hci *hci);
|
| H A D | dct_v1.c | 20 void i3c_hci_dct_get_val(struct i3c_hci *hci, unsigned int dct_idx, in i3c_hci_dct_get_val() argument 23 void __iomem *reg = hci->DCT_regs + dct_idx * 4 * 4; in i3c_hci_dct_get_val()
|
| H A D | hci_quirks.c | 25 void amd_set_od_pp_timing(struct i3c_hci *hci) in amd_set_od_pp_timing() argument 37 void amd_set_resp_buf_thld(struct i3c_hci *hci) in amd_set_resp_buf_thld() argument
|
| H A D | ibi.h | 30 i3c_hci_addr_to_dev(struct i3c_hci *hci, unsigned int addr) in i3c_hci_addr_to_dev() argument 32 struct i3c_bus *bus = i3c_master_get_bus(&hci->master); in i3c_hci_addr_to_dev()
|
| H A D | dct.h | 13 void i3c_hci_dct_get_val(struct i3c_hci *hci, unsigned int dct_idx,
|
| /linux/net/nfc/hci/ |
| H A D | Makefile | 6 obj-$(CONFIG_NFC_HCI) += hci.o 8 hci-y := core.o hcp.o command.o llc.o llc_nop.o 9 hci-$(CONFIG_NFC_SHDLC) += llc_shdlc.o
|
| /linux/drivers/net/wireless/realtek/rtw88/ |
| H A D | ps.c | 74 request = rtw_read8(rtwdev, rtwdev->hci.rpwm_addr); in rtw_power_mode_change() 75 confirm = rtw_read8(rtwdev, rtwdev->hci.cpwm_addr); in rtw_power_mode_change() 90 rtw_write8(rtwdev, rtwdev->hci.rpwm_addr, request); in rtw_power_mode_change() 96 rtwdev->hci.cpwm_addr); in rtw_power_mode_change()
|
| H A D | mac.c | 282 rpwm = rtw_read8(rtwdev, rtwdev->hci.rpwm_addr); in rtw_mac_power_switch() 287 rtw_write8(rtwdev, rtwdev->hci.rpwm_addr, rpwm); in rtw_mac_power_switch() 1098 if (rtwdev->hci.bulkout_num == 2) in txdma_queue_mapping() 1100 else if (rtwdev->hci.bulkout_num == 3) in txdma_queue_mapping() 1102 else if (rtwdev->hci.bulkout_num == 4) in txdma_queue_mapping() 1214 if (rtwdev->hci.type == RTW_HCI_TYPE_USB) { in __priority_queue_cfg() 1277 if (rtwdev->hci.bulkout_num == 2) in priority_queue_cfg() 1279 else if (rtwdev->hci.bulkout_num == 3) in priority_queue_cfg() 1281 else if (rtwdev->hci.bulkout_num == 4) in priority_queue_cfg()
|
| H A D | rtw88xxa.c | 86 if (rtwdev->hci.type == RTW_HCI_TYPE_USB) in rtw8812a_read_rfe_type() 88 else if (rtwdev->hci.type == RTW_HCI_TYPE_PCIE) in rtw8812a_read_rfe_type() 116 if (rtwdev->hci.type == RTW_HCI_TYPE_USB) in rtw8812a_read_rfe_type() 118 else if (rtwdev->hci.type == RTW_HCI_TYPE_PCIE) in rtw8812a_read_rfe_type() 196 efuse->hw_cap.hci, efuse->hw_cap.bw, efuse->hw_cap.ptcl, in rtw88xxa_read_usb_type() 431 if (rtwdev->hci.bulkout_num == 2) in rtw88xxau_init_queue_reserved_page() 433 else if (rtwdev->hci.bulkout_num == 3) in rtw88xxau_init_queue_reserved_page() 435 else if (rtwdev->hci.bulkout_num == 4) in rtw88xxau_init_queue_reserved_page() 469 u8 bulkout_num = rtwdev->hci.bulkout_num; in rtw88xxau_init_queue_priority()
|
| /linux/Documentation/ABI/testing/ |
| H A D | sysfs-driver-hid | 2 What: /sys/class/bluetooth/hci<addr>/<hid-bus>:<vendor-id>:<product-id>.<num>/report_descriptor 13 What: /sys/class/bluetooth/hci<addr>/<hid-bus>:<vendor-id>:<product-id>.<num>/country
|
| /linux/Documentation/driver-api/nfc/ |
| H A D | index.rst | 10 nfc-hci
|
| /linux/net/nfc/nci/ |
| H A D | Makefile | 8 nci-objs := core.o data.o lib.o ntf.o rsp.o hci.o
|
| /linux/net/nfc/ |
| H A D | Makefile | 8 obj-$(CONFIG_NFC_HCI) += hci/
|
| H A D | Kconfig | 32 source "net/nfc/hci/Kconfig"
|
| /linux/Documentation/admin-guide/ |
| H A D | btmrvl.rst | 95 Issuing a raw hci command 98 Use hcitool to issue raw hci command, refer to hcitool manual
|
| /linux/Documentation/ABI/stable/ |
| H A D | sysfs-class-bluetooth | 1 What: /sys/class/bluetooth/hci<index>/reset
|
| /linux/drivers/usb/musb/ |
| H A D | da8xx.c | 232 static irqreturn_t da8xx_musb_interrupt(int irq, void *hci) in da8xx_musb_interrupt() argument 234 struct musb *musb = hci; in da8xx_musb_interrupt()
|
| /linux/drivers/ufs/host/ |
| H A D | ufs-exynos.h | 267 EXYNOS_UFS_MMIO_FUNC(hci);
|
| /linux/net/bluetooth/ |
| H A D | hci_core.c | 3108 bt_cb(skb)->hci.req_flags |= HCI_REQ_START; in hci_send_cmd() 3935 return (bt_cb(skb)->hci.req_flags & HCI_REQ_START); in hci_req_is_complete() 4000 if (skb && bt_cb(skb)->hci.req_flags & HCI_REQ_SKB) { in hci_req_cmd_complete() 4001 *req_complete_skb = bt_cb(skb)->hci.req_complete_skb; in hci_req_cmd_complete() 4005 if (skb && bt_cb(skb)->hci.req_complete) { in hci_req_cmd_complete() 4006 *req_complete = bt_cb(skb)->hci.req_complete; in hci_req_cmd_complete() 4013 if (bt_cb(skb)->hci.req_flags & HCI_REQ_START) { in hci_req_cmd_complete() 4018 if (bt_cb(skb)->hci.req_flags & HCI_REQ_SKB) in hci_req_cmd_complete() 4019 *req_complete_skb = bt_cb(skb)->hci.req_complete_skb; in hci_req_cmd_complete() 4021 *req_complete = bt_cb(skb)->hci.req_complete; in hci_req_cmd_complete()
|