Commit Graph

43 Commits (02df759c379901c2ccb3e85a55dab6d258a23ef8)

Author SHA1 Message Date
Leszek Rusinowicz 7d540cd61a FUTURE_SEQUANA: InterruptIn implementation bug fix
Fixed HAL API implementation for InterruptIn:
 - Interrupt was not enabled by default after configuration as it should be.
 - Interrupt-to-object linking was not handled properly.
2019-09-03 13:48:53 +02:00
Seppo Takalo f2236d26f8
Merge pull request #11131 from lrusinowicz/serial_free_fix
FUTURE_SEQUANA: Add missing serial_free() implementation
2019-08-05 15:41:45 +03:00
Leszek Rusinowicz 16372f3222 FUTURE_SEQUANA: Add missing serial_free() implementation 2019-07-31 13:28:31 +02:00
Filip Jagodzinski 844864066a PSOC6_FUTURE: Fix circular dependency for GPIO-IRQ
The use of `gpio_irq_event` & `gpio_irq_handler` in `gpio_irq_s` creates
a circular dependency.

hal/gpio_irq_api.h needs
targets/TARGET_Cypress/TARGET_PSOC6_FUTURE/TARGET_CY8C63XX/device.h, that needs
targets/TARGET_Cypress/TARGET_PSOC6_FUTURE/objects.h, that again needs
hal/gpio_irq_api.h, before the types are defined.

Remove `#include "gpio_irq_api.h"` directive from objects.h and change
the types of `gpio_irq_s` members.
2019-07-25 11:04:16 +02:00
Maciej Bocianski fcde82ba4f HAL I2C: adds missing DEVICE_I2C guards 2019-06-19 23:08:55 +02:00
Martin Kojtal 9cc1caa031
Merge pull request #10596 from kjbracey-arm/sem_acquire
Introduce Semaphore::acquire methods
2019-05-29 06:22:30 +01:00
Kevin Bracey 2fbbd9d2ca Introduce Semaphore::acquire methods
Deprecate wait() in favour of acquire(), try_acquire(),
try_acquire_for() and try_acquire_until().

Brings Semaphore more into line with CMSIS-RTOS 2 (which uses "acquire"),
itself (as it has "release"), and other classes having "try", "try for"
and "try until".

Also steps away from vague "wait" term - the primary operation here is
to acquire the semaphore, and this will of course sleep.
2019-05-28 17:02:06 +03:00
Devaraj Ranganna 7765d39283 The targets FUTURE_SEQUANA_M0_PSA and FUTURE_SEQUANA_PSA are removed
due to partial implementation. Having FUTURE_SEQUANA_M0 and
FUTURE_SEQUANA PSA targets is misleading.

Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
2019-05-21 15:00:31 +01:00
Martin Kojtal fc12229df9
Merge pull request #10412 from lrusinowicz/flash_api_fix
FUTURE_SEQUANA: Fix flash_api bug introduced with e16d2d81d9
2019-04-18 08:20:31 +01:00
Leszek Rusinowicz ab8b573138 FUTURE_SEQUANA: Clean up "unused variable" compiler warnings
Clean up compiler warnings coming from PDL read-out of peripheral
interrupt status registers.
2019-04-16 16:59:53 +02:00
Leszek Rusinowicz f81fbab9f0 FUTURE_SEQUANA: Fix flash_api bug introduced with e16d2d81d9
PDL Flash API requires that the data buffer is 32-bit aligned, otherwise
programming can hung. Buffer declared as uint8_t array is not always
properly aligned, e.g. with gcc 6 when -Os option is used.
2019-04-16 11:20:11 +02:00
Leszek Rusinowicz e5d970d321 FUTURE SEQUANA: Fixed linker scripts for ARMC6
Also enabled ARMC6 compiler for FUTURE_SEQUANA family of targets.
2019-04-08 16:51:52 +02:00
Leszek Rusinowicz 48d12c39e5 FUTURE_SEQUANA: Fixed ARMC6 compiler errors and warnings 2019-04-08 16:50:20 +02:00
Leszek Rusinowicz 270f368bbd FUTURE_SEQUANA: Flatten PDL library paths
This change moves all PDL drivers into common source and include
directories to alleviate issue with Windows version of GNU Make 4.x
maximum command line length limit.
2019-04-08 16:31:17 +02:00
Leszek Rusinowicz f0e0e9f5cd FUTURE_SEQUANA: Fixed LP ticker for M0 core
Fixed interrupt vector settings on M0 core. Wrong vector settings prevented
LP_TICKER from working, resulting in deep sleep tests failing on M0
or PSA variant.
2019-04-02 13:33:33 +02:00
Leszek Rusinowicz 17ed003bb8 Removed cymetadata section from FUTURE_SEQUANA targets
This data, placed at physically not existing addresses (0x9xxxxxxx) was used
only by PSoC Programmer and KitProg2 and is no longer needed, but was causing
issues with standard hex file processing tools like srecord (srec_cat).
2019-03-08 12:57:34 +01:00
Cruz Monrreal 63242cfbb4
Merge pull request #9939 from kfnta/fix_for_secure_partition
Fix for secure partition
2019-03-06 20:00:38 -06:00
Cruz Monrreal f3ecc0b485
Merge pull request #9940 from davidsaada/david_psoc6_reduce_prog_size
Reduce flash page size from 512 to 32 bytes in PSOC6 based boards
2019-03-06 13:44:39 -06:00
David Saada 9cacd029ef Reduce flash page size from 512 to 32 bytes in PSOC6 based boards
Page size in all PSOC6 boards is 512 bytes. This is very problematic in
all storage applications. This change reduces the page size (in flash_api's
flash_program_page API) to 32 by reading the original page, modifying it
with programmed data and programming it back. The number 32 for page size
conforms to the number of times (16) this action can be done.
2019-03-06 13:45:27 +02:00
Netanel Gonen 094f2a6b6e Update PSoC 6 pre-build secure partition 2019-03-05 15:12:09 +02:00
Oren Cohen cfb60ec955 Fixes
* Add #include <stddef.h> to psa/client.h
* Add Attestation service to TFM
* Update FUTURE_SEQUANA_PSA secure binaries
* Remove MBED_SPM from K64F
* Refactor psa_manifest/sid.h
* Increase stackl size in spm-client tests
* Add handling of errors from psa_get in partitions
2019-03-03 13:30:58 +02:00
Michael Schwarcz 6341d44591 Update FUTURE_SEQUANA_M0_PSA default binaries 2019-03-03 10:55:47 +02:00
itayzafrir 02f5918013 Update pre-built hex file for secure side tests 2019-02-28 10:29:53 +02:00
itayzafrir 4764b5505c Add pre-built hex file for secure side tests 2019-02-27 16:28:36 +02:00
Cruz Monrreal e1736cd06f
Merge pull request #9571 from mprse/fix_9523_rtos_less_issue
Update to 2-region model for HEAP and Stack Memory
2019-02-26 22:50:19 -06:00
Oren Cohen 49aae7b43e
Update secure binaries 2019-02-22 02:04:00 +02:00
Volodymyr Medvid d49e2ab232 PSOC6: fix port_write API
Fix port_write API to correctly shift the passed value.
This allows the reference application provided in PortOut docs
to work corectly with arbitrary LED_MASK.
https://os.mbed.com/docs/mbed-os/v5.11/apis/portout.html

The fix applies to both PSOC6 and PSOC6_FUTURE HAL implementations.
2019-02-20 12:32:10 +02:00
Deepika 5e4dcaba71 Target_Cypress: Set the heap limit 2019-02-19 15:49:49 -06:00
Martin Kojtal ba7aa88715
Merge pull request #9678 from lrusinowicz/sequana_psa_deepsleep
FUTURE_SEQUANA_PSA: fixed deep sleep mode
2019-02-13 11:33:09 +01:00
Cruz Monrreal 0ccb4dd44c
Merge pull request #9680 from lrusinowicz/sequana_arduino_mappings
FUTURE_SEQUANA: Fixed Arduino signal mappings
2019-02-12 20:05:12 -06:00
Leszek Rusinowicz 03d7b15e47 FUTURE_SEQUANA: Fixed Arduino signal mappings
Fixed Arduino signal mappings for production version of Sequana board.
2019-02-12 12:20:01 +01:00
Leszek Rusinowicz 92b019f110 FUTURE_SEQUANA_PSA: fixed deep sleep mode
Enabled tickless mode for Sequana PSA M0 core code to allow it to enter
deep sleep mode. This fixes issue #9094 where tests were failing due to
M0 core not entering deep sleep mode, blocking the whole chip.
Fixed incorrect resource management on M0 core, which crashed tickless
mode.
2019-02-12 10:32:49 +01:00
Martin Kojtal 8f932a476f
Merge pull request #9449 from c1728p9/pinmap-extension
Pinmap extensions
2019-02-11 18:24:19 +01:00
Martin Kojtal 160a771e2b
Merge pull request #9647 from lrusinowicz/sequana_spi_fixes
FUTURE_SEQUANA: SPI HAL fixes
2019-02-11 17:53:04 +01:00
Alexander Zilberkant d629bdfe5f FUTURE_SEQUANA_M0_PSA - fix CM4 starting address
Use PSA_NON_SECURE_ROM_START configuration value instead of hardcoded CY_CORTEX_M4_APPL_ADDR.
2019-02-10 11:13:38 +02:00
Leszek Rusinowicz 2f6684ba19 FUTURE_SEQUANA: SPI HAL fixes
1. Removed random i/o glitches occurring during device reconfiguration
2. Fixed hazardous reads occurring at the end of transfer resulting
   in incorrect values being received
3. Added spi_free() function
4. Replaced default M0 image with a one ignoring i/o reservation. This is
   a workaround for missing proper destructors in Mbed drivers and BlockDevice
   tests failing on repeated initialization
Fixes issue #9620.
2019-02-08 16:59:13 +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 be492fe07a Add HAL API for pwmout pinmap
Add the function pwm_pinmap to all targets.
2019-02-08 09:10:19 -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 3bd3aca6db Add HAL API for analog out pinmap
Add the function analogout_pinmap to all targets.
2019-02-08 09:10:05 -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
Volodymyr Medvid 6b0658dd30 Move FUTURE_SEQUANA port to TARGET_PSOC6_FUTURE
The targets/TARGET_Cypress/TARGET_PSOC6 is dedicated to the mbed-os HAL
and PSoC 6 MCU targets developed by Cypress Semiconductor. Move the
existing port developed by Future Electronics to TARGET_PSOC_FUTURE
and update the labels in targets.json appropriately.
2019-02-06 18:56:19 +02:00