Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: petr-jenik/ArduinoCore-API
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: master
Choose a base ref
...
head repository: arduino/ArduinoCore-API
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 14 commits
  • 110 files changed
  • 5 contributors

Commits on Jan 23, 2024

  1. Release v1.5.0

    aentinger committed Jan 23, 2024
    Configuration menu
    Copy the full SHA
    0c853c5 View commit details
    Browse the repository at this point in the history

Commits on May 2, 2024

  1. api: Add DMAPool.

    The DMAPool class allocates and manages a pool of buffers that are DMA and cache
    friendly, designed for applications that require frequent buffer exchanges between
    the CPU and DMA (such as audio applications).
    The DMAPool maintains a read and write queues of DMA buffers. DMA buffers' sizes
    are rounded up to a multiple of the pool's alignment (which defaults to cache line
    size on platforms with caches), and their memory is initialized from one contiguous
    memory block.
    A typical usage of DMAPool involves allocating a DMA buffer from the write queue
    for writing by a producer, updating its contents, and then releasing it. When released,
    the DMA buffer returns to the pool, which in turn places it back into the read queue
    for later consumption by the consumer. For example:
    
    ```C++
    // Writer/Producer side (For example, an IRQ handler).
    DMABuffer<uint16_t> *buf = pool->alloc(DMA_BUFFER_WRITE);
    for (size_t i=0; i<buf.size(); i++) {
        buf[i] = 0xFFFF;
    }
    buf->release();
    
    // Reader/Consumer side (User/library).
    DMABuffer<uint16_t> *buf = pool->alloc(DMA_BUFFER_READ);
    for (size_t i=0; i<buf.size(); i++) {
        print(buf[i]);
    }
    buf->release();
    ```
    
    Note that the DMAPool uses single-writer, single-reader lock-free queues to store
    buffers, and as such, it can only be used by a single reader and a single writer.
    Locks are avoided to allow the DMAPool to be used from an ISR producer/consumer,
    with only the main thread, and without disabling IRQs.
    
    Signed-off-by: iabdalkader <i.abdalkader@gmail.com>
    iabdalkader committed May 2, 2024
    Configuration menu
    Copy the full SHA
    4c7bc29 View commit details
    Browse the repository at this point in the history

Commits on May 6, 2024

  1. Merge pull request arduino#231 from iabdalkader/dma_pool

    api: Add DMAPool.
    facchinm authored May 6, 2024
    Configuration menu
    Copy the full SHA
    6ebbb86 View commit details
    Browse the repository at this point in the history
  2. api/DMAPool: Add missing header for unique ptr.

    Signed-off-by: iabdalkader <i.abdalkader@gmail.com>
    iabdalkader committed May 6, 2024
    Configuration menu
    Copy the full SHA
    9a4bb9a View commit details
    Browse the repository at this point in the history
  3. Merge pull request arduino#232 from iabdalkader/dma_pool_header

    api/DMAPool: Add missing header for unique ptr.
    iabdalkader authored May 6, 2024
    Configuration menu
    Copy the full SHA
    9fdac14 View commit details
    Browse the repository at this point in the history

Commits on May 13, 2024

  1. Release v1.5.1

    facchinm committed May 13, 2024
    Configuration menu
    Copy the full SHA
    331cdd9 View commit details
    Browse the repository at this point in the history

Commits on May 28, 2024

  1. license: add missing license headers

    Some of the files in the Arduino core were missing the license headers.
    
    They contain code which is either copied from previous Arduino cores
    (which were already LGPL-2.1-or-later), or has been submitted to this
    repository where most of the code is clearly LGPL-2.1-or-later.  In any
    case, all the contributors have either been directly employed by Arduino
    or have signed the CLA.
    
    Add the missing LGPL-2.1-or-later headers to the files.
    pillo79 committed May 28, 2024
    Configuration menu
    Copy the full SHA
    a1f668d View commit details
    Browse the repository at this point in the history
  2. license: update CAN files license to LGPL-2.1-or-later

    The CAN files had a non-standard license which does not match the other
    files in the repository. This commit updates the license header to
    match that of the other files.
    
    All of the contributors to these files have either been employed by
    Arduino or have signed the CLA.
    pillo79 committed May 28, 2024
    Configuration menu
    Copy the full SHA
    a2735c0 View commit details
    Browse the repository at this point in the history
  3. license: cosmetic updates

    Minor updates to the license headers to make them more consistent among
    the repository.
    pillo79 committed May 28, 2024
    Configuration menu
    Copy the full SHA
    eeb0ce3 View commit details
    Browse the repository at this point in the history
  4. license: add SPDX-License-Identifier to all files in test/

    The files in the test/ folder had a copyright notice, but no license
    information. This commit adds the LGPL-2.1-or-later SPDX license
    identifier to all these files.
    pillo79 committed May 28, 2024
    Configuration menu
    Copy the full SHA
    25be1ac View commit details
    Browse the repository at this point in the history
  5. license: add LICENSE file to the repository

    All files in this repository are licensed under the GNU Lesser General
    Public License version 2.1. Make this obvious by including the LICENSE
    file in the root of the repository.
    
    In addition to the above clause, some files may also be distributed under
    additional license terms. See each individual file for details.
    pillo79 committed May 28, 2024
    Configuration menu
    Copy the full SHA
    3f3e8bd View commit details
    Browse the repository at this point in the history

Commits on May 29, 2024

  1. Fix spell check false positive by ignoring word

    The codespell spellchecker tool is used to automatically detect commonly misspelled words in the files of this project.
    
    The misspelled words dictionary was expanded in the latest release of codespell. Some of the text in the project
    codebase happens to match against newly added entries, which caused codespell to produce a false misspelled word
    detection.
    
    Since the code that produced the detection is correct and intended, the false positive is resolved by configuring
    codespell to ignore the problematic word.
    per1234 authored May 29, 2024
    Configuration menu
    Copy the full SHA
    ce1f76e View commit details
    Browse the repository at this point in the history
  2. Merge pull request arduino#235 from per1234/fix-spellcheck

    Fix spell check false positive by ignoring word
    per1234 authored May 29, 2024
    Configuration menu
    Copy the full SHA
    4df98f4 View commit details
    Browse the repository at this point in the history

Commits on Jun 17, 2024

  1. Merge pull request arduino#234 from pillo79/license_cleanup

    Use the LGPL 2.1 or later license on all files
    facchinm authored Jun 17, 2024
    Configuration menu
    Copy the full SHA
    4a02bfc View commit details
    Browse the repository at this point in the history
Loading