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

drivers/serial/serial.c: adapt to the iovec-based api #14898

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Commits on Nov 22, 2024

  1. Configuration menu
    Copy the full SHA
    d43e4b8 View commit details
    Browse the repository at this point in the history
  2. Make readv/writev implementations update struct uio

    This can simplify partial result handling.
    yamt committed Nov 22, 2024
    Configuration menu
    Copy the full SHA
    574410a View commit details
    Browse the repository at this point in the history
  3. rename uio_total_length to uio_resid

    "total" is a bit confusing after the introduction of uio_advance().
    yamt committed Nov 22, 2024
    Configuration menu
    Copy the full SHA
    4523dc9 View commit details
    Browse the repository at this point in the history
  4. add uio_copyfrom/uio_copyto

    although i'm not quite happy with the "offset" functionality,
    it's necessary to simplify the adaptation of some drivers like
    drivers/serial/serial.c, which (ab)uses the user-supplied buffer
    as a line-buffer.
    yamt committed Nov 22, 2024
    Configuration menu
    Copy the full SHA
    e8a903d View commit details
    Browse the repository at this point in the history
  5. uio_advance: add an assertion

    yamt committed Nov 22, 2024
    Configuration menu
    Copy the full SHA
    6ad26aa View commit details
    Browse the repository at this point in the history
  6. drivers/serial/serial.c: adapt to the iovec-based api

    This would fix readv/writev issues mentioned in
    apache#12674.
    (only for this specific driver though. with this approach,
    we basically have to fix every single drivers and
    filesystems.)
    
    Lightly tested on the serial console, using micropython REPL
    on toywasm with esp32s3-devkit:toywasm, which used to be
    suffered by the readv issue.
    yamt committed Nov 22, 2024
    Configuration menu
    Copy the full SHA
    2937e17 View commit details
    Browse the repository at this point in the history