Skip to content

Commit

Permalink
🐛 Fix interrupts
Browse files Browse the repository at this point in the history
Interrupts wouldn't fire for handlers passed into them. systick_timer's
interrupt was also reported to not work either.

Further changes were made:

- Removal of demos as they were not easy to use when demonstrating
  the usage of the libraries. Platform libraries utilizing
  libhal-armcortex should be responsible for creating that use the
  the processor libraries.
- Add flags to thumbvX profiles that were removed from
  libhal/arm-gnu-toolchain/#33.
- Update to ci/4.0.1, which builds the demos if and only if the demos
  directory exists.
- Bump to version 2.0.1
- Make hal::cortex_minterrupt::vector_table variable anonymous. Normally
  this would be an API break, but no users of the project are using
  this field, so keeping the major number as "2".
- Provide static disable and enable interrupts APIs to interrupt class.
- Improve correctness of systick timer's implementation.
  • Loading branch information
Khalil Estell committed Jul 15, 2023
1 parent ac5c784 commit c350ebc
Show file tree
Hide file tree
Showing 14 changed files with 100 additions and 351 deletions.
14 changes: 7 additions & 7 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,43 +13,43 @@ on:

jobs:
ci:
uses: libhal/ci/.github/workflows/[email protected].0
uses: libhal/ci/.github/workflows/[email protected].1
with:
library: libhal-armcortex
secrets: inherit

cortex-m0:
uses: libhal/ci/.github/workflows/[email protected].0
uses: libhal/ci/.github/workflows/[email protected].1
with:
profile: cortex-m0
secrets: inherit

cortex-m0plus:
uses: libhal/ci/.github/workflows/[email protected].0
uses: libhal/ci/.github/workflows/[email protected].1
with:
profile: cortex-m0plus
secrets: inherit

cortex-m1:
uses: libhal/ci/.github/workflows/[email protected].0
uses: libhal/ci/.github/workflows/[email protected].1
with:
profile: cortex-m1
secrets: inherit

cortex-m3:
uses: libhal/ci/.github/workflows/[email protected].0
uses: libhal/ci/.github/workflows/[email protected].1
with:
profile: cortex-m3
secrets: inherit

cortex-m4:
uses: libhal/ci/.github/workflows/[email protected].0
uses: libhal/ci/.github/workflows/[email protected].1
with:
profile: cortex-m4
secrets: inherit

cortex-m4f:
uses: libhal/ci/.github/workflows/[email protected].0
uses: libhal/ci/.github/workflows/[email protected].1
with:
profile: cortex-m4f
secrets: inherit
Expand Down
6 changes: 3 additions & 3 deletions conan/profiles/thumbv6
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,6 @@ arch.processor={{ cpu }}
arm-gnu-toolchain/12.2.1

[conf]
tools.build:cflags=["-mfloat-abi=soft", "-mcpu={{ cpu }}"]
tools.build:cxxflags=["-mfloat-abi=soft", "-mcpu={{ cpu }}", "-fno-exceptions", "-fno-rtti"]
tools.build:exelinkflags=["--specs=nano.specs", "--specs=nosys.specs", "-mfloat-abi=soft", "-mcpu={{ cpu }}", "-fno-exceptions", "-fno-rtti"]
tools.build:cflags=["-mfloat-abi=soft", "-mcpu={{ cpu }}", "-mthumb", "-ffunction-sections", "-fdata-sections"]
tools.build:cxxflags=["-mfloat-abi=soft", "-mcpu={{ cpu }}", "-fno-exceptions", "-fno-rtti", "-mthumb", "-ffunction-sections", "-fdata-sections"]
tools.build:exelinkflags=["--specs=nano.specs", "--specs=nosys.specs", "-mfloat-abi=soft", "-mcpu={{ cpu }}", "-mthumb", "-fno-exceptions", "-fno-rtti", "-Wl,--gc-sections", "-Wl,--print-memory-usage"]
6 changes: 3 additions & 3 deletions conan/profiles/thumbv7
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,6 @@ arch.processor={{ cpu }}
arm-gnu-toolchain/12.2.1

[conf]
tools.build:cflags=["-mfloat-abi={{ float_abi }}", "-mcpu={{ cpu }}", "-mfpu={{ fpu }}"]
tools.build:cxxflags=["-mfloat-abi={{ float_abi }}", "-mcpu={{ cpu }}", "-mfpu={{ fpu }}", "-fno-exceptions", "-fno-rtti"]
tools.build:exelinkflags=["--specs=nano.specs", "--specs=nosys.specs", "-mfloat-abi={{ float_abi }}", "-mcpu={{ cpu }}", "-mfpu={{ fpu }}", "-fno-exceptions", "-fno-rtti"]
tools.build:cflags=["-mfloat-abi={{ float_abi }}", "-mcpu={{ cpu }}", "-mfpu={{ fpu }}", "-mthumb", "-ffunction-sections", "-fdata-sections"]
tools.build:cxxflags=["-mfloat-abi={{ float_abi }}", "-mcpu={{ cpu }}", "-mfpu={{ fpu }}", "-fno-exceptions", "-fno-rtti", "-mthumb", "-ffunction-sections", "-fdata-sections"]
tools.build:exelinkflags=["--specs=nano.specs", "--specs=nosys.specs", "-mfloat-abi={{ float_abi }}", "-mcpu={{ cpu }}", "-mfpu={{ fpu }}", "-fno-exceptions", "-fno-rtti", "-mthumb", "-ffunction-sections", "-fdata-sections"]
6 changes: 3 additions & 3 deletions conan/profiles/thumbv8
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,6 @@ arch.processor={{ cpu }}
arm-gnu-toolchain/12.2.1

[conf]
tools.build:cflags=["-mfloat-abi={{ float_abi }}", "-mcpu={{ cpu }}"]
tools.build:cxxflags=["-mfloat-abi={{ float_abi }}", "-mcpu={{ cpu }}", "-fno-exceptions", "-fno-rtti"]
tools.build:exelinkflags=["--specs=nano.specs", "--specs=nosys.specs", "-mfloat-abi={{ float_abi }}", "-mcpu={{ cpu }}", "-fno-exceptions", "-fno-rtti"]
tools.build:cflags=["-mfloat-abi={{ float_abi }}", "-mcpu={{ cpu }}", "-mthumb", "-ffunction-sections", "-fdata-sections"]
tools.build:cxxflags=["-mfloat-abi={{ float_abi }}", "-mcpu={{ cpu }}", "-fno-exceptions", "-fno-rtti", "-mthumb", "-ffunction-sections", "-fdata-sections"]
tools.build:exelinkflags=["--specs=nano.specs", "--specs=nosys.specs", "-mfloat-abi={{ float_abi }}", "-mcpu={{ cpu }}", "-fno-exceptions", "-fno-rtti", "-mthumb", "-ffunction-sections", "-fdata-sections"]
2 changes: 1 addition & 1 deletion conanfile.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@

class libhal_arm_cortex_conan(ConanFile):
name = "libhal-armcortex"
version = "2.0.0"
version = "2.0.1"
license = "Apache-2.0"
url = "https://github.com/conan-io/conan-center-index"
homepage = "https://libhal.github.io/libhal-armcortex"
Expand Down
48 changes: 0 additions & 48 deletions demos/CMakeLists.txt

This file was deleted.

34 changes: 0 additions & 34 deletions demos/applications/dwt_counter.cpp

This file was deleted.

50 changes: 0 additions & 50 deletions demos/conanfile.py

This file was deleted.

25 changes: 0 additions & 25 deletions demos/linker.ld

This file was deleted.

131 changes: 0 additions & 131 deletions demos/main.cpp

This file was deleted.

Loading

0 comments on commit c350ebc

Please sign in to comment.