/linux/drivers/mailbox/ |
A D | arm_mhu_db.c | 56 unsigned int doorbell; member 61 unsigned int doorbell) in mhu_db_mbox_to_channel() argument 69 chan_info->doorbell == doorbell) in mhu_db_mbox_to_channel() 98 unsigned int doorbell; in mhu_db_mbox_irq_to_channel() local 109 for (doorbell = 0; bits; doorbell++) { in mhu_db_mbox_irq_to_channel() 118 pchan, doorbell); in mhu_db_mbox_irq_to_channel() 194 unsigned int doorbell = spec->args[1]; in mhu_db_mbox_xlate() local 201 pchan, doorbell); in mhu_db_mbox_xlate() 209 pchan, doorbell); in mhu_db_mbox_xlate() 231 chan_info->doorbell = doorbell; in mhu_db_mbox_xlate() [all …]
|
A D | arm_mhuv2.c | 234 u32 doorbell; member 264 writel_relaxed(BIT(priv->doorbell), in mhuv2_doorbell_rx_startup() 274 writel_relaxed(BIT(priv->doorbell), in mhuv2_doorbell_rx_shutdown() 282 writel_relaxed(BIT(priv->doorbell), in mhuv2_doorbell_read_data() 293 BIT(priv->doorbell)); in mhuv2_doorbell_last_tx_done() 305 writel_relaxed(BIT(priv->doorbell), in mhuv2_doorbell_send_data() 801 doorbell = pa->args[1]; in mhuv2_mbox_of_xlate() 802 if (doorbell >= MHUV2_STAT_BITS) in mhuv2_mbox_of_xlate() 817 if (doorbell) in mhuv2_mbox_of_xlate() 830 pa->args[0], doorbell); in mhuv2_mbox_of_xlate() [all …]
|
/linux/drivers/scsi/esas2r/ |
A D | esas2r_int.c | 59 u32 doorbell; in esas2r_polled_interrupt() local 77 if (doorbell != 0) in esas2r_polled_interrupt() 107 u32 doorbell; in esas2r_adapter_interrupt() local 119 if (doorbell != 0) in esas2r_adapter_interrupt() 135 u32 doorbell; in esas2r_msi_interrupt() local 151 if (doorbell != 0) in esas2r_msi_interrupt() 667 if (!(doorbell & DRBL_FORCE_INT)) { in esas2r_doorbell_interrupt() 675 if (doorbell & DRBL_RESET_BUS) in esas2r_doorbell_interrupt() 678 if (doorbell & DRBL_FORCE_INT) in esas2r_doorbell_interrupt() 686 if (doorbell & DRBL_FW_RESET) { in esas2r_doorbell_interrupt() [all …]
|
A D | esas2r_init.c | 940 u32 doorbell; in esas2r_check_adapter() local 967 if (doorbell == 0xFFFFFFFF) { in esas2r_check_adapter() 983 doorbell); in esas2r_check_adapter() 1021 doorbell); in esas2r_check_adapter() 1110 doorbell); in esas2r_check_adapter() 1130 if (doorbell & DRBL_POWER_DOWN) in esas2r_check_adapter() 1507 u32 doorbell; in esas2r_power_down_notify_firmware() local 1516 doorbell); in esas2r_power_down_notify_firmware() 1540 u32 doorbell; in esas2r_power_down() local 1557 doorbell = in esas2r_power_down() [all …]
|
A D | esas2r_io.c | 679 u32 doorbell; in esas2r_handle_pending_reset() local 681 doorbell = esas2r_read_register_dword(a, MU_DOORBELL_OUT); in esas2r_handle_pending_reset() 682 if (doorbell == 0xFFFFFFFF || !(doorbell & DRBL_FORCE_INT)) { in esas2r_handle_pending_reset() 685 u32 ver = (doorbell & DRBL_FW_VER_MSK); in esas2r_handle_pending_reset() 689 doorbell); in esas2r_handle_pending_reset()
|
/linux/Documentation/devicetree/bindings/mailbox/ |
A D | arm,mhu.yaml | 21 The MHU hardware also allows operations in doorbell mode. The MHU drives the 28 interrupt. Each of the 32-bits can be used as "doorbell" to alert the remote 38 - arm,mhu-doorbell 52 - const: arm,mhu-doorbell 75 Set to 2 in doorbell mode and represents index of the channel and doorbell 128 compatible = "arm,mhu-doorbell", "arm,primecell"; 141 mboxes = <&mhuB 0 0>, /* LP-NonSecure, 1st doorbell */ 142 <&mhuB 0 1>; /* LP-NonSecure, 2nd doorbell */ 159 mboxes = <&mhuB 1 2>, /* HP-NonSecure, 3rd doorbell */ 160 <&mhuB 1 3>; /* HP-NonSecure, 4th doorbell */
|
A D | arm,mhuv2.yaml | 38 and the entire window shall be used in doorbell protocol. Optionally, data 97 for doorbell protocol, and 1 is reserved for data-transfer protocol. 102 doorbell protocol this field signifies the number of 32-bit channel 103 windows that implement the doorbell protocol. For data-transfer protocol, 119 windows are used in doorbell protocol (64 doorbells), followed by 1, 5 and 135 doorbell, or data-transfer protocol, and the second argument (only 136 relevant in doorbell protocol, should be 0 otherwise) represents the 137 doorbell number within the 32 bit wide channel window. 142 mboxes = <&mhu 0 5>; // Channel Window Group 0, doorbell 5. 143 mboxes = <&mhu 1 7>; // Channel Window Group 1, doorbell 7. [all …]
|
A D | nvidia,tegra186-hsp.txt | 24 - "doorbell" 39 For doorbells, the second cell specifies the index of the doorbell to use. 65 interrupt-names = "doorbell";
|
/linux/drivers/gpu/drm/radeon/ |
A D | radeon_device.c | 343 rdev->doorbell.num_doorbells = min_t(u32, rdev->doorbell.size / sizeof(u32), RADEON_MAX_DOORBELLS); in radeon_doorbell_init() 344 if (rdev->doorbell.num_doorbells == 0) in radeon_doorbell_init() 347 rdev->doorbell.ptr = ioremap(rdev->doorbell.base, rdev->doorbell.num_doorbells * sizeof(u32)); in radeon_doorbell_init() 348 if (rdev->doorbell.ptr == NULL) { in radeon_doorbell_init() 354 memset(&rdev->doorbell.used, 0, sizeof(rdev->doorbell.used)); in radeon_doorbell_init() 368 iounmap(rdev->doorbell.ptr); in radeon_doorbell_fini() 369 rdev->doorbell.ptr = NULL; in radeon_doorbell_fini() 383 unsigned long offset = find_first_zero_bit(rdev->doorbell.used, rdev->doorbell.num_doorbells); in radeon_doorbell_get() 386 *doorbell = offset; in radeon_doorbell_get() 403 if (doorbell < rdev->doorbell.num_doorbells) in radeon_doorbell_free() [all …]
|
/linux/drivers/cpufreq/ |
A D | pcc-cpufreq.c | 97 static struct acpi_generic_address doorbell; variable 123 acpi_read(&doorbell_value, &doorbell); in pcc_cmd() 125 &doorbell); in pcc_cmd() 487 doorbell.space_id = reg_resource->space_id; in pcc_cpufreq_probe() 488 doorbell.bit_width = reg_resource->bit_width; in pcc_cpufreq_probe() 489 doorbell.bit_offset = reg_resource->bit_offset; in pcc_cpufreq_probe() 490 doorbell.access_width = 4; in pcc_cpufreq_probe() 491 doorbell.address = reg_resource->address; in pcc_cpufreq_probe() 495 doorbell.space_id, doorbell.bit_width, doorbell.bit_offset, in pcc_cpufreq_probe() 496 doorbell.access_width, reg_resource->address); in pcc_cpufreq_probe()
|
/linux/Documentation/driver-api/ |
A D | ntb.rst | 7 fabric. Existing NTB hardware supports a common feature set: doorbell 146 round before writing the peer doorbell register. 154 * delay\_ms - Specify the delay between receiving a doorbell 155 interrupt event and setting the peer doorbell register for the next 158 series begins once all the doorbell bits have been shifted out of 168 NTB doorbell, and reading and writing scratchpads. 179 This file is used to read, set, and clear the local doorbell. Not 182 set (eg: `echo 's 0x0101' > db`). To clear the doorbell, write `c` 185 This file is used to read, set, and clear the local doorbell mask. 188 This file is used to read, set, and clear the peer doorbell. [all …]
|
/linux/include/linux/mfd/ |
A D | intel-m10-bmc.h | 90 #define rsu_prog(doorbell) FIELD_GET(DRBL_RSU_PROGRESS, doorbell) argument 91 #define rsu_stat(doorbell) FIELD_GET(DRBL_RSU_STATUS, doorbell) argument
|
/linux/include/linux/mlx4/ |
A D | cq.h | 151 __be32 doorbell[2]; in mlx4_cq_arm() local 166 doorbell[0] = cpu_to_be32(sn << 28 | cmd | cq->cqn); in mlx4_cq_arm() 167 doorbell[1] = cpu_to_be32(ci); in mlx4_cq_arm() 169 mlx4_write64(doorbell, uar_page + MLX4_CQ_DOORBELL, doorbell_lock); in mlx4_cq_arm()
|
/linux/drivers/net/wireless/ath/ath11k/ |
A D | mhi.c | 23 .doorbell = MHI_DB_BRST_DISABLE, 37 .doorbell = MHI_DB_BRST_DISABLE, 51 .doorbell = MHI_DB_BRST_DISABLE, 65 .doorbell = MHI_DB_BRST_DISABLE, 116 .doorbell = MHI_DB_BRST_DISABLE, 130 .doorbell = MHI_DB_BRST_DISABLE, 144 .doorbell = MHI_DB_BRST_DISABLE, 158 .doorbell = MHI_DB_BRST_DISABLE,
|
/linux/include/linux/mlx5/ |
A D | cq.h | 155 __be32 doorbell[2]; in mlx5_cq_arm() local 169 doorbell[0] = cpu_to_be32(sn << 28 | cmd | ci); in mlx5_cq_arm() 170 doorbell[1] = cpu_to_be32(cq->cqn); in mlx5_cq_arm() 172 mlx5_write64(doorbell, uar_page + MLX5_CQ_DOORBELL); in mlx5_cq_arm()
|
/linux/arch/mips/include/asm/octeon/ |
A D | cvmx-pko-defs.h | 797 uint64_t doorbell:20; member 809 uint64_t doorbell:20; 817 uint64_t doorbell:20; member 1817 uint64_t doorbell:1; member 1821 uint64_t doorbell:1; 1830 uint64_t doorbell:1; member 1834 uint64_t doorbell:1; 1842 uint64_t doorbell:1; member 1846 uint64_t doorbell:1; 1961 uint64_t doorbell:1; member [all …]
|
A D | cvmx-pko.h | 120 uint64_t doorbell; member 606 status->doorbell = debug9.cn38xx.doorbell; in cvmx_pko_get_port_status() 612 status->doorbell = debug8.cn50xx.doorbell; in cvmx_pko_get_port_status()
|
/linux/Documentation/PCI/endpoint/ |
A D | pci-ntb-function.rst | 113 CMD_CONFIGURE_DOORBELL (0x1): Command to configure doorbell. Before 155 same BAR. The initial portion of the region will have doorbell 178 in order to raise doorbell. EPF NTB can use either MSI or MSI-X to 179 ring doorbell (MSI-X support will be added later). MSI uses same 192 will ensure there is no difference while raising the doorbell. 198 for raising doorbell interrupt. This will be populated by EPF NTB 228 scratchpad, doorbell, one or more memory windows) to be modeled to achieve 335 Above diagram shows how the doorbell and memory window 1 is mapped so that 336 HOST1 can raise doorbell interrupt on HOST2 and also how HOST1 can access 337 buffers exposed by HOST2 using memory window1 (MW1). Here doorbell and [all …]
|
/linux/drivers/irqchip/ |
A D | irq-loongson-pch-msi.c | 20 phys_addr_t doorbell; member 79 msg->address_hi = upper_32_bits(priv->doorbell); in pch_msi_compose_msi_msg() 80 msg->address_lo = lower_32_bits(priv->doorbell); in pch_msi_compose_msi_msg() 212 priv->doorbell = res.start; in pch_msi_init()
|
/linux/drivers/usb/host/ |
A D | xhci-trace.h | 556 TP_PROTO(u32 slot, u32 doorbell), 557 TP_ARGS(slot, doorbell), 560 __field(u32, doorbell) 565 __entry->doorbell = doorbell; 568 xhci_decode_doorbell(__get_str(str), __entry->slot, __entry->doorbell) 573 TP_PROTO(u32 slot, u32 doorbell), 574 TP_ARGS(slot, doorbell) 578 TP_PROTO(u32 slot, u32 doorbell), 579 TP_ARGS(slot, doorbell)
|
/linux/Documentation/devicetree/bindings/powerpc/fsl/ |
A D | srio-rmu.txt | 23 and doorbell units. 33 (msg-unit, doorbell, port-write). 54 and doorbell units. 84 and doorbell units. 114 and doorbell units. 151 doorbell-unit@400 {
|
/linux/include/trace/events/ |
A D | ufs.h | 271 unsigned int tag, u32 doorbell, int transfer_len, u32 intr, 274 TP_ARGS(dev_name, str_t, tag, doorbell, transfer_len, 281 __field(u32, doorbell) 293 __entry->doorbell = doorbell; 304 __entry->tag, __entry->doorbell, __entry->transfer_len,
|
/linux/drivers/virt/ |
A D | fsl_hypervisor.c | 323 param.ret = ev_doorbell_send(param.doorbell); in ioctl_doorbell() 482 uint32_t doorbell; /* The doorbell handle */ member 489 static void fsl_hv_queue_doorbell(uint32_t doorbell) in fsl_hv_queue_doorbell() argument 499 dbq->q[dbq->tail] = doorbell; in fsl_hv_queue_doorbell() 557 fsl_hv_queue_doorbell(dbisr->doorbell); in fsl_hv_state_change_isr() 856 dbisr->doorbell = be32_to_cpup(handle); in fsl_hypervisor_init() 895 dbisr->doorbell); in fsl_hypervisor_init()
|
/linux/drivers/bus/mhi/ |
A D | pci_generic.c | 59 .doorbell = MHI_DB_BRST_DISABLE, \ 74 .doorbell = MHI_DB_BRST_DISABLE, \ 89 .doorbell = MHI_DB_BRST_DISABLE, \ 118 .doorbell = MHI_DB_BRST_ENABLE, \ 133 .doorbell = MHI_DB_BRST_ENABLE, \ 148 .doorbell = MHI_DB_BRST_DISABLE, \ 163 .doorbell = MHI_DB_BRST_DISABLE, \ 178 .doorbell = MHI_DB_BRST_DISABLE, \ 193 .doorbell = MHI_DB_BRST_DISABLE, \
|
/linux/drivers/net/ethernet/mellanox/mlx5/core/lib/ |
A D | eq.h | 29 __be32 __iomem *doorbell; member 70 __be32 __iomem *addr = eq->doorbell + (arm ? 0 : 2); in eq_update_ci()
|