[PATCH v2 0/6] can: slcan: extend supported features (step 2)
From: Dario Binacchi
Date: Mon Jul 25 2022 - 02:55:23 EST
With this series I try to finish the task, started with the series [1],
of completely removing the dependency of the slcan driver from the
userspace slcand/slcan_attach applications.
The series, however, still lacks a patch for sending the bitrate setting
command to the adapter:
slcan_attach -b <btr> <dev>
Without at least this patch the task cannot be considered truly completed.
The idea I got is that this can only happen through the ethtool API.
Among the various operations made available by this interface I would
have used the set_regs (but only the get_regs has been developed), or,
the set_eeprom, even if the setting would not be stored in an eeprom.
IMHO it would take a set_regs operation with a `struct ethtool_wregs'
parameter similar to `struct ethtool_eeprom' without the magic field:
struct ethtool_wregs {
__u32 cmd;
__u32 offset;
__u32 len;
__u8 data[0];
};
But I am not the expert and if there was an alternative solution already
usable, it would be welcome.
The series also contains patches that remove the legacy stuff (slcan_devs,
SLCAN_MAGIC, ...) and do some module cleanup.
The series has been created on top of the patches:
can: slcan: convert comments to network style comments
can: slcan: slcan_init() convert printk(LEVEL ...) to pr_level()
can: slcan: fix whitespace issues
can: slcan: convert comparison to NULL into !val
can: slcan: clean up if/else
can: slcan: use scnprintf() as a hardening measure
can: slcan: do not report txerr and rxerr during bus-off
can: slcan: do not sleep with a spin lock held
applied to linux-next.
[1] https://lore.kernel.org/all/20220628163137.413025-1-dario.binacchi@xxxxxxxxxxxxxxxxxxxx/
Changes in v2:
- Re-add headers that export at least one symbol used by the module.
- Update the commit description.
- Drop the old "slcan" name to use the standard canX interface naming.
- Remove comment on listen-only command.
- Update the commit subject and description.
- Add the patch "MAINTAINERS: Add myself as maintainer of the SLCAN driver"
to the series.
Dario Binacchi (6):
can: slcan: remove useless header inclusions
can: slcan: remove legacy infrastructure
can: slcan: change every `slc' occurrence in `slcan'
can: slcan: use the generic can_change_mtu()
can: slcan: add support for listen-only mode
MAINTAINERS: Add maintainer for the slcan driver
MAINTAINERS | 6 +
drivers/net/can/slcan/slcan-core.c | 451 +++++++++--------------------
2 files changed, 139 insertions(+), 318 deletions(-)
--
2.32.0