/openbmc/linux/Documentation/devicetree/bindings/net/can/ |
H A D | xilinx,can.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 11 - Appana Durga Kedareswara rao <appana.durga.rao@xilinx.com> 16 - xlnx,zynq-can-1.0 17 - xlnx,axi-can-1.00.a 18 - xlnx,canfd-1.0 19 - xlnx,canfd-2.0 31 clock-names: 34 power-domains: [all …]
|
/openbmc/linux/drivers/mailbox/ |
H A D | mailbox.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Mailbox: Common code for Mailbox controllers and users 5 * Copyright (C) 2013-2014 Linaro Ltd. 22 #include "mailbox.h" 32 spin_lock_irqsave(&chan->lock, flags); in add_to_rbuf() 35 if (chan->msg_count == MBOX_TX_QUEUE_LEN) { in add_to_rbuf() 36 spin_unlock_irqrestore(&chan->lock, flags); in add_to_rbuf() 37 return -ENOBUFS; in add_to_rbuf() 40 idx = chan->msg_free; in add_to_rbuf() 41 chan->msg_data[idx] = mssg; in add_to_rbuf() [all …]
|
H A D | bcm-pdc-mailbox.c | 1 // SPDX-License-Identifier: GPL-2.0-only 7 * Broadcom PDC Mailbox Driver 9 * offload engines. For example, the PDC driver works with both SPU-M and SPU2 13 * The PDC driver registers with the Linux mailbox framework as a mailbox 15 * a mailbox channel. The PDC driver uses interrupts to determine when data 25 * descriptors from the tx and rx ring, thus processing one response at a time. 42 #include <linux/mailbox/brcm-message.h> 44 #include <linux/dma-direction.h> 45 #include <linux/dma-mapping.h> 55 * Minimum number of ring descriptor entries that must be free to tell mailbox [all …]
|
H A D | mailbox-test.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 51 size_t count, loff_t *ppos) in mbox_test_signal_write() argument 53 struct mbox_test_device *tdev = filp->private_data; in mbox_test_signal_write() 55 if (!tdev->tx_channel) { in mbox_test_signal_write() 56 dev_err(tdev->dev, "Channel cannot do Tx\n"); in mbox_test_signal_write() 57 return -EINVAL; in mbox_test_signal_write() 60 if (count > MBOX_MAX_SIG_LEN) { in mbox_test_signal_write() 61 dev_err(tdev->dev, in mbox_test_signal_write() 63 count, MBOX_MAX_SIG_LEN); in mbox_test_signal_write() 64 return -EINVAL; in mbox_test_signal_write() [all …]
|
H A D | arm_mhuv2.c | 1 // SPDX-License-Identifier: GPL-2.0 8 * An MHUv2 mailbox controller can provide up to 124 channel windows (each 32 10 * protocol modes: data-transfer and doorbell, to be used on those channel 18 * The number of registered mailbox channels is dependent on both the underlying 19 * hardware - mainly the number of channel windows implemented by the platform, 25 * for each mailbox controller, a sender device and a receiver device. 31 #include <linux/mailbox/arm_mhuv2_message.h> 45 #define LSB_MASK(n) ((1 << (n * __CHAR_BIT__)) - 1) 46 #define MHUV2_PROTOCOL_PROP "arm,mhuv2-protocols" 94 u8 pad1[0x0C - 0x04]; [all …]
|
/openbmc/linux/drivers/net/ethernet/intel/fm10k/ |
H A D | fm10k_common.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* Copyright(c) 2013 - 2018 Intel Corporation. */ 7 * fm10k_get_bus_info_generic - Generic set PCI bus info 22 hw->bus_caps.width = fm10k_bus_width_pcie_x1; in fm10k_get_bus_info_generic() 25 hw->bus_caps.width = fm10k_bus_width_pcie_x2; in fm10k_get_bus_info_generic() 28 hw->bus_caps.width = fm10k_bus_width_pcie_x4; in fm10k_get_bus_info_generic() 31 hw->bus_caps.width = fm10k_bus_width_pcie_x8; in fm10k_get_bus_info_generic() 34 hw->bus_caps.width = fm10k_bus_width_unknown; in fm10k_get_bus_info_generic() 40 hw->bus_caps.speed = fm10k_bus_speed_2500; in fm10k_get_bus_info_generic() 43 hw->bus_caps.speed = fm10k_bus_speed_5000; in fm10k_get_bus_info_generic() [all …]
|
H A D | fm10k_pci.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* Copyright(c) 2013 - 2019 Intel Corporation. */ 15 * fm10k_pci_tbl - PCI Device ID Table 35 struct fm10k_intfc *interface = hw->back; in fm10k_read_pci_cfg_word() 38 if (FM10K_REMOVED(hw->hw_addr)) in fm10k_read_pci_cfg_word() 41 pci_read_config_word(interface->pdev, reg, &value); in fm10k_read_pci_cfg_word() 50 u32 __iomem *hw_addr = READ_ONCE(hw->hw_addr); in fm10k_read_reg() 58 struct fm10k_intfc *interface = hw->back; in fm10k_read_reg() 59 struct net_device *netdev = interface->netdev; in fm10k_read_reg() 61 hw->hw_addr = NULL; in fm10k_read_reg() [all …]
|
H A D | fm10k_netdev.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* Copyright(c) 2013 - 2019 Intel Corporation. */ 10 * fm10k_setup_tx_resources - allocate Tx resources (Descriptors) 11 * @tx_ring: tx descriptor ring (for a specific queue) to setup 17 struct device *dev = tx_ring->dev; in fm10k_setup_tx_resources() 20 size = sizeof(struct fm10k_tx_buffer) * tx_ring->count; in fm10k_setup_tx_resources() 22 tx_ring->tx_buffer = vzalloc(size); in fm10k_setup_tx_resources() 23 if (!tx_ring->tx_buffer) in fm10k_setup_tx_resources() 26 u64_stats_init(&tx_ring->syncp); in fm10k_setup_tx_resources() 29 tx_ring->size = tx_ring->count * sizeof(struct fm10k_tx_desc); in fm10k_setup_tx_resources() [all …]
|
H A D | fm10k_pf.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* Copyright(c) 2013 - 2019 Intel Corporation. */ 9 * fm10k_reset_hw_pf - PF hardware reset 28 /* We assume here Tx and Rx queue 0 are owned by the PF */ in fm10k_reset_hw_pf() 39 hw->mac.reset_while_pending++; in fm10k_reset_hw_pf() 68 * fm10k_is_ari_hierarchy_pf - Indicate ARI hierarchy support 81 * fm10k_init_hw_pf - PF hardware initialization 107 fm10k_write_reg(hw, FM10K_ITR2(i), i - 1); in fm10k_init_hw_pf() 114 (hw->mac.default_vid << FM10K_TXQCTL_VID_SHIFT); in fm10k_init_hw_pf() 139 switch (hw->bus.speed) { in fm10k_init_hw_pf() [all …]
|
H A D | fm10k_vf.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* Copyright(c) 2013 - 2019 Intel Corporation. */ 8 * fm10k_stop_hw_vf - Stop Tx/Rx units 14 u8 *perm_addr = hw->mac.perm_addr; in fm10k_stop_hw_vf() 36 tdlen = hw->mac.itr_scale << FM10K_TDLEN_ITR_SCALE_SHIFT; in fm10k_stop_hw_vf() 41 for (i = 0; i < hw->mac.max_queues; i++) { in fm10k_stop_hw_vf() 46 /* Restore ITR scale in software-defined mechanism in TDLEN in fm10k_stop_hw_vf() 58 * fm10k_reset_hw_vf - VF hardware reset 71 hw->mac.reset_while_pending++; in fm10k_reset_hw_vf() 91 * fm10k_init_hw_vf - VF hardware initialization [all …]
|
/openbmc/qemu/hw/net/ |
H A D | igb_regs.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 51 /* Receive Descriptor - Advanced */ 94 /* Enable flexible speed on link-up */ 107 #define IGP02E1000_AGC_LENGTH_SHIFT 9 /* Course - 15:13, Fine - 12:9 */ 121 /* TX/RX descriptor defines */ 186 #define E1000_TXDCTL_QUEUE_ENABLE 0x02000000 /* Enable specific Tx Queue */ 201 #define E1000_DCA_TXCTRL_CPUID_MASK 0x0000001F /* Tx CPUID Mask */ 202 #define E1000_DCA_TXCTRL_DESC_DCA_EN BIT(5) /* DCA Tx Desc enable */ 203 #define E1000_DCA_TXCTRL_DESC_RRO_EN BIT(9) /* Tx rd Desc Relax Order */ 204 #define E1000_DCA_TXCTRL_TX_WB_RO_EN BIT(11) /* Tx Desc writeback RO bit */ [all …]
|
/openbmc/linux/drivers/staging/qlge/ |
H A D | qlge_mpi.c | 1 // SPDX-License-Identifier: GPL-2.0 8 /* Un-pause the RISC */ in qlge_unpause_mpi_risc() 11 return -EIO; in qlge_unpause_mpi_risc() 20 int count; in qlge_pause_mpi_risc() local 24 for (count = UDELAY_COUNT; count; count--) { in qlge_pause_mpi_risc() 30 return (count == 0) ? -ETIMEDOUT : 0; in qlge_pause_mpi_risc() 36 int count; in qlge_hard_reset_mpi_risc() local 40 for (count = UDELAY_COUNT; count; count--) { in qlge_hard_reset_mpi_risc() 48 return (count == 0) ? -ETIMEDOUT : 0; in qlge_hard_reset_mpi_risc() 107 if (qdev->func < qdev->alt_func) in qlge_own_firmware() [all …]
|
/openbmc/linux/drivers/tty/serial/ |
H A D | tegra-tcu.c | 1 // SPDX-License-Identifier: GPL-2.0 30 struct mbox_chan *tx, *rx; member 52 unsigned int count) in tegra_tcu_write_one() argument 56 value |= TCU_MBOX_NUM_BYTES(count); in tegra_tcu_write_one() 58 mbox_send_message(tcu->tx, msg); in tegra_tcu_write_one() 59 mbox_flush(tcu->tx, 1000); in tegra_tcu_write_one() 63 unsigned int count) in tegra_tcu_write() argument 69 while (i < count) { in tegra_tcu_write() 93 struct tegra_tcu *tcu = port->private_data; in tegra_tcu_uart_start_tx() 94 struct circ_buf *xmit = &port->state->xmit; in tegra_tcu_uart_start_tx() [all …]
|
/openbmc/linux/drivers/net/ethernet/netronome/nfp/ |
H A D | nfp_net_ctrl.h | 1 /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */ 2 /* Copyright (C) 2015-2018 Netronome Systems, Inc. */ 17 /* 64-bit per app capabilities */ 23 * THB-350, 32k needs to be reserved. 51 #define NFP_NET_META_IPSEC 9 /* IPsec SA index for tx and rx */ 61 /* Hash type pre-pended when a RSS hash was computed */ 74 * %NFP_NET_TXR_MAX: Maximum number of TX rings 80 /* Read/Write config words (0x0000 - 0x002c) 83 * %NFP_NET_CFG_TXRS_ENABLE: Bitmask of enabled TX rings 87 * %NFP_NET_CFG_EXN: MSI-X table entry for exceptions [all …]
|
/openbmc/linux/drivers/dma/ |
H A D | bcm-sba-raid.c | 1 // SPDX-License-Identifier: GPL-2.0-only 11 * SoC specific ring manager driver is implemented as a mailbox controller 19 * hardware devices for achieving high through-put. 22 * except submitting request to SBA hardware device via mailbox channels. 24 * mailbox channel provided by Broadcom SoC specific ring manager driver. 32 #include <linux/dma-mapping.h> 36 #include <linux/mailbox/brcm-message.h> 85 #define to_sba_request(tx) \ argument 86 container_of(tx, struct sba_request, tx) 113 struct dma_async_tx_descriptor tx; member [all …]
|
/openbmc/linux/drivers/net/ethernet/marvell/octeontx2/af/ |
H A D | mbox.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 34 # error "incorrect mailbox area sizes" 37 #define INTR_MASK(pfvfs) ((pfvfs < 64) ? (BIT_ULL(pfvfs) - 1) : (~0ull)) 43 /* Mailbox directions */ 70 u64 tx_start; /* Offset of Tx region in mbox memory */ 72 u16 tx_size; /* Size of Tx region */ 92 u16 next_msgoff; /* Offset of next msg within mailbox region */ 127 /* Mailbox message types */ 133 /* Generic mbox IDs (range 0x000 - 0x1FF) */ \ 146 /* CGX mbox IDs (range 0x200 - 0x3FF) */ \ [all …]
|
/openbmc/linux/drivers/net/ethernet/intel/ice/ |
H A D | ice_type.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 34 ((((N) + (R) - 1) / (R)) * (R))); in ice_round_to_num() 40 /* debug masks - set these bits in hw->debug_mask to control output */ 175 * order to clean the Tx scheduler as a part of the reset 202 /* NONE - used for undef/error */ 257 /* Tx/Rx queues */ 260 u16 num_txq; /* Number/Total Tx queues */ 261 u16 txq_first_id; /* First queue ID for Tx queues */ 263 /* MSI-X vectors */ 271 u8 sr_iov_1_1; /* SR-IOV enabled */ [all …]
|
/openbmc/linux/drivers/net/ethernet/qlogic/qlcnic/ |
H A D | qlcnic_83xx_hw.c | 1 // SPDX-License-Identifier: GPL-2.0-only 4 * Copyright (c) 2009-2013 QLogic Corporation 38 #define QLC_83XX_MODULE_FIBRE_10GBASE_LRM 0x1 /* 10GBase-LRM */ 39 #define QLC_83XX_MODULE_FIBRE_10GBASE_LR 0x2 /* 10GBase-LR */ 40 #define QLC_83XX_MODULE_FIBRE_10GBASE_SR 0x3 /* 10GBase-SR */ 50 #define QLC_83XX_MODULE_FIBRE_1000BASE_SX 0x7 /* 1000Base-SX */ 51 #define QLC_83XX_MODULE_FIBRE_1000BASE_LX 0x8 /* 1000Base-LX */ 52 #define QLC_83XX_MODULE_FIBRE_1000BASE_CX 0x9 /* 1000Base-CX */ 53 #define QLC_83XX_MODULE_TP_1000BASE_T 0xa /* 1000Base-T*/ 262 ahw->hw_ops = &qlcnic_83xx_hw_ops; in qlcnic_83xx_register_map() [all …]
|
/openbmc/linux/drivers/net/ethernet/intel/igb/ |
H A D | e1000_regs.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* Copyright(c) 2007 - 2018 Intel Corporation. */ 7 #define E1000_CTRL 0x00000 /* Device Control - RW */ 8 #define E1000_STATUS 0x00008 /* Device Status - RO */ 9 #define E1000_EECD 0x00010 /* EEPROM/Flash Control - RW */ 10 #define E1000_EERD 0x00014 /* EEPROM Read - RW */ 11 #define E1000_CTRL_EXT 0x00018 /* Extended Device Control - RW */ 12 #define E1000_MDIC 0x00020 /* MDI Control - RW */ 13 #define E1000_MDICNFG 0x00E04 /* MDI Config - RW */ 14 #define E1000_SCTL 0x00024 /* SerDes Control - RW */ [all …]
|
/openbmc/linux/drivers/thunderbolt/ |
H A D | nhi_regs.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * Thunderbolt driver - NHI registers 15 RING_FLAG_ISOCH_ENABLE = 1 << 27, /* TX only? */ 23 * struct ring_desc - TX/RX ring entry 25 * For TX set length/eof/sof. 44 * 12: descriptor count 53 * 12: descriptor count 69 * If RING_FLAG_E2E_FLOW_CONTROL is set then bits 13-23 must be set to 70 * the corresponding TX hop id. 79 * three bitfields: tx, rx, rx overflow [all …]
|
/openbmc/linux/drivers/net/ethernet/marvell/octeon_ep/ |
H A D | octep_main.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 88 /* Octeon mailbox data */ 97 /* Octeon device mailbox */ 121 /* Tx/Rx queue vector per interrupt. */ 224 /* Tx queues (IQ: Instruction Queue) */ 226 /* pkind value to be used in every Tx hardware descriptor */ 228 /* Pointers to Octeon Tx queues */ 249 /* IOq information of it's corresponding MSI-X interrupt. */ 252 /* Hardware Interface Tx statistics */ 260 /* Mailbox to talk to VFs */ [all …]
|
/openbmc/linux/drivers/net/can/ |
H A D | at91_can.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * at91_can.c - CAN network driver for AT91 SoC CAN controller 6 * (C) 2008, 2009, 2010, 2011 by Marc Kleine-Budde <kernel@pengutronix.de> 28 #define AT91_MB_MASK(i) ((1 << (i)) - 1) 45 /* Mailbox registers (0 <= i <= 15) */ 79 /* Mailbox Modes */ 174 return priv->devtype_data.type == AT91_DEVTYPE_SAM##_model; \ 182 return priv->devtype_data.rx_first; in get_mb_rx_first() 187 return priv->devtype_data.rx_last; in get_mb_rx_last() 192 return priv->devtype_data.rx_split; in get_mb_rx_split() [all …]
|
/openbmc/linux/drivers/net/ethernet/cavium/thunder/ |
H A D | nic.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 35 /* NIC SRIOV VF count */ 80 /* MSI-X interrupts */ 98 * for reception it will not get dropped due to non-availability 114 * Since both pkt rx and tx notifications are done with same CQ, 235 /* CQE Tx errs */ 266 int count; member 306 /* Queue count */ 329 /* mutex to protect VF's mailbox contents from concurrent access */ 371 /* MSI-X */ [all …]
|
/openbmc/linux/drivers/net/can/rcar/ |
H A D | rcar_can.c | 1 // SPDX-License-Identifier: GPL-2.0+ 2 /* Renesas R-Car CAN device driver 32 /* Mailbox configuration: 33 * mailbox 60 - 63 - Rx FIFO mailboxes 34 * mailbox 56 - 59 - Tx FIFO mailboxes 35 * non-FIFO mailboxes are not used 37 #define RCAR_CAN_N_MBX 64 /* Number of mailboxes in non-FIFO mode */ 38 #define RCAR_CAN_RX_FIFO_MBX 60 /* Mailbox - window to Rx FIFO */ 39 #define RCAR_CAN_TX_FIFO_MBX 56 /* Mailbox - window to Tx FIFO */ 42 /* Mailbox registers structure */ [all …]
|
/openbmc/linux/drivers/firmware/tegra/ |
H A D | bpmp-tegra186.c | 1 // SPDX-License-Identifier: GPL-2.0 13 #include <soc/tegra/bpmp-abi.h> 16 #include "bpmp-private.h" 28 } tx, rx; member 43 return priv->parent; in mbox_client_to_bpmp() 50 err = tegra_ivc_read_get_next_frame(channel->ivc, &channel->ib); in tegra186_bpmp_is_message_ready() 52 iosys_map_clear(&channel->ib); in tegra186_bpmp_is_message_ready() 63 err = tegra_ivc_write_get_next_frame(channel->ivc, &channel->ob); in tegra186_bpmp_is_channel_free() 65 iosys_map_clear(&channel->ob); in tegra186_bpmp_is_channel_free() 74 return tegra_ivc_read_advance(channel->ivc); in tegra186_bpmp_ack_message() [all …]
|