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

Allow interrupt-driven MACRAW operation #60

Merged
merged 3 commits into from
Apr 15, 2024

Commits on Apr 15, 2024

  1. Allow interrupt-driven MACRAW operation

    This commit adds methods to RawDevice that enable interrupt-driven
    operation. The enable_interrupt() method sets up SIMR so that
    socket-level (internal) interrupts on Socket 0 cause chip-level
    (external) interrupts (and as a convenience also sets S0_IR as
    required). The disable_interrupt() method reverses those changes.
    The clear_interrupt() method acknowledges all interrupts and is
    intended to be called from the interrupt handler (or from thread mode
    soon afterwards).
    
    There is no change to existing functionality or operation if
    enable_interrupt() is never called.
    
    I did see PR#34 before filing this, but that change is focused on
    TCP and UDP sockets, and my use case is MACRAW mode.
    
    Tested on a W5500-Pico-EVB board with the RP2040 successfully receiving
    and acting on active-low GPIO interrupts from W5500 via the INTn signal
    on W5500 pin 36.
    pdh11 committed Apr 15, 2024
    Configuration menu
    Copy the full SHA
    d34ef05 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    fd6d254 View commit details
    Browse the repository at this point in the history
  3. Fix new cargo fmt issues

    pdh11 committed Apr 15, 2024
    Configuration menu
    Copy the full SHA
    25683d6 View commit details
    Browse the repository at this point in the history