Skip to content

Commit

Permalink
Merge pull request #527 from ckormanyos/cpp_ification_of_rp2040
Browse files Browse the repository at this point in the history
Fixes #526 via C++-ification of rp2040
  • Loading branch information
ckormanyos authored Jul 28, 2024
2 parents 175d632 + 52d69ba commit ab7e53b
Show file tree
Hide file tree
Showing 34 changed files with 551 additions and 118,880 deletions.
6 changes: 3 additions & 3 deletions readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -446,8 +446,9 @@ The program toggles the GPIO status LED at GPIO index `0x47`.
The `rpi_pico_rp2040` target configuration employs the
RaspberryPi(R) Pico RP2040 with dual-core ARM(R) Cortex(R)-M0+
clocked at $133~\text{MHz}$. The low-level startup boots through
core 0. Core 0 then starts up core 1 which carries out the blinky
application while core 0 then enters an endless, idle loop.
core 0. Core 0 then starts up core 1 (via a specifiec protocol).
Core 1 subsequently carries out the blinky application,
while core 0 enters an endless, idle loop.
Ozone debug files are supplied for this system for those interested.

Target `v850es_fx2` uses a classic Renesas(R) V850es/Fx2 core.
Expand Down Expand Up @@ -635,4 +636,3 @@ therefore, be beneficial for success with *all* of the code snippets.
### Licensing

- The source code written for this repo is licensed under [Boost Software License 1.0](./LICENSE_1_0.txt).
- A modified subset of CMSIS is temporarily included for the target `rpi_pico_rp2040`. It is licensed under the Apache Software License version 2.0. The scope of modifications by Christopher Kormanyos 2024-July-23 includes removal of significant content not needed in this project.
6 changes: 1 addition & 5 deletions ref_app/cmake/rpi_pico_rp2040.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -36,9 +36,6 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_STANDARD 14)

set(TARGET_INCLUDES
${PATH_APP}/mcal/${TARGET}/Mcal/Cmsis
${PATH_APP}/mcal/${TARGET}/Mcal
${PATH_APP}/mcal/${TARGET}/Std
${PATH_APP}/util/STL
)

Expand Down Expand Up @@ -66,9 +63,8 @@ string(REPLACE ";" " " TARGET_LDFLAGS "${_TARGET_LDFLAGS}")


set(FILES_TARGET
${PATH_APP}/mcal/${TARGET}/Mcal/Clock/Clock
${PATH_APP}/mcal/${TARGET}/Mcal/Cpu/Cpu
${PATH_APP}/mcal/mcal_gcc_cxx_completion
${PATH_APP}/mcal/${TARGET}/mcal_cpu_rp2040
${PATH_TGT}/startup/crt0
${PATH_TGT}/startup/crt0_init_ram
${PATH_TGT}/startup/crt1
Expand Down
51 changes: 6 additions & 45 deletions ref_app/ref_app.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -572,15 +572,11 @@
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="src\mcal\rpi_pico_rp2040\Mcal\Clock\Clock.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="src\mcal\rpi_pico_rp2040\Mcal\Cpu\Cpu.cpp">
<ClCompile Include="src\mcal\rpi_pico_rp2040\mcal_cpu.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="src\mcal\rpi_pico_rp2040\mcal_cpu.cpp">
<ClCompile Include="src\mcal\rpi_pico_rp2040\mcal_cpu_rp2040.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile>
Expand Down Expand Up @@ -1807,47 +1803,15 @@
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClInclude>
<ClInclude Include="src\mcal\rpi_pico_rp2040\Mcal\Clock\Clock.h">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClInclude>
<ClInclude Include="src\mcal\rpi_pico_rp2040\Mcal\Cmsis\cmsis_compiler.h">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClInclude>
<ClInclude Include="src\mcal\rpi_pico_rp2040\Mcal\Cmsis\cmsis_gcc.h">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClInclude>
<ClInclude Include="src\mcal\rpi_pico_rp2040\Mcal\Cmsis\cmsis_version.h">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClInclude>
<ClInclude Include="src\mcal\rpi_pico_rp2040\Mcal\Cmsis\core_cm0plus.h">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClInclude>
<ClInclude Include="src\mcal\rpi_pico_rp2040\Mcal\Cmsis\mpu_armv7.h">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClInclude>
<ClInclude Include="src\mcal\rpi_pico_rp2040\Mcal\Cpu\Cpu.h">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClInclude>
<ClInclude Include="src\mcal\rpi_pico_rp2040\Mcal\Gpio\Gpio.h">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClInclude>
<ClInclude Include="src\mcal\rpi_pico_rp2040\Mcal\RP2040.h">
<ClInclude Include="src\mcal\rpi_pico_rp2040\mcal_benchmark.h">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClInclude>
<ClInclude Include="src\mcal\rpi_pico_rp2040\mcal_benchmark.h">
<ClInclude Include="src\mcal\rpi_pico_rp2040\mcal_cpu.h">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClInclude>
<ClInclude Include="src\mcal\rpi_pico_rp2040\mcal_cpu.h">
<ClInclude Include="src\mcal\rpi_pico_rp2040\mcal_cpu_rp2040.h">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClInclude>
Expand Down Expand Up @@ -1899,10 +1863,6 @@
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClInclude>
<ClInclude Include="src\mcal\rpi_pico_rp2040\Std\Platform_Types.h">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClInclude>
<ClInclude Include="src\mcal\rx63n\mcal_benchmark.h">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
Expand Down Expand Up @@ -2843,6 +2803,7 @@
</None>
<None Include="cmake\rpi_pico_rp2040.cmake">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
</None>
<None Include="cmake\rx63n.cmake">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
Expand Down
56 changes: 4 additions & 52 deletions ref_app/ref_app.vcxproj.filters
Original file line number Diff line number Diff line change
Expand Up @@ -221,24 +221,6 @@
<Filter Include="src\mcal\rpi_pico_rp2040">
<UniqueIdentifier>{79b28ed1-246b-4ca6-bb33-151839f7e1d5}</UniqueIdentifier>
</Filter>
<Filter Include="src\mcal\rpi_pico_rp2040\Mcal">
<UniqueIdentifier>{db0fa1ec-ebde-4755-9143-b0e3b4b56215}</UniqueIdentifier>
</Filter>
<Filter Include="src\mcal\rpi_pico_rp2040\Std">
<UniqueIdentifier>{e16fd903-9a3e-4ebf-b6f9-5eb951f7c5f6}</UniqueIdentifier>
</Filter>
<Filter Include="src\mcal\rpi_pico_rp2040\Mcal\Clock">
<UniqueIdentifier>{abb927b4-280c-45f5-a800-4e009b15025b}</UniqueIdentifier>
</Filter>
<Filter Include="src\mcal\rpi_pico_rp2040\Mcal\Cmsis">
<UniqueIdentifier>{db930ee4-0e9e-4dcc-bc0c-143ebe562002}</UniqueIdentifier>
</Filter>
<Filter Include="src\mcal\rpi_pico_rp2040\Mcal\Cpu">
<UniqueIdentifier>{c863a2e9-0653-4655-9547-05debdd8f6eb}</UniqueIdentifier>
</Filter>
<Filter Include="src\mcal\rpi_pico_rp2040\Mcal\Gpio">
<UniqueIdentifier>{59916297-16f2-4013-9a36-e79d1949e196}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="src\app\led\app_led.cpp">
Expand Down Expand Up @@ -1099,11 +1081,8 @@
<ClCompile Include="src\mcal\rpi_pico_rp2040\mcal_cpu.cpp">
<Filter>src\mcal\rpi_pico_rp2040</Filter>
</ClCompile>
<ClCompile Include="src\mcal\rpi_pico_rp2040\Mcal\Clock\Clock.cpp">
<Filter>src\mcal\rpi_pico_rp2040\Mcal\Clock</Filter>
</ClCompile>
<ClCompile Include="src\mcal\rpi_pico_rp2040\Mcal\Cpu\Cpu.cpp">
<Filter>src\mcal\rpi_pico_rp2040\Mcal\Cpu</Filter>
<ClCompile Include="src\mcal\rpi_pico_rp2040\mcal_cpu_rp2040.cpp">
<Filter>src\mcal\rpi_pico_rp2040</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
Expand Down Expand Up @@ -2532,35 +2511,8 @@
<ClInclude Include="src\mcal\rpi_pico_rp2040\mcal_benchmark.h">
<Filter>src\mcal\rpi_pico_rp2040</Filter>
</ClInclude>
<ClInclude Include="src\mcal\rpi_pico_rp2040\Mcal\Clock\Clock.h">
<Filter>src\mcal\rpi_pico_rp2040\Mcal\Clock</Filter>
</ClInclude>
<ClInclude Include="src\mcal\rpi_pico_rp2040\Mcal\Cmsis\cmsis_compiler.h">
<Filter>src\mcal\rpi_pico_rp2040\Mcal\Cmsis</Filter>
</ClInclude>
<ClInclude Include="src\mcal\rpi_pico_rp2040\Mcal\Cmsis\cmsis_gcc.h">
<Filter>src\mcal\rpi_pico_rp2040\Mcal\Cmsis</Filter>
</ClInclude>
<ClInclude Include="src\mcal\rpi_pico_rp2040\Mcal\Cmsis\core_cm0plus.h">
<Filter>src\mcal\rpi_pico_rp2040\Mcal\Cmsis</Filter>
</ClInclude>
<ClInclude Include="src\mcal\rpi_pico_rp2040\Mcal\Cmsis\cmsis_version.h">
<Filter>src\mcal\rpi_pico_rp2040\Mcal\Cmsis</Filter>
</ClInclude>
<ClInclude Include="src\mcal\rpi_pico_rp2040\Mcal\Cmsis\mpu_armv7.h">
<Filter>src\mcal\rpi_pico_rp2040\Mcal\Cmsis</Filter>
</ClInclude>
<ClInclude Include="src\mcal\rpi_pico_rp2040\Mcal\Cpu\Cpu.h">
<Filter>src\mcal\rpi_pico_rp2040\Mcal\Cpu</Filter>
</ClInclude>
<ClInclude Include="src\mcal\rpi_pico_rp2040\Mcal\Gpio\Gpio.h">
<Filter>src\mcal\rpi_pico_rp2040\Mcal\Gpio</Filter>
</ClInclude>
<ClInclude Include="src\mcal\rpi_pico_rp2040\Std\Platform_Types.h">
<Filter>src\mcal\rpi_pico_rp2040\Std</Filter>
</ClInclude>
<ClInclude Include="src\mcal\rpi_pico_rp2040\Mcal\RP2040.h">
<Filter>src\mcal\rpi_pico_rp2040\Mcal</Filter>
<ClInclude Include="src\mcal\rpi_pico_rp2040\mcal_cpu_rp2040.h">
<Filter>src\mcal\rpi_pico_rp2040</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
Expand Down
76 changes: 0 additions & 76 deletions ref_app/src/mcal/rpi_pico_rp2040/Mcal/Clock/Clock.cpp

This file was deleted.

40 changes: 0 additions & 40 deletions ref_app/src/mcal/rpi_pico_rp2040/Mcal/Clock/Clock.h

This file was deleted.

Loading

0 comments on commit ab7e53b

Please sign in to comment.