This package has been deprecated

Author message:

Content split into separate AArch32 & AArch64 packages

@micro-os-plus/architecture-cortexa

2.0.0 • Public • Published

license CI on Push

A source library xPacks with the µOS++ Arm Cortex-A architecture definitions

The project is hosted on GitHub as micro-os-plus/architecture-cortexa-xpack.

Maintainer info

This page is addressed to developers who plan to include this source library into their own projects.

For maintainer info, please see the README-MAINTAINER file.

Install

As a source library xPacks, the easiest way to add it to a project is via xpm, but it can also be used as any Git project, for example as a submodule.

Prerequisites

A recent xpm, which is a portable Node.js command line application.

For details please follow the instructions in the xPack install page.

xpm

Note: the package will be available from npmjs.com at a later date.

For now, it can be installed from GitHub:

cd my-project
xpm init # Unless a package.json is already present

xpm install github:micro-os-plus/architecture-cortexa-xpack

When ready, this package will be available as @micro-os-plus/architecture-cortexa from the npmjs.com registry:

cd my-project
xpm init # Unless a package.json is already present

xpm install @micro-os-plus/architecture-cortexa@latest

ls -l xpacks/micro-os-plus-architecture-cortexa

Git submodule

If, for any reason, xpm is not available, the next recommended solution is to link it as a Git submodule below an xpacks folder.

cd my-project
git init # Unless already a Git project
mkdir -p xpacks

git submodule add https://github.com/micro-os-plus/architecture-cortexa-xpack.git \
  xpacks/micro-os-plus-architecture-cortexa

Branches

Apart from the unused master branch, there are two active branches:

  • xpack, with the latest stable version (default)
  • xpack-develop, with the current development version

All development is done in the xpack-develop branch, and contributions via Pull Requests should be directed to this branch.

When new releases are published, the xpack-develop branch is merged into xpack.

Developer info

This source xPack provides general Cortex-A definitions an the implementation for the µOS++ scheduler, running on Arm Cortex-A devices.

Status

The µOS++ Cortex-A definitions are minimalistic, for running the tests.

Build & integration info

To include this package in a project, consider the following details.

Include folders

The following folders should be passed to the compiler during the build:

  • include

The header files to be included in user projects are:

#include <micro-os-plus/architecture.h>

Source files

The source files to be added to user projects are:

  • none

Preprocessor definitions

  • none

Compiler options

  • -std=c++20 or higher for C++ sources
  • -std=c11 for C sources

C++ Namespaces

Portable:

  • micro_os_plus::architecture
  • micro_os_plus::architecture::registers

Architecture specific:

  • cortexa::architecture
  • cortexa::architecture::registers

C++ Classes

  • none

Examples

#include <micro-os-plus/architecture.h>

using namespace micro_os_plus;

architecture::register_t reg;

reg = architecture::registers::sp();

Known problems

  • does not use CMSIS Core (yet)

Tests

TBD

Change log - incompatible changes

According to semver rules:

Major version X (X.y.z | X > 0) MUST be incremented if any backwards incompatible changes are introduced to the public API.

The incompatible changes, in reverse chronological order, are:

  • v2.x: exception handling moved to qemu device for now; sections-flash.ld removed
  • v1.x: initial release

License

The original content is released under the MIT License, with all rights reserved to Liviu Ionescu.

Package Sidebar

Install

npm i @micro-os-plus/architecture-cortexa

Weekly Downloads

1

Version

2.0.0

License

MIT

Unpacked Size

44.4 kB

Total Files

17

Last publish

Collaborators

  • ilg