linux/net/ethtool
Danielle Ratson 32b4c8b53e ethtool: Add ability to flash transceiver modules' firmware
Add the ability to flash the modules' firmware by implementing the
interface between the user space and the kernel.

Example from a succeeding implementation:

 # ethtool --flash-module-firmware swp40 file test.bin

 Transceiver module firmware flashing started for device swp40
 Transceiver module firmware flashing in progress for device swp40
 Progress: 99%
 Transceiver module firmware flashing completed for device swp40

In addition, add infrastructure that allows modules to set socket-specific
private data. This ensures that when a socket is closed from user space
during the flashing process, the right socket halts sending notifications
to user space until the work item is completed.

Signed-off-by: Danielle Ratson <danieller@nvidia.com>
Reviewed-by: Petr Machata <petrm@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2024-06-28 10:48:23 +01:00
..
bitset.c Revert "ethtool: Fix mod state of verbose no_mask bitset" 2023-10-19 09:27:12 -07:00
bitset.h ethtool: add ethnl_parse_bitset() helper 2020-03-12 15:32:32 -07:00
cabletest.c net: ethtool: remove unused struct 'cable_test_tdr_req_info' 2024-06-05 10:19:08 +01:00
channels.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
cmis_cdb.c ethtool: cmis_cdb: Add a layer for supporting CDB commands 2024-06-28 10:48:23 +01:00
cmis_fw_update.c ethtool: cmis_fw_update: add a layer for supporting firmware update using CDB 2024-06-28 10:48:23 +01:00
cmis.h ethtool: cmis_fw_update: add a layer for supporting firmware update using CDB 2024-06-28 10:48:23 +01:00
coalesce.c ethtool: provide customized dim profile management 2024-06-25 17:15:06 -07:00
common.c ethtool: remove ethtool_eee_use_linkmodes 2024-03-06 20:40:20 -08:00
common.h ethtool: remove ethtool_eee_use_linkmodes 2024-03-06 20:40:20 -08:00
debug.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
eee.c net: ethtool: eee: Remove legacy _u32 from keee 2024-02-28 12:18:05 +00:00
eeprom.c ethtool: Veto some operations during firmware flashing process 2024-06-28 10:48:22 +01:00
features.c ethtool: netlink: Add missing ethnl_ops_begin/complete 2024-01-18 13:21:06 +01:00
fec.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
ioctl.c ethtool: Veto some operations during firmware flashing process 2024-06-28 10:48:22 +01:00
linkinfo.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
linkmodes.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
linkstate.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
Makefile ethtool: cmis_fw_update: add a layer for supporting firmware update using CDB 2024-06-28 10:48:23 +01:00
mm.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
module_fw.h ethtool: Add ability to flash transceiver modules' firmware 2024-06-28 10:48:23 +01:00
module.c ethtool: Add ability to flash transceiver modules' firmware 2024-06-28 10:48:23 +01:00
netlink.c ethtool: Add ability to flash transceiver modules' firmware 2024-06-28 10:48:23 +01:00
netlink.h ethtool: Add ability to flash transceiver modules' firmware 2024-06-28 10:48:23 +01:00
pause.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
phc_vclocks.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
plca.c Revert "Introduce PHY listing and link_topology tracking" 2024-01-04 16:05:47 -08:00
privflags.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
pse-pd.c net: ethtool: pse-pd: Expand pse commands with the PSE PoE interface 2024-04-18 18:27:02 -07:00
rings.c ethtool: add SET for TCP_DATA_SPLIT ringparam 2023-12-13 18:22:02 -08:00
rss.c net: ethtool: add support for symmetric-xor RSS hash 2023-12-13 22:07:16 -08:00
stats.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
strset.c Revert "Introduce PHY listing and link_topology tracking" 2024-01-04 16:05:47 -08:00
tsinfo.c ethtool: init tsinfo stats if requested 2024-06-01 15:11:09 -07:00
tunnels.c genetlink: use attrs from struct genl_info 2023-08-15 15:00:45 -07:00
wol.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00