Skip to content

Support for ARM MPU. - #85

Merged
dmitrykos merged 6 commits into
mainfrom
port
Jul 26, 2026
Merged

Support for ARM MPU.#85
dmitrykos merged 6 commits into
mainfrom
port

Conversation

@dmitrykos

@dmitrykos dmitrykos commented Jul 22, 2026

Copy link
Copy Markdown
Collaborator

PR adds a compete support for the Memory Protection Unit (MPU) on ARMv7-M/ARMv8-M platforms:

  • Global + per-task MPU regions
  • Examples for ARMv7-M and ARMv8-M (ARMv8-M does not support regions overlapping with different security attributes, so example demonstrates it)

Support for running isolated Non-Secure tasks with kernel residing in protected memory region.
Add ARM Cortex-M4 MPU example - blinky-mpu-stm32f407g-disc1.
Add Raspberri RP2350 MPU example - blinky_mpu_armv8.
@dmitrykos dmitrykos self-assigned this Jul 22, 2026
@dmitrykos dmitrykos added the enhancement New feature or request label Jul 22, 2026
@dmitrykos
dmitrykos force-pushed the port branch 2 times, most recently from b7302a8 to dd41aa1 Compare July 23, 2026 19:32
@SuperTinyKernel-RTOS SuperTinyKernel-RTOS deleted a comment from github-actions Bot Jul 23, 2026
@github-actions

Copy link
Copy Markdown

LCOV of commit dd41aa1 during Code Coverage - Generic #602

Summary coverage rate:
  lines......: 100.0% (1337 of 1337 lines)
  functions..: 43.4% (1605 of 3694 functions)
  branches...: no data found

Files changed coverage rate: n/a

@github-actions

github-actions Bot commented Jul 23, 2026

Copy link
Copy Markdown

MemBrowse Memory Report

stm32f0-sleep

  • FLASH: .isr_vector +48 B, .text +120 B (+0.8%, 19,968 B / 65,536 B, total: 30% used)
  • RAM: .bss +16 B (+0.4%, 4,200 B / 8,192 B, total: 51% used)

stm32f1-sleep

  • FLASH: .isr_vector +28 B, .text +76 B (+0.5%, 19,037 B / 131,072 B, total: 15% used)
  • RAM: .bss +16 B (+0.4%, 4,200 B / 20,480 B, total: 21% used)

stm32f4-sleep

  • FLASH: .isr_vector +32 B, .text +76 B (+0.5%, 19,869 B / 1,048,576 B, total: 2% used)
  • RAM: .bss +16 B (+0.4%, 4,204 B / 131,072 B, total: 3% used)

@github-actions

Copy link
Copy Markdown

LCOV of commit f4395f7 during Code Coverage - Generic #603

Summary coverage rate:
  lines......: 100.0% (1337 of 1337 lines)
  functions..: 43.4% (1605 of 3694 functions)
  branches...: no data found

Files changed coverage rate: n/a

@github-actions

Copy link
Copy Markdown

LCOV of commit 53ac225 during Code Coverage - Generic #604

Summary coverage rate:
  lines......: 100.0% (1337 of 1337 lines)
  functions..: 43.4% (1605 of 3694 functions)
  branches...: no data found

Files changed coverage rate: n/a

…ses.

Remove NSC_stk_ISyncObject_WakeOne, NSC_stk_ISyncObject_WakeAll in favor of new IKernelService::Wake API.
Introduce STK_USE_MEMMANAGE_HANDLER, STK_USE_HARDFAULT_HANDLER to toggle MemFault and HardFault handling inside STK's driver.
@github-actions

Copy link
Copy Markdown

LCOV of commit ea18c1d during Code Coverage - Generic #605

Summary coverage rate:
  lines......: 100.0% (1337 of 1337 lines)
  functions..: 43.4% (1605 of 3694 functions)
  branches...: no data found

Files changed coverage rate: n/a

@github-actions

Copy link
Copy Markdown

LCOV of commit d51b0d6 during Code Coverage - Generic #606

Summary coverage rate:
  lines......: 100.0% (1334 of 1334 lines)
  functions..: 43.4% (1604 of 3693 functions)
  branches...: no data found

Files changed coverage rate: n/a

@github-actions

Copy link
Copy Markdown

LCOV of commit b075949 during Code Coverage - Generic #607

Summary coverage rate:
  lines......: 99.8% (1331 of 1334 lines)
  functions..: 43.4% (1603 of 3693 functions)
  branches...: no data found

Files changed coverage rate: n/a

⛔ The code coverage is too low: 99.78. Expected at least 100.

@github-actions

Copy link
Copy Markdown

LCOV of commit 66ec874 during Code Coverage - Generic #608

Summary coverage rate:
  lines......: 100.0% (1334 of 1334 lines)
  functions..: 43.4% (1604 of 3693 functions)
  branches...: no data found

Files changed coverage rate: n/a

…tion::ScopedLock.

Add hw::SpinLock::ScopedLock.
@github-actions

Copy link
Copy Markdown

LCOV of commit 65c3eb6 during Code Coverage - Generic #609

Summary coverage rate:
  lines......: 99.9% (1334 of 1336 lines)
  functions..: 43.4% (1604 of 3694 functions)
  branches...: no data found

Files changed coverage rate: n/a

⛔ The code coverage is too low: 99.85. Expected at least 100.

Fix ISyncObject not working properly in a TrustZone app.
@github-actions

Copy link
Copy Markdown

LCOV of commit 45033b3 during Code Coverage - Generic #611

Summary coverage rate:
  lines......: 100.0% (1337 of 1337 lines)
  functions..: 43.4% (1603 of 3692 functions)
  branches...: no data found

Files changed coverage rate: n/a

@dmitrykos
dmitrykos merged commit c0d1b97 into main Jul 26, 2026
51 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant