Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

imx9/flexcan: Make self reception disable to be configurable #14373

Merged

Conversation

jlaitine
Copy link
Contributor

Summary

This is an addition to imx9 flexcan driver to make "self receive disable" flag to be configurable. This feature can be used to make can block not receive what it sent itself.

Impact

It can be configured for upper layers if the self-sent frames are received or not.

Testing

Tested on a custom imx93 board, setting the flag on and off, sending frames and monitored if they are also received or not.

@github-actions github-actions bot added Arch: arm64 Issues related to ARM64 (64-bit) architecture Size: S The size of the change in this PR is small labels Oct 16, 2024
@jlaitine jlaitine force-pushed the imx9_uavcan_make_srxdis_configurable branch from bc8ef90 to f89d167 Compare October 16, 2024 22:38
@nuttxpr
Copy link

nuttxpr commented Oct 16, 2024

[Experimental Bot, please feedback here]

The PR summary is good, but it lacks specific details about the change and its usage. The impact and testing sections are too vague.

Here's how the PR description could be improved to better meet the requirements:

Summary

  • Why change is necessary (fix, update, new feature)?
    • This PR adds a new configuration option to the IMX9 FlexCAN driver to enable/disable the "self-receive disable" feature.
    • This feature is useful in applications where the CAN controller should not receive the frames it transmits itself, preventing potential issues with looped-back messages.
  • What functional part of the code is being changed?
    • Modification to the IMX9 FlexCAN driver code, specifically the configuration handling section.
  • How does the change exactly work (what will change and how)?
    • A new Kconfig option will be introduced to enable/disable "self-receive disable" functionality.
    • When enabled, the driver will set the appropriate bit in the FlexCAN hardware registers to prevent self-reception.
    • When disabled, the feature will be inactive, and the FlexCAN controller will operate in its default mode, receiving both self-transmitted and externally received frames.
  • Related NuttX Issue reference if applicable. (Add issue link if applicable)

Impact

  • Is new feature added? Is existing feature changed?
    • YES, a new configuration option for the "self-receive disable" feature is added to the IMX9 FlexCAN driver.
  • Impact on user (will user need to adapt to change)? YES
    • Users now have the option to enable or disable the "self-receive disable" feature through the Kconfig option.
    • Users should consult the updated documentation to understand the new configuration option and its impact on their application.
  • Impact on build (will build process change)? NO
  • Impact on hardware (will arch(s) / board(s) / driver(s) change)? NO
  • Impact on documentation (is update required / provided)? YES
    • The IMX9 FlexCAN driver documentation should be updated to include information about the new "self-receive disable" configuration option and its usage.
  • Impact on security (any sort of implications)? NO
  • Impact on compatibility (backward/forward/interoperability)? NO
  • Anything else to consider? NO

Testing

  • Build Host(s): (Specify your build host details: OS, CPU, compiler version)
  • Target(s): imx93 (custom board)

Testing logs before change:

(Include relevant logs demonstrating the previous behavior, like self-transmitted frames being received)

Testing logs after change:

(Include relevant logs demonstrating the new behavior with "self-receive disable" both enabled and disabled, showcasing the difference in frame reception)

By providing specific details about the changes, configuration options, and testing scenarios, the PR becomes clearer, easier to review, and more likely to be accepted.

@xiaoxiang781216 xiaoxiang781216 merged commit d6c795d into apache:master Oct 17, 2024
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Arch: arm64 Issues related to ARM64 (64-bit) architecture Size: S The size of the change in this PR is small
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants