Home
last modified time | relevance | path

Searched full:offload (Results 1 – 25 of 1036) sorted by relevance

12345678910>>...42

/linux-6.15/drivers/net/can/dev/
Drx-offload.c9 #include <linux/can/rx-offload.h>
24 can_rx_offload_le(struct can_rx_offload *offload, in can_rx_offload_le() argument
27 if (offload->inc) in can_rx_offload_le()
34 can_rx_offload_inc(struct can_rx_offload *offload, unsigned int *val) in can_rx_offload_inc() argument
36 if (offload->inc) in can_rx_offload_inc()
44 struct can_rx_offload *offload = container_of(napi, in can_rx_offload_napi_poll() local
47 struct net_device *dev = offload->dev; in can_rx_offload_napi_poll()
53 (skb = skb_dequeue(&offload->skb_queue))) { in can_rx_offload_napi_poll()
69 if (!skb_queue_empty(&offload->skb_queue)) in can_rx_offload_napi_poll()
70 napi_schedule(&offload->napi); in can_rx_offload_napi_poll()
[all …]
/linux-6.15/drivers/spi/
Dspi-offload.c14 * processor core to offload the work.
28 #include <linux/spi/offload/consumer.h>
29 #include <linux/spi/offload/provider.h>
30 #include <linux/spi/offload/types.h>
36 struct spi_offload *offload; member
57 * devm_spi_offload_alloc() - Allocate offload instance
61 * Offload providers should use this to allocate offload instances.
63 * Return: Pointer to new offload instance or error on failure.
68 struct spi_offload *offload; in devm_spi_offload_alloc() local
71 offload = devm_kzalloc(dev, sizeof(*offload), GFP_KERNEL); in devm_spi_offload_alloc()
[all …]
Dspi-axi-spi-engine.c21 #include <linux/spi/offload/provider.h>
160 struct spi_offload *offload; member
270 /* If we have an offload transfer, we can't rx to buffer */ in spi_engine_precompile_message()
271 if (msg->offload && xfer->rx_buf) in spi_engine_precompile_message()
578 struct spi_engine_offload *priv = msg->offload->priv; in spi_engine_offload_prepare()
612 * This protects against calling spi_optimize_message() with an offload in spi_engine_offload_prepare()
651 static void spi_engine_offload_unprepare(struct spi_offload *offload) in spi_engine_offload_unprepare() argument
653 struct spi_engine_offload *priv = offload->priv; in spi_engine_offload_unprepare()
683 msg->offload ? 0 : AXI_SPI_ENGINE_CUR_MSG_SYNC_ID)); in spi_engine_optimize_message()
687 if (msg->offload) { in spi_engine_optimize_message()
[all …]
/linux-6.15/kernel/bpf/
Doffload.c31 /* Protects offdevs, members of bpf_offload_netdev and offload members
96 netdev_warn(netdev, "failed to register for BPF offload\n"); in __bpf_offload_dev_netdev_register()
111 struct bpf_prog_offload *offload = prog->aux->offload; in __bpf_prog_offload_destroy() local
113 if (offload->dev_state) in __bpf_prog_offload_destroy()
114 offload->offdev->ops->destroy(prog); in __bpf_prog_offload_destroy()
116 list_del_init(&offload->offloads); in __bpf_prog_offload_destroy()
117 kfree(offload); in __bpf_prog_offload_destroy()
118 prog->aux->offload = NULL; in __bpf_prog_offload_destroy()
151 struct bpf_prog_offload *offload, *ptmp; in __bpf_offload_dev_netdev_unregister() local
170 list_for_each_entry(offload, &ondev->progs, offloads) in __bpf_offload_dev_netdev_unregister()
[all …]
/linux-6.15/tools/testing/selftests/drivers/net/netdevsim/
Dmacsec-offload.sh11 if ! ethtool -k $NSIM_NETDEV | grep -q 'macsec-hw-offload: on'; then
12 echo "SKIP: netdevsim doesn't support MACsec offload"
16 if ! ip link add link $NSIM_NETDEV $MACSEC_NETDEV type macsec offload mac 2>/dev/null; then
23 # test macsec offload API
26 ip link add link $NSIM_NETDEV "${MACSEC_NETDEV}" type macsec port 4 offload mac
29 …dd link $NSIM_NETDEV "${MACSEC_NETDEV}2" type macsec address "aa:bb:cc:dd:ee:ff" port 5 offload mac
32 ip link add link $NSIM_NETDEV "${MACSEC_NETDEV}3" type macsec sci abbacdde01020304 offload mac
35 ip link add link $NSIM_NETDEV "${MACSEC_NETDEV}4" type macsec port 8 offload mac 2> /dev/null
51 # can't disable macsec offload when SAs are configured
52 ip link set "${MACSEC_NETDEV}" type macsec offload off 2> /dev/null
[all …]
/linux-6.15/include/linux/can/
Drx-offload.h3 * linux/can/rx-offload.h
18 struct sk_buff *(*mailbox_read)(struct can_rx_offload *offload,
35 struct can_rx_offload *offload);
37 struct can_rx_offload *offload,
40 struct can_rx_offload *offload,
42 int can_rx_offload_irq_offload_timestamp(struct can_rx_offload *offload,
44 int can_rx_offload_irq_offload_fifo(struct can_rx_offload *offload);
45 int can_rx_offload_queue_timestamp(struct can_rx_offload *offload,
47 unsigned int can_rx_offload_get_echo_skb_queue_timestamp(struct can_rx_offload *offload,
50 int can_rx_offload_queue_tail(struct can_rx_offload *offload,
[all …]
/linux-6.15/Documentation/networking/
Dxfrm_device.rst18 Luckily, there are NICs that offer a hardware based IPsec offload which
21 hardware offload.
23 Right now, there are two types of hardware offload that kernel supports.
24 * IPsec crypto offload:
27 * IPsec packet offload:
34 Userland access to the offload is typically through a system such as
37 like this for crypto offload:
43 offload dev eth4 dir in
45 and for packet offload
51 offload packet dev eth4 dir in
[all …]
Dsegmentation-offloads.rst12 to take advantage of segmentation offload capabilities of various NICs.
15 * TCP Segmentation Offload - TSO
16 * UDP Fragmentation Offload - UFO
18 * Generic Segmentation Offload - GSO
19 * Generic Receive Offload - GRO
20 * Partial Generic Segmentation Offload - GSO_PARTIAL
24 TCP Segmentation Offload
34 offload. For this reason TSO is normally disabled if the Tx checksum
35 offload for a given device is disabled.
37 In order to support TCP segmentation offload it is necessary to populate
[all …]
Dtls-offload.rst4 Kernel TLS offload
10 Linux kernel provides TLS connection offload infrastructure. Once a TCP
24 * Packet-based NIC offload mode (``TLS_HW``) - the NIC handles crypto
28 (``ethtool`` flags ``tls-hw-tx-offload`` and ``tls-hw-rx-offload``).
29 * Full TCP NIC offload mode (``TLS_HW_RECORD``) - mode of operation where
36 offload opt-in or opt-out on per-connection basis is not currently supported.
48 for crypto offload based on the socket the packet is attached to,
63 .. kernel-figure:: tls-offload-layers.svg
64 :alt: TLS offload layers
82 network device is offload-capable and attempts the offload. In case offload
[all …]
Dchecksum-offloads.rst12 take advantage of checksum offload capabilities of various NICs.
16 * TX Checksum Offload
17 * LCO: Local Checksum Offload
18 * RCO: Remote Checksum Offload
22 * RX Checksum Offload
26 TX Checksum Offload
61 A driver declares its offload capabilities in netdev->hw_features; see
71 The stack should, for the most part, assume that checksum offload is supported
74 function compares the offload features requested by the SKB (which may include
75 other offloads besides TX Checksum Offload) and, if they are not supported or
[all …]
Dnf_flowtable.rst9 also provides hardware offload support. The flowtable supports for the layer 3
16 path, from the second packet on, you might decide to offload the flow to the
60 |-----| | 'flow offload' rule |
105 The 'flow offload' action from the forward chain 'y' adds an entry to the
111 You can identify offloaded flows through the [OFFLOAD] tag when listing your
117 …rt=52728 dport=5201 src=192.168.10.2 dst=192.168.10.1 sport=5201 dport=52728 [OFFLOAD] mark=0 use=2
183 Hardware offload
186 If your network device provides hardware offload support, you can turn it on by
187 means of the 'offload' flag in your flowtable definition, e.g.
194 flags offload;
[all …]
/linux-6.15/drivers/gpu/drm/amd/display/dc/
Ddc_helper.c43 struct dc_reg_helper_state *offload, in submit_dmub_read_modify_write() argument
46 struct dmub_rb_cmd_read_modify_write *cmd_buf = &offload->cmd_data.read_modify_write; in submit_dmub_read_modify_write()
48 offload->should_burst_write = in submit_dmub_read_modify_write()
49 (offload->same_addr_count == (DMUB_READ_MODIFY_WRITE_SEQ__MAX - 1)); in submit_dmub_read_modify_write()
51 sizeof(struct dmub_cmd_read_modify_write_sequence) * offload->reg_seq_count; in submit_dmub_read_modify_write()
53 dc_wake_and_execute_dmub_cmd(ctx, &offload->cmd_data, DM_DMUB_WAIT_TYPE_NO_WAIT); in submit_dmub_read_modify_write()
57 offload->reg_seq_count = 0; in submit_dmub_read_modify_write()
58 offload->same_addr_count = 0; in submit_dmub_read_modify_write()
62 struct dc_reg_helper_state *offload, in submit_dmub_burst_write() argument
65 struct dmub_rb_cmd_burst_write *cmd_buf = &offload->cmd_data.burst_write; in submit_dmub_burst_write()
[all …]
/linux-6.15/include/linux/spi/offload/
Dtypes.h20 /* Offload can be triggered by external hardware event. */
22 /* Offload can record and then play back TX data when triggered. */
24 /* Offload can get TX data from an external stream source. */
26 /* Offload can send RX data to an external stream sink. */
30 * struct spi_offload_config - offload configuration
32 * This is used to request an offload with specific configuration.
40 * struct spi_offload - offload instance
47 /** @ops: callbacks for offload support */
73 * struct spi_offload_ops - callbacks implemented by offload providers
78 * given offload instance.
[all …]
Dconsumer.h11 #include <linux/spi/offload/types.h>
24 struct spi_offload *offload,
28 int spi_offload_trigger_enable(struct spi_offload *offload,
31 void spi_offload_trigger_disable(struct spi_offload *offload,
35 struct spi_offload *offload);
37 struct spi_offload *offload);
/linux-6.15/net/netfilter/
Dnf_flow_table_offload.c733 const struct flow_offload_work *offload, in nf_flow_offload_rule_alloc() argument
736 const struct nf_flowtable *flowtable = offload->flowtable; in nf_flow_offload_rule_alloc()
738 struct flow_offload *flow = offload->flow; in nf_flow_offload_rule_alloc()
802 static int nf_flow_offload_alloc(const struct flow_offload_work *offload, in nf_flow_offload_alloc() argument
805 struct net *net = read_pnet(&offload->flowtable->net); in nf_flow_offload_alloc()
807 flow_rule[0] = nf_flow_offload_rule_alloc(net, offload, in nf_flow_offload_alloc()
812 flow_rule[1] = nf_flow_offload_rule_alloc(net, offload, in nf_flow_offload_alloc()
871 static int flow_offload_tuple_add(struct flow_offload_work *offload, in flow_offload_tuple_add() argument
875 return nf_flow_offload_tuple(offload->flowtable, offload->flow, in flow_offload_tuple_add()
877 offload->flowtable->priority, in flow_offload_tuple_add()
[all …]
/linux-6.15/include/linux/
Dnetdev_features.h29 NETIF_F_GRO_BIT, /* Generic receive offload */
30 NETIF_F_LRO_BIT, /* large receive offload */
61 NETIF_F_SCTP_CRC_BIT, /* SCTP checksum offload */
63 NETIF_F_RXHASH_BIT, /* Receive hashing offload */
64 NETIF_F_RXCSUM_BIT, /* Receive checksumming offload */
74 NETIF_F_HW_TC_BIT, /* Offload TC infrastructure */
75 NETIF_F_HW_ESP_BIT, /* Hardware ESP transformation offload */
76 NETIF_F_HW_ESP_TX_CSUM_BIT, /* ESP with TX checksum offload */
77 NETIF_F_RX_UDP_TUNNEL_PORT_BIT, /* Offload of RX port for UDP tunnels */
78 NETIF_F_HW_TLS_TX_BIT, /* Hardware TLS TX offload */
[all …]
/linux-6.15/drivers/net/dsa/sja1105/
Dsja1105_tas.c31 const struct tc_taprio_qopt_offload *offload; in sja1105_tas_set_runtime_params() local
33 offload = tas_data->offload[port]; in sja1105_tas_set_runtime_params()
34 if (!offload) in sja1105_tas_set_runtime_params()
39 if (max_cycle_time < offload->cycle_time) in sja1105_tas_set_runtime_params()
40 max_cycle_time = offload->cycle_time; in sja1105_tas_set_runtime_params()
41 if (latest_base_time < offload->base_time) in sja1105_tas_set_runtime_params()
42 latest_base_time = offload->base_time; in sja1105_tas_set_runtime_params()
43 if (earliest_base_time > offload->base_time) { in sja1105_tas_set_runtime_params()
44 earliest_base_time = offload->base_time; in sja1105_tas_set_runtime_params()
45 its_cycle_time = offload->cycle_time; in sja1105_tas_set_runtime_params()
[all …]
/linux-6.15/drivers/net/wireless/ath/ath12k/
Dwow.c609 struct wmi_arp_ns_offload_arg *offload) in ath12k_wow_generate_ns_mc_addr() argument
613 for (i = 0; i < offload->ipv6_count; i++) { in ath12k_wow_generate_ns_mc_addr()
614 offload->self_ipv6_addr[i][0] = 0xff; in ath12k_wow_generate_ns_mc_addr()
615 offload->self_ipv6_addr[i][1] = 0x02; in ath12k_wow_generate_ns_mc_addr()
616 offload->self_ipv6_addr[i][11] = 0x01; in ath12k_wow_generate_ns_mc_addr()
617 offload->self_ipv6_addr[i][12] = 0xff; in ath12k_wow_generate_ns_mc_addr()
618 offload->self_ipv6_addr[i][13] = in ath12k_wow_generate_ns_mc_addr()
619 offload->ipv6_addr[i][13]; in ath12k_wow_generate_ns_mc_addr()
620 offload->self_ipv6_addr[i][14] = in ath12k_wow_generate_ns_mc_addr()
621 offload->ipv6_addr[i][14]; in ath12k_wow_generate_ns_mc_addr()
[all …]
/linux-6.15/drivers/net/ethernet/netronome/nfp/flower/
Dqos_conf.c127 "Offload not supported when exceed action is not drop"); in nfp_policer_validate()
135 "Offload not supported when conform action is not continue or ok"); in nfp_policer_validate()
142 "Offload not supported when conform action is not pipe or ok"); in nfp_policer_validate()
150 "Offload not supported when conform action is ok, but action is not last"); in nfp_policer_validate()
157 "Offload not supported when peakrate/avrate/overhead is configured"); in nfp_policer_validate()
185 …NL_SET_ERR_MSG_MOD(extack, "unsupported offload: qos rate limit offload not supported on higher le… in nfp_flower_install_rate_limiter()
194 …NL_SET_ERR_MSG_MOD(extack, "unsupported offload: qos rate limit offload not supported on shared bl… in nfp_flower_install_rate_limiter()
199 …NL_SET_ERR_MSG_MOD(extack, "unsupported offload: qos rate limit offload not supported on non-VF po… in nfp_flower_install_rate_limiter()
206 "unsupported offload: qos rate limit offload only support action number 1 or 2"); in nfp_flower_install_rate_limiter()
212 "unsupported offload: qos rate limit offload requires a single action"); in nfp_flower_install_rate_limiter()
[all …]
Daction.c42 /* BOS is optional in the TC action but required for offload. */ in nfp_fl_push_mpls()
46 NL_SET_ERR_MSG_MOD(extack, "unsupported offload: BOS field must explicitly be set for MPLS push"); in nfp_fl_push_mpls()
147 …NL_SET_ERR_MSG_MOD(extack, "unsupported offload: maximum allowed action list size exceeded at LAG … in nfp_fl_pre_lag()
189 NL_SET_ERR_MSG_MOD(extack, "unsupported offload: invalid egress interface for mirred action"); in nfp_fl_output()
198 …NL_SET_ERR_MSG_MOD(extack, "unsupported offload: egress interface does not match the required tunn… in nfp_fl_output()
203 …NL_SET_ERR_MSG_MOD(extack, "unsupported offload: cannot offload more than one tunnel mirred output… in nfp_fl_output()
225 …NL_SET_ERR_MSG_MOD(extack, "unsupported offload: pre-tunnel rules not supported in loaded firmware… in nfp_fl_output()
230 …NL_SET_ERR_MSG_MOD(extack, "unsupported offload: pre-tunnel rules require single egress dev and pt… in nfp_fl_output()
244 …NL_SET_ERR_MSG_MOD(extack, "unsupported offload: ingress and egress interfaces are on different de… in nfp_fl_output()
250 NL_SET_ERR_MSG_MOD(extack, "unsupported offload: egress interface is not an nfp port"); in nfp_fl_output()
[all …]
/linux-6.15/drivers/net/ethernet/netronome/
DKconfig33 bool "NFP4000/NFP6000 TC Flower offload support"
39 Enable driver support for TC Flower offload on NFP4000 and NFP6000.
40 Say Y, if you are planning to make use of TC Flower offload
42 TC Flower offload requires specific FW to work.
58 bool "NFP IPsec crypto offload support"
63 Enable driver support IPsec crypto offload on NFP NIC.
65 offload. NOTE that IPsec crypto offload on NFP NIC
/linux-6.15/tools/testing/selftests/net/
Dbpf_offload.py523 args = "hw-tc-offload %s" % ("on" if enable else "off")
633 start_test("Test multi-attachment XDP - %s + offload..." %
635 sim.set_xdp(obj, "offload")
646 "Offload program not reported after other activated")
651 "Offload ID changed after loading other program")
654 ret, _, err = sim.set_xdp(obj, "offload", fail=False, include_stderr=True)
664 sim.unset_xdp("offload")
672 "Offload program not reported after other activated")
675 fail(offloaded != "0", "Offload ID reported with only other program left")
678 sim.set_xdp(obj, "offload")
[all …]
/linux-6.15/drivers/iio/dac/
Dad5791.c18 #include <linux/spi/offload/consumer.h>
70 * @channel_offload: channel specification for offload
89 * @offload_msg: spi message used for offload
90 * @offload_xfer: spi transfer used for offload
91 * @offload: offload device
92 * @offload_trigger: offload trigger
93 * @offload_trigger_hz: offload sample rate
111 struct spi_offload *offload; member
414 return spi_offload_trigger_enable(st->offload, st->offload_trigger, in ad5791_buffer_preenable()
422 spi_offload_trigger_disable(st->offload, st->offload_trigger); in ad5791_buffer_postdisable()
[all …]
/linux-6.15/Documentation/crypto/
Dasync-tx-api.rst34 the details of different hardware offload engine implementations. Code
36 the API will fit the chain of operations to the available offload
42 The API was initially designed to offload the memory copy and
43 xor-parity-calculations of the md-raid5 driver using the offload engines
50 the platform they are running on has offload capabilities. The
96 resources, under control of the offload engine driver, to be reused as
100 acknowledged by the application before the offload engine driver is allowed to
113 async_<operation> call. Offload engine drivers batch operations to
131 context if the offload engine driver supports interrupts, or it is
260 offload engine channel management routines
[all …]
/linux-6.15/tools/testing/selftests/drivers/net/mlxsw/
Dvxlan.sh5 # as sanitization of invalid configurations and offload indication.
428 # we offload must share certain properties such as source IP and
491 log_test "vxlan flood entry offload indication"
508 log_test "vxlan entry offload indication - initial state"
519 log_test "vxlan entry offload indication - after removal from bridge"
533 log_test "vxlan entry offload indication - after re-add to bridge"
544 log_test "vxlan entry offload indication - after removal from vxlan"
558 log_test "vxlan entry offload indication - after re-add to vxlan"
749 log_test "offload indication - attach vxlan first"
755 log_test "offload indication - set vxlan down"
[all …]

12345678910>>...42