Commit Graph

11 Commits (master)

Author SHA1 Message Date
YahyaTawil 7a108087ed Add default SWO pin number and config if not defined in Ambiq target 2022-05-06 17:24:59 +03:00
YahyaTawil 6467f77125 add ITM (SWO) tracing support to Ambiq Apollo3 targets 2022-05-05 15:45:09 +03: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
Martin Kojtal 74f9603c0a
Merge pull request #13861 from idea--list/ambiq-apollo3-dev-squash
Ambiq apollo3 fix of an SPI related SD bug
2020-11-12 08:43:58 +00:00
kalle16lab 6bf039d44c
Update sleep.c
copyright date change
2020-11-04 11:09:37 +02:00
Kalle-Gustav Kruus 851eca4ddb added naieve way of sleeping seems to work at first glance 2020-11-03 18:05:21 +02:00
Peter B 02a12a8722
Update spi_api.c
Modified the spi_master_block_write() function yet again. SD related examples still read/erase/write the SD cards as expected and with these alterations the power consumption does not remain high after the SPI transaction has been finished. However i still only tested the SD functionality. Please test other SPI scenarios and different sensors as well to find out if this PR introduces unexpected bugs or not.

Changes:
- deleted the whole if (xfer.ui32NumBytes) condition as i did not find it logical (by that i mean xfer.ui32NumBytes was also true within the following else if (tx_length != rx_length){} block, so basically when the 2 buffers had different lengths an extra transfer has been done for nothing)
- removed the bool Rw = (rx_length >= tx_length) as the comparison >= has no sense anymore after if (tx_length == rx_length) on line 159.
2020-10-28 23:28:34 +01:00
Peter B d56f942ae7
Update spi_api.c
Modified line 145:  previously the fill character has been hard coded to 0x00. However in Mbed OS core SPI_FILL_CHAR is defined in the core to be 0xFF by default (one can change that through mbed_app.json for example). This mod allows us to use the same fill character that is defined for Mbed OS.

Also modified spi_master_block_write(): previously it called am_hal_iom_blocking_transfer on line 182, but that prevented succesful SD card writing operations. Now i changed that part to am_hal_iom_spi_blocking_fullduplex and SD functionality seems to be working.
2020-10-26 16:03:04 +01:00
Wenn0101 c2bddbbc57 Apollo3 and artemis, remove dead code and include relevant header 2020-09-09 16:43:59 -06:00
Wenn0101 e97ebc033a Apollo3 and artemis code review changes, remvoe dead code, add missing spdx identifiers, fix style 2020-09-09 15:47:23 -06:00
Wenn0101 68d59d3781 Add new targets, Ambiq Apollo3 and Sparkfun Electronics, SFE, boards 2020-09-09 01:13:05 -06:00