[PATCH v3 00/15] can: grcan: Enhance driver with CANFD Support and Improvemens

Arun Muthusamy posted 15 patches 2 weeks, 3 days ago
There is a newer version of this series
.../bindings/net/can/gaisler,grcan.yaml       |  62 +++
.../devicetree/bindings/net/can/grcan.txt     |  28 -
.../devicetree/bindings/vendor-prefixes.yaml  |   2 +
MAINTAINERS                                   |   8 +
drivers/net/can/Kconfig                       |   6 +-
drivers/net/can/grcan.c                       | 507 +++++++++++++-----
6 files changed, 439 insertions(+), 174 deletions(-)
create mode 100644 Documentation/devicetree/bindings/net/can/gaisler,grcan.yaml
delete mode 100644 Documentation/devicetree/bindings/net/can/grcan.txt
[PATCH v3 00/15] can: grcan: Enhance driver with CANFD Support and Improvemens
Posted by Arun Muthusamy 2 weeks, 3 days ago
This patch series updates the GRCAN driver to support the GRCANFD core
from the GRLIB IP core library.

In addition to GRCANFD support, the updates include enhancements for
compatibility with NOEL-V (RISC-V) systems, such as matching drivers
using the 'compatible' identifier and adding support for reading clock
frequency via the common clock framework where available. The series
also includes improvements like functions for configuring
nominal bit-timing and optimizations for DMA operations.

This series also updates the driver documentation and bindings.
The old text binding is converted to YAML, a new vendor prefix
is added to reflect the updated ownership and an entry for the
driver is added to the MAINTAINERS file.

Arun Muthusamy (9):
  net: can: Convert gaisler,grcan to DT schema
  MAINTAINERS: Add maintainers for GRCAN CAN network driver
  can: grcan: Replace bit timing macros with literal values
  can: grcan: Simplify timing configuration
  can: grcan: add FD capability detection and nominal bit-timing
  can: grcan: Advertise CANFD capability
  can: grcan: Add CANFD TX support alongside legacy CAN
  can: grcan: Add CANFD RX support alongside legacy CAN
  can: grcan: Update echo skb handling to match variable length CANFD
    frame

Daniel Hellstrom (5):
  can: grcan: Add clock handling
  can: grcan: optimize DMA by 32-bit accesses
  can: grcan: set DMA mask for GRCAN and GRCANFD to 32-bit
  can: grcan: Add saving and restoring of CAN FD baud-rate registers
  can: grcan: Reserve space between cap and next register to align with
    address layout

Ludwig Rydberg (1):
  dt-bindings: Add vendor prefix for Frontgrade Gaisler AB

Changes in v3:
- can: Replaced custom bit shifting with FIELD_PREP and GENMASK.
- can: Factorized common elements of struct canfd_frame and
    struct can_frame, excluding DLC assignment.
- can: Split the patch to separate code refactoring from the
    introduction of the new feature.
- can: Remove Unused macros
- Link to v2: https://lore.kernel.org/all/20251223105604.12675-1-arun.muthusamy@gaisler.com/

Changes in v2:
- bindings: Updated commit message to explain the removal of freq
  and systemid in the new binding.
- can: S-o-b is placed last in commit messages.
- can: Add values are directly added to the struct can_bittiming_const.
- can: Replaced custom bit shifting with FIELD_PREP and GENMASK for clarity.
- can: Drop do_set_bittiming() callback
- can: Remove forward declarations, unnecessary parentheses, redundant comments
  and unnecessary debug printouts.
- can: Refactored variable declarations to follow the reverse-xmas-tree style.
- can: Adjust line breaks according to new character limits
- can: Eliminating unnecessary defines
- can: Enhance code efficiency with memcpy, use standard API to fetch device specific data and
  error handling.
- Link to v1: https://lore.kernel.org/all/20251118092115.3455-1-arun.muthusamy@gaisler.com/

 .../bindings/net/can/gaisler,grcan.yaml       |  62 +++
 .../devicetree/bindings/net/can/grcan.txt     |  28 -
 .../devicetree/bindings/vendor-prefixes.yaml  |   2 +
 MAINTAINERS                                   |   8 +
 drivers/net/can/Kconfig                       |   6 +-
 drivers/net/can/grcan.c                       | 507 +++++++++++++-----
 6 files changed, 439 insertions(+), 174 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/net/can/gaisler,grcan.yaml
 delete mode 100644 Documentation/devicetree/bindings/net/can/grcan.txt


base-commit: 4001bda0cc911fcdd3dde36963a17f4eac173d7d
--
2.51.0
Re: [PATCH v3 00/15] can: grcan: Enhance driver with CANFD Support and Improvemens
Posted by Marc Kleine-Budde 2 weeks, 2 days ago
On 22.01.2026 13:10:23, Arun Muthusamy wrote:
> This patch series updates the GRCAN driver to support the GRCANFD core
> from the GRLIB IP core library.
>
> In addition to GRCANFD support, the updates include enhancements for
> compatibility with NOEL-V (RISC-V) systems, such as matching drivers
> using the 'compatible' identifier and adding support for reading clock
> frequency via the common clock framework where available. The series
> also includes improvements like functions for configuring
> nominal bit-timing and optimizations for DMA operations.
>
> This series also updates the driver documentation and bindings.
> The old text binding is converted to YAML, a new vendor prefix
> is added to reflect the updated ownership and an entry for the
> driver is added to the MAINTAINERS file.

The order of patches is strange.

In #12 you claim to support CAN-FD, but actual support is added in
#13...15.

The kernel should be functional on every commit. Please change the order
of patches, that CAN-FD support can only be enabled if the driver really
supports it.

Marc

-- 
Pengutronix e.K.                 | Marc Kleine-Budde          |
Embedded Linux                   | https://www.pengutronix.de |
Vertretung Nürnberg              | Phone: +49-5121-206917-129 |
Amtsgericht Hildesheim, HRA 2686 | Fax:   +49-5121-206917-9   |