Commit Graph

71 Commits (de0c4049832d559c229de5752767dacf70d03c72)

Author SHA1 Message Date
Jamie Smith 6e2e7b9414
Remove all source files exclusive to Arm Compiler and IAR (#159)
* Remove all source files exclusive to Arm Compiler and IAR

* Also remove 'TOOLCHAIN_ARM'

* Remove targets.json entries for ARM and IAR
2023-05-15 08:23:01 -07:00
Hari Limaye f4e5359710 GPIO: Use uintptr_t for gpio_irq_api context
The HAL gpio_irq_api stores object IDs, which serve as a form of context
for the dispatch of the interrupt handler in the drivers level
InterruptIn Class. The way this is achieved is that the InterruptIn
Class casts its address to uint32_t, which is stored as the ID.
This results in compilation failure when the size of an object pointer
is greater than uint32_t, for example when building on a PC for unit
testing.

In order to allow Unit Testing of the InterruptIn Class, we replace the
use of uint32_t with uintptr_t (type capable of holding a pointer),
which allows portability and expresses intentions more clearly.
In aid of this latter goal, we also replace the use of the name "id"
with "context", to improve clarity - these are addresses of the context
related to that callback.
2022-01-26 18:12:52 +00:00
George Psimenos 61cfaa15cd Update UART pin names & add MBED_CONF_TARGET_STDIO_UART overrides 2021-03-23 11:17:17 +00:00
George Psimenos 885cdef5f7 Add standard pin-names validation script & tests 2021-03-18 17:01:53 +00:00
Martin Kojtal 88a242f749
Merge pull request #14306 from hugueskamba/hk_cmake_create_cmsis_cortex_libs
CMake: Create CMSIS library targets to remove dependency on MBED_TARGET_LABELS
2021-02-23 08:36:49 +00:00
Hugues Kamba 7d49d4bce1 Create FLASH CMSIS ALGO target to remove dependency on MBED_TARGET_LABELS
This goes towards eventually removing reliance on targets.json to specify
the requirements of Mbed targets.
2021-02-19 16:56:37 +00:00
Hugues Kamba 2c3481297c CMake: Create CMSIS library targets to remove dependency on MBED_TARGET_LABELS
This goes towards eventually removing reliance on targets.json to specify
the requirements of Mbed targets.
2021-02-19 13:39:32 +00:00
Martin Kojtal a922ed18a5 Analog Devices: fix CMakeLists names 2021-02-15 09:17:50 +00:00
Martin Kojtal 64d4a7a58a CMake Analog devices: fix linking to the main family target 2021-02-14 19:48:16 +00:00
Martin Kojtal ab7067df3f CMake Analog Devices: fix names after refactor 2021-02-11 13:54:12 +00:00
Martin Kojtal 8f1840e978 Analog Devices: refactor CMake targets 2021-02-11 13:51:37 +00:00
Hugues Kamba 99c92b5005 CMake: Fix Analog Devices targets support
* Fix CMake syntax errors
* Fix indentation
* List directories and source files in alpahabetical order with spaces between files located in different directories
* Create STARTUP_FILE variable as done for all other targets
2020-12-11 11:06:46 +00:00
Martin Kojtal e7315e881e ADUCM3029: remove flag that is already set in core CMake 2020-12-10 13:58:12 +00:00
Harrison Mutai e3cee85350 Update interpreter program used in ARM scatter file
Change interpreter program from armcc to armclang. Pass it different
optional arguments: specify the target compiler and core core type.
2020-12-10 12:35:26 +00:00
Harrison Mutai 6b0fceb2ff Add CMake support for all Renesas targets
Add configuration files for targets and individual MCUs. Add include
paths and sources to mbed-core link library and specify linker and
startup scripts.
2020-12-10 12:33:03 +00:00
Harrison Mutai 4fad1112e5 Add SPDX license identifier to Arm files
Add license identifier to files which Arm owns the copyright to,
and contain either BSD-3 or Apache-2.0 licenses. This is to address
license errors raised by scancode analysis.
2020-10-15 10:47:27 +01:00
Jaeden Amero 612b148fd4 stack: armc: Workaround config passing bug
Workaround a bug where the boot stack size configuration option is not
passed on to armlink, the Arm Compiler's linker. Prefer
MBED_CONF_TARGET_BOOT_STACK_SIZE if present, as this is what the
configuration system should provide. Fall back to MBED_BOOT_STACK_SIZE
if MBED_CONF_TARGET_BOOT_STACK_SIZE is not defined, as in the case of
buggy tools. If both MBED_CONF_TARGET_BOOT_STACK_SIZE and
MBED_BOOT_STACK_SIZE are not defined, then we fall back to a hard-coded
value provided by the linkerscript. See
https://github.com/ARMmbed/mbed-os/issues/13474 for more information.
2020-09-10 10:08:38 +01:00
Jaeden Amero 39e69d328d Use boot stack size from config system
To allow overriding of the boot stack size from the Mbed configuration
system, consistently use MBED_CONF_TARGET_BOOT_STACK_SIZE rather than
MBED_BOOT_STACK_SIZE.

Fixes #10319
2020-09-10 10:08:38 +01:00
Martin Kojtal ac3df20699 ad4050lz: fix gcc copy table and zero table missing 2020-05-13 14:16:05 +01:00
Martin Kojtal 067630a2dd Analog devices: overwrite cmsis startup
define __PROGRAM_START so we use own startup as AD had it defined, this fixes the conflicts with
CMSIS_5 update (they introduced low level init).
2020-05-13 11:39:28 +01:00
Martin Kojtal 2c8be47525 Revert "Use cmsis gcc types instead of own"
This reverts commit 606ccbceff.
2020-05-13 10:43:57 +01:00
Martin Kojtal 606ccbceff Use cmsis gcc types instead of own
This caused a conflict. As CMSIS update introduced low level init, lets use the types
from CMSIS. We could potentionally use __cmsis_start but as I saw for some targets,
the init routine is slightly different. So rather keep what we have in targets, and just
use types already defined in CMSIS.
2020-05-12 16:01:21 +01:00
Maciej Bocianski cf1e1ddd4b EV_COG_AD4050LZ: keep IVT_NAME/blank_checksum symbols in LTO builds
Add a "used" attribute to IVT_NAME/blank_checksum
to fix ARMC6 build with the "-flto" flag. (Error: L6236E: No section matches
selector - no section to be FIRST/LAST. )

This attribute, attached to a function, means that code must be emitted
for the function even if it appears that the function is not referenced.
2020-02-04 12:29:55 +01:00
Maciej Bocianski 12261edd2b EV_COG_AD3029LZ: keep IVT_NAME/blank_checksum symbols in LTO builds
Add a "used" attribute to IVT_NAME/blank_checksum
to fix ARMC6 build with the "-flto" flag. (Error: L6236E: No section matches
selector - no section to be FIRST/LAST. )

This attribute, attached to a function, means that code must be emitted
for the function even if it appears that the function is not referenced.
2020-02-04 12:29:55 +01:00
Russ Butler 8669417e7b Add HAL API for spi pinmap
Add the functions to get spi pinmaps to all targets.
2019-02-08 09:10:37 -06:00
Russ Butler 34c176654d Add HAL API for serial pinmap
Add the functions serial_tx_pinmap, serial_rx_pinmap, serial_cts_pinmap
and serial_rts_pinmap to all targets.
2019-02-08 09:10:28 -06:00
Russ Butler 22a89773fa Add HAL API for i2c pinmap
Add the functions i2c_master_sda_pinmap, i2c_master_scl_pinmap,
i2c_slave_sda_pinmap and i2c_slave_scl_pinmap to all targets.
2019-02-08 09:10:12 -06:00
Russ Butler 4818f88d73 Add HAL API for analog in pinmap
Add the function analogin_pinmap to all targets.
2019-02-08 09:09:51 -06:00
Przemyslaw Stekiel f0ab08a68c [Analog_Devices] Support boot stack size configuration option 2019-01-08 15:32:02 +01:00
Alastair D'Silva aa80b7c70a Don't use define checks on DEVICE_FOO macros (partner code)
The DEVICE_FOO macros are always defined (either 0 or 1).

This patch replaces any instances of a define check on a DEVICE_FOO
macro with value test instead.

Signed-off-by: Alastair D'Silva <alastair@d-silva.org>
2018-12-20 20:02:29 +11:00
Deepika 26dc7bd562 Analog Devices: Fix alignment of execute region to 8-byte boundary
--legacyalign, --no_legacyalign are deprecated from ARMC6 compiler, in order to
remove deprecated flags all linker files (GCC and IAR as well to have uniformity)
should strictly align to 8-byte boundary
2018-10-09 10:15:07 -05:00
Edmund Hsu b57f90241e Apply consistent system return code to adi_system_EnableRetention() 2018-08-29 13:42:16 +10:00
Edmund Hsu ae492d9c4a Add consistent ADuCM3029 System return codes and remove duplicate codes 2018-08-29 13:38:30 +10:00
Edmund Hsu 10af90ac0a Resolve adi_tmr_ConfigTimer api conflict in us_ticker.c for both EV_COG_AD4050LZ and EV_COG_AD3029LZ 2018-08-06 16:41:55 +10:00
Edmund Hsu da6c6bdc49 Resolve adi_tmr_ConfigTimer discrepancy between __ADuCM4050__ and __ADuCM3029__ 2018-08-06 16:36:36 +10:00
Edmund Hsu 6a7bfeba6d Disable unused Configuration data from compiler warning
Add __ADuCM3029__ constants
2018-08-06 16:32:18 +10:00
Edmund Hsu 20de3366ae Add C++ linkage for adi_tmr.h 2018-08-06 16:25:32 +10:00
Edmund Hsu 9579440ce7 Add __ADUCM4050__ and __ADUCM3029__ to include MCU specific configurations 2018-08-06 16:23:25 +10:00
Przemyslaw Stekiel ace821017f Add implementation of ticker_free() function to CI boards.
This PR provides implementation of ticker_free() function for the following boards:
ARCH_PRO
EV_COG_AD3029LZ
EV_COG_AD4050LZ
K22F
K64F
K82F
KW24D
KW41Z
LPC546XX
NRF51_DK
NRF52_DK
NUCLEO_F207ZG
NUCLEO_F401RE
NUCLEO_F429ZI
NUCLEO_F746ZG
REALTEK_RTL8195AM
2018-08-02 09:48:10 +02:00
Przemyslaw Stekiel c0ee843d63 Add lp/us ticker_free() functions stub.
This patch adds only empty stubs of `us_ticker_free()` and `lp_ticker_free()` for all boards where these functions are not implemented.
2018-07-25 08:58:38 +02:00
Edmund Hsu 6feef97409 Enable COG boards instruction cache 2018-06-18 16:31:15 +10:00
Edmund Hsu e2fe49d403 Preserve RTC counter value while re-initialization 2018-05-25 13:04:23 -05:00
Edmund Hsu 8d670001f2 Remove trailing spaces of adi_rtc.c 2018-05-25 13:04:23 -05:00
Edmund Hsu e514c2c70d Fix us_ticker.c to support "USTICKER"
- Disable microsecond ticker interrupt on reinitialization
- Skip us_ticker_set_interrupt() if timestamp is already past
- Eliminate tmr2Config since tmrConfig is adequate for all timer config
2018-05-25 12:32:38 -05:00
Edmund Hsu e10ef5bd73 ADI: Enable bootloader for EV_COG_AD3029LZ and EV_COG_AD4050LZ 2018-04-20 16:20:02 +10:00
Edmund Hsu e2d9eb8b79 EV_COG_AD3029LZ: Rework linker scripts to support bootloader
- fix compiler warning message of flash_api.c
- eliminate absolute address of ROM tables
- add MBED_APP_START and MBED_APP_SIZE to linker scripts
2018-04-20 15:57:05 +10:00
Edmund Hsu beb6a38009 EV_COG_AD4050LZ: Rework linker scripts to support bootloader
- fix compiler warning message of flash_api.c
- fix compiler warning message of startup_ADuCM4050.c
- eliminate absolute address of ROM tables
- add MBED_APP_START and MBED_APP_SIZE to linker scripts
2018-04-20 15:45:26 +10:00
Edmund Hsu 3d37c26d28 Add BUTTON pin names for EV_COG_AD4050LZ and EV_COG_AD3029LZ
Apart from reset and boot buttons, EV_COG_AD4050LZ and
EV_COG_AD3029LZ have 2 more user defined buttons:

- BUTTON1
- BUTTON2
2018-04-17 10:53:11 +10:00
Edmund Hsu 04eaabf579 Fix EV_COG_AD3029LZ `us_ticker_fire_interrupt()` minimal time interval
- ensure us_ticker_irq_handler() is called only when GP2 timer expires
- set us_ticker_set_interrupt() time interval to be 9.846 us
- set us_ticker_fire_interrupt() time interval to be 0.03846 us
2018-04-01 19:35:05 +10:00
Edmund Hsu ef6d93eca0 Fix EV_COG_AD4050LZ `us_ticker_fire_interrupt()` minimal time interval
- ensure us_ticker_irq_handler() is called only when GP2 timer expires
- set us_ticker_set_interrupt() time interval to be 9.846 us
- set us_ticker_fire_interrupt() time interval to be 0.03846 us
- convert tab to space
2018-04-01 19:34:24 +10:00