From fef022192c9a8e8927eb614b1a7bfe60e24618bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kuba=20Szczodrzy=C5=84ski?= Date: Wed, 27 Apr 2022 17:05:45 +0200 Subject: [PATCH] [core] Move fixups to platform dir --- README.md | 30 +++++++++++++++---- builder/frameworks/realtek-ambz-arduino.py | 4 +-- builder/frameworks/realtek-ambz-sdk.py | 5 ++-- .../realtek-ambz/fixups}/WCharacterFixup.h | 0 .../realtek-ambz/fixups}/app_start_patch.c | 0 .../realtek-ambz/fixups}/cmsis_ipsr.c | 0 .../realtek-ambz/fixups}/log_uart.c | 0 .../realtek-ambz/fixups}/ssl_tls.c | 0 .../realtek-ambz/fixups}/wifi_mode.c | 0 9 files changed, 28 insertions(+), 11 deletions(-) rename {fixups/realtek-ambz => platform/realtek-ambz/fixups}/WCharacterFixup.h (100%) rename {fixups/realtek-ambz => platform/realtek-ambz/fixups}/app_start_patch.c (100%) rename {fixups/realtek-ambz => platform/realtek-ambz/fixups}/cmsis_ipsr.c (100%) rename {fixups/realtek-ambz => platform/realtek-ambz/fixups}/log_uart.c (100%) rename {fixups/realtek-ambz => platform/realtek-ambz/fixups}/ssl_tls.c (100%) rename {fixups/realtek-ambz => platform/realtek-ambz/fixups}/wifi_mode.c (100%) diff --git a/README.md b/README.md index 910df10..1f29257 100644 --- a/README.md +++ b/README.md @@ -78,8 +78,9 @@ arduino/ │ ├─ cores/ Core files │ ├─ libraries/ Supported built-in libraries ├─ libretuya/ -│ ├─ api/ Library interfaces (.h) for LibreTuya Arduino cores -│ ├─ .cpp Built-in platform-independent libraries +│ ├─ api/ LibreTuya API for Arduino frameworks +│ ├─ compat/ Fixes for compatibility with ESP32 framework +│ ├─ libraries/ Built-in platform-independent libraries boards/ ├─ / Board-specific code │ ├─ variant.cpp Arduino variant initialization @@ -89,13 +90,15 @@ builder/ ├─ frameworks/ Framework builders for PlatformIO │ ├─ -sdk.py Vanilla SDK build system │ ├─ -arduino.py Arduino Core build system +├─ arduino-common.py Builder to provide ArduinoCore-API and LibreTuya APIs ├─ main.py Main PlatformIO builder -fixups/ -├─ / Code fix-ups to replace SDK parts +docs/ Project documentation, guides, tips, etc. platform/ -├─ / Other platform-specific files +├─ / Platform-specific configurations │ ├─ bin/ Binary blobs (bootloaders, etc.) +│ ├─ fixups/ Code fix-ups to replace SDK parts │ ├─ ld/ Linker scripts +│ ├─ openocd/ OpenOCD configuration files tools/ ├─ / Tools used during the build platform.json PlatformIO manifest @@ -133,7 +136,7 @@ As such, there are numerous CPUs with the same numbers but different series, whi - RTL8722DM (found in ambd_arduino) - and probably many more -Different Ameba series are not compatible with each other. Apparently, there isn't a public SDK for AmebaZ that can support C++ properly (yet). +Different Ameba series are not compatible with each other. Apparently, there isn't an official public SDK for AmebaZ that can support C++ properly. ## Arduino Core support status @@ -171,3 +174,18 @@ Legend: - ❓ untested - ❌ not implemented (yet?) - \- not applicable + +## License + +See [LICENSE](LICENSE). Project is licensed under MIT License. + +Parts of the code may come from third parties, vendor SDKs or other open-source projects. +Most of these files are marked with appropriate copyright/author/license notices. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/builder/frameworks/realtek-ambz-arduino.py b/builder/frameworks/realtek-ambz-arduino.py index 065b819..2eb2010 100644 --- a/builder/frameworks/realtek-ambz-arduino.py +++ b/builder/frameworks/realtek-ambz-arduino.py @@ -17,13 +17,13 @@ ldscript = board.get("build.ldscript_arduino") SDK_DIR = platform.get_package_dir("framework-realtek-amb1") BOARD_DIR = join(platform.get_dir(), "boards", variant) -FIXUPS_DIR = join(platform.get_dir(), "fixups", "realtek-ambz") PLATFORM_DIR = join(platform.get_dir(), "platform", "realtek-ambz") +FIXUPS_DIR = join(PLATFORM_DIR, "fixups") CORE_DIR = join(platform.get_dir(), "arduino", "realtek-ambz") assert isdir(SDK_DIR) assert isdir(env.subst(BOARD_DIR)) -assert isdir(env.subst(FIXUPS_DIR)) assert isdir(env.subst(PLATFORM_DIR)) +assert isdir(env.subst(FIXUPS_DIR)) assert isdir(env.subst(CORE_DIR)) # Flags diff --git a/builder/frameworks/realtek-ambz-sdk.py b/builder/frameworks/realtek-ambz-sdk.py index 8e3d364..12bd094 100644 --- a/builder/frameworks/realtek-ambz-sdk.py +++ b/builder/frameworks/realtek-ambz-sdk.py @@ -13,12 +13,12 @@ ldscript = board.get("build.ldscript_sdk") SDK_DIR = platform.get_package_dir("framework-realtek-amb1") BOARD_DIR = join(platform.get_dir(), "boards", variant) -FIXUPS_DIR = join(platform.get_dir(), "fixups", "realtek-ambz") PLATFORM_DIR = join(platform.get_dir(), "platform", "realtek-ambz") +FIXUPS_DIR = join(PLATFORM_DIR, "fixups") assert isdir(SDK_DIR) assert isdir(env.subst(BOARD_DIR)) -assert isdir(env.subst(FIXUPS_DIR)) assert isdir(env.subst(PLATFORM_DIR)) +assert isdir(env.subst(FIXUPS_DIR)) flash_addr = board.get("build.amb_flash_addr") flash_ota1_offset = env.subst("$FLASH_OTA1_OFFSET") @@ -110,7 +110,6 @@ env.Append( # fmt: off join(BOARD_DIR), join(FIXUPS_DIR), - join(PLATFORM_DIR), join(SDK_DIR, "project", "realtek_amebaz_va0_example", "inc"), join(SDK_DIR, "component", "os", "freertos"), join(SDK_DIR, "component", "os", "freertos", "freertos_v8.1.2", "Source", "include"), diff --git a/fixups/realtek-ambz/WCharacterFixup.h b/platform/realtek-ambz/fixups/WCharacterFixup.h similarity index 100% rename from fixups/realtek-ambz/WCharacterFixup.h rename to platform/realtek-ambz/fixups/WCharacterFixup.h diff --git a/fixups/realtek-ambz/app_start_patch.c b/platform/realtek-ambz/fixups/app_start_patch.c similarity index 100% rename from fixups/realtek-ambz/app_start_patch.c rename to platform/realtek-ambz/fixups/app_start_patch.c diff --git a/fixups/realtek-ambz/cmsis_ipsr.c b/platform/realtek-ambz/fixups/cmsis_ipsr.c similarity index 100% rename from fixups/realtek-ambz/cmsis_ipsr.c rename to platform/realtek-ambz/fixups/cmsis_ipsr.c diff --git a/fixups/realtek-ambz/log_uart.c b/platform/realtek-ambz/fixups/log_uart.c similarity index 100% rename from fixups/realtek-ambz/log_uart.c rename to platform/realtek-ambz/fixups/log_uart.c diff --git a/fixups/realtek-ambz/ssl_tls.c b/platform/realtek-ambz/fixups/ssl_tls.c similarity index 100% rename from fixups/realtek-ambz/ssl_tls.c rename to platform/realtek-ambz/fixups/ssl_tls.c diff --git a/fixups/realtek-ambz/wifi_mode.c b/platform/realtek-ambz/fixups/wifi_mode.c similarity index 100% rename from fixups/realtek-ambz/wifi_mode.c rename to platform/realtek-ambz/fixups/wifi_mode.c