Commit Graph

49 Commits (843b1a19e75998b7d456bf86b154bc21b804a405)

Author SHA1 Message Date
Przemyslaw Stekiel c4bd9d125b Adapt K64F us ticker driver to the new standards.
- provide ticker configuration: 1MHz/32 bit counter.
- us_ticker_init() routine disables interrupts.
- adapt comments.
2018-05-25 12:18:55 -05:00
Steven Cartmell 738d92a79f HAL CRC: K64F: Set output width based on input width, not the polynomial 2018-05-24 17:51:49 +01:00
Steven Cartmell 1da75e5e85 HAL CRC: Fix code to match coding conventions 2018-05-24 17:51:49 +01:00
Steven Cartmell f006002dec Add support for final_xor for K64F Hardware CRC 2018-05-24 17:51:49 +01:00
Steven Cartmell 8e14b5977b HAL CRC: Add bit width parameter to crc_config_t 2018-05-24 17:51:49 +01:00
Steven Cartmell e1ca2b32fc Add CRC configuration options to HAL API 2018-05-24 17:51:49 +01:00
Steven Cartmell 167d3f9a1e HAL CRC: Return early when calling compute with null or 0 size buffer 2018-05-24 17:51:48 +01:00
Steven Cartmell df93c0151c Remove support for 7/8 bit CRC polynomials for K64F 2018-05-24 17:51:48 +01:00
Steven Cartmell fd8b974d47 Add K64F Hardware CRC reference implementation
- Add support for all currently defined polynomials
- Add 'CRC' flag to targets.json for K64F profile
2018-05-24 17:51:48 +01:00
Mahesh Mahadevan 93f8cfed05 K64F: Updated the SYSMPU SDK driver
This is required to setup the MPU for ENET bus master accesses

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-05-23 12:24:07 +03:00
Mahesh Mahadevan 7ed36e4986 MCUXpresso_MCUS: Apply K64F us_ticker fix across all MCU's
Applied changes from commit b6a01de070
for other MCUXpresso MCUs

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-03-07 07:27:04 -06:00
Przemyslaw Stekiel b6a01de070 K64F lp ticker driver - calculation bug fix.
Delta calculation from lp_ticker_set_interrupt() function:
delta_us = timestamp > now_us ? timestamp - now_us : (uint32_t)((uint64_t)timestamp + 0xFFFFFFFF - now_us);

Lets assume that timestam == now_us.
Expected delta value should be 0 and in this current version is 0xFFFFFFFF.

The following condition:
timestamp > now_us
should have the following form:
timestamp >= now_us

Additionally modified us ticker driver to provide the same logic.
2018-02-09 14:29:24 +01:00
sarahmarshy cefcb8cff3
Update K64F trng_api.c 2017-11-21 16:50:43 -06:00
Mahadevan Mahesh 168bdc8803 MCUXpresso: Fix issue of ticker interrupt incorrectly firing
Fix for Issue #5279

Signed-off-by: Mahadevan Mahesh <Mahesh.Mahadevan@nxp.com>
2017-10-18 15:29:57 +01:00
Jimmy Brisson cd4fd86f1f Correct Freescale + NXP compiler detection macros
Also removes duplication of common files
2017-09-11 13:20:32 -05:00
Jimmy Brisson 15a9a0382b Enable Compiling with ARMC6 across all targets
remove duplicate sys.cpp
2017-09-11 13:20:32 -05:00
Mahadevan Mahesh c5b66b85ba K66F,KW24D,K22F,K64F: Fix NVIC_NUM_VECTORS value
Signed-off-by: Mahadevan Mahesh <Mahesh.Mahadevan@nxp.com>
2017-08-23 10:50:12 -05:00
Deepika 2a9c88c1b0 Use DSPI SDK driver API's in spi block read 2017-08-11 10:22:23 -05:00
Martin Kojtal 1c948283be Merge pull request #4805 from NXPmicro/Update_K64F_DSPI_SDK_Driver
K64F: Update the DSPI SDK driver to support the new API to change DUM…
2017-08-09 10:24:07 +01:00
Mahadevan Mahesh cb95458c44 K64F: Update the DSPI SDK driver to support the new API to change DUMMY_DATA
Signed-off-by: Mahadevan Mahesh <Mahesh.Mahadevan@nxp.com>
2017-07-24 15:26:13 -05:00
Jimmy Brisson 1f94ede86c Merge pull request #4744 from deepikabhavnani/spi_issue_4743
Allow user to set default transfer byte for block read
2017-07-24 14:45:30 -05:00
Deepika 1b797e9081 Closed review comments
1. Doxygen and Grammar related
2. Change dummy to spi_fill
3. Remove NXP driver and add default loop in spi block read (same as all
other drivers)
2017-07-21 09:46:22 -05:00
Martin Kojtal 10ea63b8e7 Ticker: add fire interrupt now function
fire_interrupt function should be used for events in the past. As we have now
64bit timestamp, we can figure out what is in the past, and ask a target to invoke
an interrupt immediately. The previous attemps in the target HAL tickers were not ideal, as it can wrap around easily (16 or 32 bit counters). This new
functionality should solve this problem.

set_interrupt for tickers in HAL code should not handle anything but the next match interrupt. If it was in the past is handled by the upper layer.

It is possible that we are setting next event to the close future, so once it is set it is already in the past. Therefore we add a check after set interrupt to verify it is in future.
If it is not, we fire interrupt immediately. This results in
two events - first one immediate, correct one. The second one might be scheduled in far future (almost entire ticker range),
that should be discarded.

The specification for the fire_interrupts are:
- should set pending bit for the ticker interrupt (as soon as possible),
the event we are scheduling is already in the past, and we do not want to skip
any events
- no arguments are provided, neither return value, not needed
- ticker should be initialized prior calling this function (no need to check if it is already initialized)

All our targets provide this new functionality, removing old misleading if (timestamp is in the past) checks.
2017-07-13 12:23:25 +01:00
Deepika fd43405ffe Allow user to set dummy tranfer byte for block read 2017-07-11 15:46:32 -05:00
Deepika 35a436672b Resolving warning: unused variable 'instance' [-Wunused-variable] 2017-06-15 12:09:50 -05:00
Deepika 8e1fe0a6b7 Added newline at end of file 2017-06-15 12:08:34 -05:00
Deepika cc6de51688 Resolving warning: #2524-D: #pragma pop with no matching #pragma push : Pragma push for CC_ARM option is inside GNUC define, same hierarchy to be followed while pop 2017-06-15 12:07:02 -05:00
Deepika 9c9586a388 moving static at the start to resolve warning:'static' is not at beginning of declaration [-Wold-style-declaration] 2017-06-15 12:02:43 -05:00
Mahadevan Mahesh b3b0d21c8b Flash API support using the MCUXpresso drivers
Signed-off-by: Mahadevan Mahesh <Mahesh.Mahadevan@nxp.com>
2017-06-09 11:20:23 -05:00
Sam Grove 5f138810a9 Merge pull request #4294 from ARMmbed/feature_cmsis5
Update CMSIS-Core and RTX to version 5
2017-06-02 23:44:32 -05:00
Bartek Szatkowski b97ffe8fdc CMSIS5: Replace target defined NVIC_Set/GetVector with CMSIS implementation 2017-05-30 18:55:51 +01:00
Christopher Haster e352f1b7f8 k64f: Added SPI block write using DSPI_MasterTransferBlocking
performance improvements:
naive block writes    3.997Mbps
DSPI block writes    17.809Mbps
2017-05-25 12:08:39 -05:00
Christopher Haster c1de19e49e spi: Added default spi_master_block_write implementation to all targets
There is an easy default implementation of spi_master_block_write that
just calls spi_master_write in a loop, so the default implementation
of spi_master_block_write has been added to all targets.
2017-05-25 12:04:58 -05:00
Kevin Gilbert 418d83b6c2 Addressed review comments: fixed unmapped switches and added Hexiware buttons 2017-05-02 12:20:05 -05:00
Kevin Gilbert 28d1ac5a44 Added mapping to USER_BUTTON-labelled switches
Revert HRM1017 file source deletion

Added in small comment next to additions

Added mapping to BTN-labelled switches

Added mapping to USER_BUTTON-labelled switches

Undo incorrect mapping to SWIO pin in NORDIC target
2017-04-28 11:37:23 -05:00
Kevin Gilbert 77cc87b050 Adding consistent button pin mappings 2017-04-27 18:42:47 -05:00
Mahadevan Mahesh 5b866b79d1 MCUXpresso: Update ARM linker files to reduce RAM reserved for stack & heap
Heap and stack size is determined via the RTOS.

Signed-off-by: Mahadevan Mahesh <Mahesh.Mahadevan@nxp.com>
2017-04-14 11:21:28 -05:00
0xc0170 424fd78161 flash: fix flash algo generated - protect with DEVICE_FLASH 2017-03-26 17:59:40 +01:00
Christopher Haster aff49d8d1e Renamed files in platform to match source names
critical.h     -> mbed_critical.h
sleep.h        -> mbed_sleep.h
toolchain.h    -> mbed_toolchain.h
rtc_time.h     -> mbed_rtc_time.h
semihost_api.h -> mbed_semihost_api.h
wait_api.h     -> mbed_wait_api.h
2017-02-22 18:17:54 -06:00
Russ Butler 071235415e Add K64F, KL46Z, F429, F439 and odin flash algos
Check in flash algos for the K64F, KL46Z, F429, F439  and Odin board
and enable these features accordingly in targets.json. This
implementation uses flash algo blob that are generated via scripts.
The K64F and KL46Z were generated directly from packs, while the
KL46Z, F429, F439 and odin were generated from code checked into
the FlashAlgo repo.
2017-02-21 14:09:06 -06:00
Russ Butler 579b2fbe40 Update K64F linker scripts for bootloader support
Add MBED_APP_START and MBED_APP_SIZE to the K64F's linker script
so the start and size of an image can be specified. This allows the
ROM to be split into a bootloader region and an application region.
2017-02-10 18:28:58 -06:00
Jaeden Amero 378655f40c uVisor: Standardize available legacy heap and stack
With the RTOS, the STACK_SIZE specified here is unrelated to the stack
size available for the main thread (that runs pre_main). Save memory by
reducing the stack size to a more reasonable amount.

On uVisor, HEAP_SIZE is both a minimum available and maximum available
heap size. The heap can't grow beyond the end of the heap into the
neighboring stack. On all uVisor-supported platforms, guarantee at least
0x6000 bytes of heap space. This increases the portability of uVisor
applications as the memory available for legacy heap allocations is
guaranteed. This helps to avoid out of memory errors on platforms that
were previously guaranteeing less memory.
2017-02-07 16:46:38 +00:00
Martin Kojtal c14d7154e6 Merge pull request #3397 from AlessandroA/stm32f4_support
Add uVisor support for the DISCO_F429ZI
2017-01-16 16:24:33 +00:00
Anna Bridge 6cf0c8673b Merge pull request #3558 from NXPmicro/UART_Asynch_Fix
K64F UART Asynch API: Fix synchronization issue
2017-01-13 10:45:40 +00:00
Mahadevan Mahesh 89f8fe49a2 MCUXpresso: Fix ENET driver to enable interrupts after interrupt handlers are set
Signed-off-by: Mahadevan Mahesh <Mahesh.Mahadevan@nxp.com>
2017-01-10 13:04:27 -06:00
Mahadevan Mahesh 8c71fbc07f K64F UART Asynch API: Fix synchronization issue
The UART state should be set to busy before starting the transfer

Signed-off-by: Mahadevan Mahesh <Mahesh.Mahadevan@nxp.com>
2017-01-10 10:45:28 -06:00
Alessandro Angelino 89641bc7e0 uVisor: Update K64F and EFM32GG linker scripts
This commit improves consistency between different platforms' linker
scripts. In particular, we use "__UVISOR_SRAM_START" instead of
"__UVISOR_BSS_START" as the uVisor BSS sections might be outside of the
SRAM (for example, when using a tightly-coupled memory).
2017-01-10 13:15:54 +00:00
Mahadevan Mahesh ece7b6f05b K64F: Add support for SERIAL ASYNCH API
Signed-off-by: Mahadevan Mahesh <Mahesh.Mahadevan@nxp.com>
2016-12-21 11:35:27 -06:00
Mahadevan Mahesh e5ba1d2b37 Rename KSDK2 to MCUXpresso. This is the new name of this package from NXP
Signed-off-by: Mahadevan Mahesh <Mahesh.Mahadevan@nxp.com>
2016-12-19 14:20:25 -06:00