From 46bd561af3722243381ed38b988eab3813e3d418 Mon Sep 17 00:00:00 2001 From: Neil Balch Date: Mon, 7 Sep 2020 18:41:17 -0700 Subject: [PATCH] Implement the FreeRTOS git repo as a submodule --- .gitmodules | 10 ++++++---- README.md | 16 ++++++++-------- libopencm3 | 2 +- rtos/FreeRTOS-latest | 1 + rtos/Project.mk | 2 +- rtos/libwwg/src/getline.c | 4 ++-- 6 files changed, 19 insertions(+), 16 deletions(-) create mode 160000 rtos/FreeRTOS-latest diff --git a/.gitmodules b/.gitmodules index b8bf857..a4641fd 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,7 +1,9 @@ -[submodule "libopencm3"] - path = libopencm3 - url = https://github.com/libopencm3/libopencm3.git - [submodule "stlink"] path = stlink url = https://github.com/ve3wwg/stlink.git +[submodule "libopencm3"] + path = libopencm3 + url = https://github.com/libopencm3/libopencm3 +[submodule "rtos/FreeRTOS-latest"] + path = rtos/FreeRTOS-latest + url = https://github.com/FreeRTOS/FreeRTOS diff --git a/README.md b/README.md index e3eb782..41c35fe 100644 --- a/README.md +++ b/README.md @@ -46,11 +46,11 @@ libopencm3). |- miniblink/ simple blink: libopencm3 only | |- * miniblink files |- uart/ UART example (no flow control) - | |- * + | |- * |- uarthwfc/ UART example with hardware flow control |- * |- rtos/ FreeRTOS projects - |- FreeRTOSv10.0.0 Unzipped FreeRTOS sources (you create this) + |- FreeRTOS-latest git submodule |- Makefile Used for creating new rtos projects |- Makefile.rtos Rules for rtos project builds |- src/ @@ -70,7 +70,7 @@ libopencm3). | |- * |- usbcdc USB CDC Demo |- etc. - + PREREQUISITES: -------------- @@ -80,7 +80,7 @@ PREREQUISITES: gcc for example will be arm-none-eabi-gcc etc. If your prefix differs, edit Makefile.incl at the top level to match, or use the shell: export PREFIX=whatever - + 0b. It is also assumed that you have the st-link command installed on your system. You may need to download and install it. Google is your friend. @@ -88,21 +88,21 @@ PREREQUISITES: 1. If you didn't use a --recursive git clone, then you need to make sure that libopencm3 is fetched now. From the top level apply one of: - + $ git submodule update --init --recursive # First time $ git submodule update --recursive # Subsequent - + 2. Go into ./libopencm3 and type "make". This should build the static libraries that will be needed. Any issues there should go to the libopencm3 community. - + 3. For FreeRTOS, cd into ./rtos and unzip your FreeRTOS download there. It should create a subdirectory FreeRTOSv10.0.0 or similar. If the release differs, you'll need to change the variable assignment in rtos/Project.mk FREERTOS ?= .... to match, or use the shell: export FREERTOS=whatever - + 4. Do NOT compile FreeRTOS, since portions of it will be copied to your project subdirectory for further customization. Each project is capable of running a different FreeRTOS configuration. diff --git a/libopencm3 b/libopencm3 index 3922cc7..24bef9c 160000 --- a/libopencm3 +++ b/libopencm3 @@ -1 +1 @@ -Subproject commit 3922cc7d3ea362b816cc1de6d3287375afbe58aa +Subproject commit 24bef9c49eda109e92e926e065b246a71d454f2d diff --git a/rtos/FreeRTOS-latest b/rtos/FreeRTOS-latest new file mode 160000 index 0000000..00891e0 --- /dev/null +++ b/rtos/FreeRTOS-latest @@ -0,0 +1 @@ +Subproject commit 00891e0c88ee636173ea6fa4a4496c421180c69a diff --git a/rtos/Project.mk b/rtos/Project.mk index c1cebef..4d7ba2c 100644 --- a/rtos/Project.mk +++ b/rtos/Project.mk @@ -5,7 +5,7 @@ # Edit this variable if your release differs from what is shown here: -FREERTOS ?= FreeRTOSv10.0.1 +FREERTOS ?= FreeRTOS-latest ###################################################################### # Internal variables diff --git a/rtos/libwwg/src/getline.c b/rtos/libwwg/src/getline.c index 122b75e..a2bcfda 100644 --- a/rtos/libwwg/src/getline.c +++ b/rtos/libwwg/src/getline.c @@ -7,8 +7,8 @@ * the #include instead (comment out memory.h) */ -#include -/* #include */ +//#include +#include #define CONTROL(c) ((c) & 0x1F)