Commit Graph

369 Commits (14714a8055a68b699107fa0b2b51bc3d76c40b46)

Author SHA1 Message Date
Maciej Bocianski fcde82ba4f HAL I2C: adds missing DEVICE_I2C guards 2019-06-19 23:08:55 +02:00
Kevin Bracey e5e2e0ac22 Freescale MCUXpresso: optimize us_ticker
Provide new optimizations for us_ticker and wait_us.
2019-06-14 10:22:08 +03:00
Filip Jagodzinski 8e3ca20817 K82F: Fix serial IRQ handling
Check that the RX or TX interrupt is enabled before calling
a registered handler with RxIrq or TxIrq arg.
2019-06-07 16:47:59 +02:00
Filip Jagodzinski 3119d69f0e KL27Z: Fix serial IRQ handling
Check that the RX or TX interrupt is enabled before calling
a registered handler with RxIrq or TxIrq arg.
2019-06-07 16:46:53 +02:00
Filip Jagodzinski 9efaabe404 K66F: Fix serial IRQ handling
Check that the RX or TX interrupt is enabled before calling
a registered handler with RxIrq or TxIrq arg.
2019-06-07 16:41:36 +02:00
Filip Jagodzinski 68269672c4 KL43Z: Fix serial IRQ handling
Check that the RX or TX interrupt is enabled before calling
a registered handler with RxIrq or TxIrq arg.
2019-06-07 16:41:09 +02:00
Filip Jagodzinski 5f95c5fc85 KL82Z: Fix serial IRQ handling
Check that the RX or TX interrupt is enabled before calling
a registered handler with RxIrq or TxIrq arg.
2019-06-07 16:37:49 +02:00
Filip Jagodzinski 0b33e8f976 KW24D: Fix serial IRQ handling
Check that the RX or TX interrupt is enabled before calling
a registered handler with RxIrq or TxIrq arg.
2019-06-07 16:35:36 +02:00
Filip Jagodzinski 96b6cd3ee6 KW41Z: Fix serial IRQ handling
Check that the RX or TX interrupt is enabled before calling
a registered handler with RxIrq or TxIrq arg.
2019-06-07 16:33:42 +02:00
Filip Jagodzinski 01e130ba83 K24F: Fix serial IRQ handling
Check that the RX or TX interrupt is enabled before calling
a registered handler with RxIrq or TxIrq arg.
2019-06-07 16:19:25 +02:00
Filip Jagodzinski f60850ad50 K22F: Fix serial IRQ handling
Check that the RX or TX interrupt is enabled before calling
a registered handler with RxIrq or TxIrq arg.
2019-06-07 16:17:07 +02:00
Filip Jagodzinski 94c27aa750 K64F: Fix serial IRQ handling
Check that the RX or TX interrupt is enabled before calling
a registered handler with RxIrq or TxIrq arg.
2019-06-07 15:17:07 +02:00
Filip Jagodzinski 61f9a1c362 KW41Z: Add a GPIO pinmap for testing 2019-05-27 14:57:01 +02:00
Filip Jagodzinski 1a9b635e7d KW24D: Add a GPIO pinmap for testing 2019-05-27 13:21:43 +02:00
Filip Jagodzinski a326db8b77 K64F: Use a common peripheral name in GPIO pinmap
This was unnecessary since all the pins may be used independently.
2019-05-24 16:33:01 +02:00
Steve Cartmell 7f47b0a65c fix(hal-watchdog): Add feature guards to K64F watchdog implementation 2019-05-24 12:23:35 +02:00
Filip Jagodzinski 4ed0b948f4 K64F: watchdog HAL: Fix init() and stop()
Added a missing wait for the WCT window end. Without it, consecutive
init() or stop() calls were ignored.
2019-05-24 11:35:30 +02:00
Steven Cartmell 2fb9fc2a8e Rename watchdog.c -> watchdog_api.c to prevent name collision with Platform API 2019-05-24 11:35:25 +02:00
Filip Jagodzinski 90bb2929e0 K64F: watchdog HAL: Fix max_timeout.
Limit MAX_TIMEOUT_MS to UINT32_MAX.
Improve MAX_TIMEOUT_MS handling.
Fix hal_watchdog_get_platform_features() returning
.max_timeout = 0xfffffff8 instead of 0xffffffff.
2019-05-24 11:35:23 +02:00
Steven Cartmell 2ab738fc66 Fix Watchdog::stop on K64F target
WDOG_Disable will suspend the watchdog until a reset is triggered instead of stopping it altogether. Deinit will disable it until it is reinitialized.
2019-05-24 11:35:22 +02:00
Steven Cartmell e7761a1d39 Move watchdog parameter validation into the driver layer 2019-05-24 11:35:22 +02:00
Steven Cartmell 31924b2481 Add missing license headers 2019-05-24 11:35:21 +02:00
Steven Cartmell 7c392a16d4 Remove window and sleep mode options for watchdog API 2019-05-24 11:35:13 +02:00
Steven Cartmell 8fa38bb25b Add Watchdog driver API 2019-05-24 11:20:26 +02:00
Steven Cartmell 6b3d790fc1 Add function to fetch platform specific reset reason register values 2019-05-24 11:20:24 +02:00
Steven Cartmell 8a97101988 Fix watchdog API issues
- Fix typo in module comment
- Redefine the default system behaviour in sleep mode
- Guard K64F enableWait flag
- Remove bit shifts from reset reason enum
2019-05-24 11:20:22 +02:00
Steven Cartmell c258acc222 Add simple watchdog reference implementation for K64F
- Add preprocessor guard to watchdog api that errors if the reset reason api is not also implemented
- Add RESET_REASON and WATCHDOG to K64F targets.json
- Add watchdog reference implementation
2019-05-24 11:20:21 +02:00
Steven Cartmell efcdca8b0f Add K64F reset reason reference implementation 2019-05-24 11:20:20 +02:00
Filip Jagodzinski 5bc873239e K64F: Add a GPIO pinmap for testing 2019-05-23 14:29:26 +02:00
DESKTOP-UBVDC3M\Sachin 0897f6c196 K66F: Update to SDK 2.5 2019-05-15 21:54:48 -07:00
JarekParal bd59a4cdf5 Fix code alignment 2019-04-29 17:33:28 +02:00
JarekParal 484c8a59b9 Add missing ADC pins mapping for FRMD-K66F 2019-04-29 10:54:39 +02:00
Arto Kinnunen 647ac06f04 Use Mbed OS coding style
Run astyle 3.0 for the changed c-files.
2019-03-11 16:59:54 +02:00
Arto Kinnunen e1deb88471 Add spi_get_peripheral_name to MCUEpresso spi_api
Fix issue https://github.com/ARMmbed/mbed-os/issues/9149.

Port changes from https://github.com/ARMmbed/mbed-os/pull/9845 also
to targets: K64F, K66F, KW24D and KW41Z
2019-03-11 14:18:41 +02:00
deepikabhavnani 0ff2d42143 Heap and stack size picked from linker files,export symbols not needed 2019-02-28 19:54:38 -06:00
deepikabhavnani 0dc5561991 Guard RAM start and size defines 2019-02-28 19:54:38 -06:00
deepikabhavnani 4b95b51e1b Target_Freescale: Add ARM_LIB_STACK and ARM_LIB_HEAP section
Instead of user defined symbols in assembly files or C files,
use linker scripts to add heap and stack - this is inconsistent
with ARM std linker scripts
2019-02-28 19:54:38 -06:00
Deepika 49266c161c Remove TOOLCHAIN_GCC_CW_NEWLIB files 2019-02-22 11:31:18 -06:00
deepikabhavnani dab2a30c29 Target_Freescale: Add heap section in linker files 2019-02-20 16:01:40 -06:00
deepikabhavnani c5ad5f6c94 Target_Freescale:Add heap section 2019-02-19 15:49:49 -06:00
deepikabhavnani f518a696de Remove unused heap_size define 2019-02-19 15:49:49 -06:00
deepikabhavnani 38e9314ddd Add missing space in linker script 2019-02-19 15:49:49 -06:00
Deepika e7e9e0734c Update K64F linker files for general solution of 2-ram regions 2019-02-19 15:49:49 -06:00
Deepika e03455a920 Target_Freescale: Set the heap size and limit 2019-02-19 15:49:49 -06:00
deepikabhavnani 818d38b6ae Only GCC_ARM toolchain is supported, removing legacy code 2019-02-13 16:26:22 -06:00
Martin Kojtal 8f932a476f
Merge pull request #9449 from c1728p9/pinmap-extension
Pinmap extensions
2019-02-11 18:24:19 +01:00
Martin Kojtal fd5a6af137
Merge pull request #9613 from mprse/stack_heap_fix_k64f_only
K64/ARM: Update to 2-region model for HEAP and Stack Memory
2019-02-11 17:55:30 +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 2ed1dc2bfa Add HAL API for qspi pinmap
Add the functions qspi_master_sclk_pinmap, qspi_master_ssel_pinmap and
qspi_master_data0_pinmap-qspi_master_data3_pinmap to all targets with
qspi support.
2019-02-08 09:10:25 -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
Przemyslaw Stekiel 292f1a155d K64/ARM: Update to 2-region model for HEAP and Stack Memory 2019-02-05 14:13:58 +01:00
Russ Butler 66b8ca2599 Define A0 to NC for the TARGET_KW41Z
Set A0 to NC so it is defined on the KW41Z platform.
2019-02-02 09:44:20 -06:00
Russ Butler 82b131aa59 Use dedicated PinMap for each QSPI data line
Split PinMap_QSPI_DATA into PinMap_QSPI_DATA0 - PinMap_QSPI_DATA3.
This allows pins to be selected more accurately.
2019-01-22 12:11:15 -06:00
Martin Kojtal 5212cc6544
Merge pull request #6622 from NXPmicro/Add_KW41Z_Thread
Add nanostack support for KW41Z
2019-01-14 14:00:14 +01:00
Mahesh Mahadevan 585a4b6ddd Add nanostack support for KW41Z
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-01-09 07:43:41 -06:00
Przemyslaw Stekiel 08004e141d [Freescale] Support boot stack size configuration option 2019-01-08 15:32:03 +01:00
Martin Kojtal 63eca294a1
Merge pull request #9163 from InfernoEmbedded/fix-8913-partner
Don't use define checks on DEVICE_FOO macros (partner code)
2019-01-07 16:37:24 +00:00
heejungPark 725fbb96a8 changed UART0 to UART2, added UART_5 on SDT64B 2019-01-03 17:13:16 +09: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
Mahesh Mahadevan 3d8d65be6a Rapid-IoT: Add support for the KW41Z side of the platform
Add support for the KW41Z side of the RapidIoT platform. This requires the latest
DAPLink binary to be programmed on the RapidIoT platform, binary can be downloaded
from the below link:
https://armmbed.github.io/DAPLink/

Also, the KW41Z side on RapidIoT does not have a serial port connected to the Debug
terminal. Therefore a SerialPassThrough program should be flashed and running on the
K64F side of RapidIoT platform for the mbed tests to pass.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-12-14 06:35:43 -06:00
Martin Kojtal d321c11531
Merge pull request #8872 from NXPmicro/Fix_RTC_Startup
MCUXpresso: Ensure the RTC OSC is running at bootup on Kinetis platforms
2018-12-03 13:41:56 +01:00
Cruz Monrreal 5b9761e244
Merge pull request #8827 from mprse/ticker_free_k64f_fix
TARGET_MCUXpresso_MCUS: fix lp ticker init function
2018-11-30 17:55:35 -06:00
Mahesh Mahadevan dcc8b659bc MCUXpresso: Ensure the RTC OSC is running at bootup on Kinetis platforms
This is a fix for Issue 5348.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-11-28 10:31:58 -06:00
Martin Kojtal 52aea31655
Merge pull request #8702 from SenRamakri/sen_CrashReportingImpl
Crash Reporting implementation
2018-11-23 20:24:53 +01:00
Przemyslaw Stekiel f05d642422 TARGET_MCUXpresso_MCUS: fix lp ticker init function
In case when lp ticker is already initialized the ticker interrupt should be disabled.
2018-11-21 08:54:49 +01:00
Cruz Monrreal II a5bef60afe Revert "Merge pull request #8272 from NXPmicro/Ensure_RTC_OSC_Start"
This reverts commit 3d859ca1d6, reversing
changes made to 03f4623b80.
2018-11-20 16:58:11 -06:00
Senthil Ramakrishnan ef8c1c3cb6 Linker script modifications for crash data region 2018-11-16 13:59:59 -06:00
Cruz Monrreal II 20fc4da5df Merge branch 'KW41Z_Add_Bootloader-Support' of ssh://github.com/NXPmicro/mbed into rollup 2018-11-08 13:24:10 -06:00
David Saada 542744d03c Support erase value in Flash HAL drivers, FlashIAP and block devices 2018-11-07 14:23:07 +02:00
Mahesh Mahadevan 76930c0979 KW41Z: Add Bootloader support
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-11-06 12:03:26 -06:00
Yossi Levy d9a84c42cf Remove SPI_PERSISTENT_MEM_CS macro and replace it with SPI_CS 2018-10-25 12:10:48 +03:00
Cruz Monrreal 0db896036c
Merge pull request #8485 from NXPmicro/feature-qspi-kinetis
Feature qspi kinetis
2018-10-23 12:38:11 -05:00
Mahesh Mahadevan 9dc3f8c19a KL82Z FRDM: Update the KL82Z Freedom board for QSPI
Add the QSPI pin defines, clock information and flash details

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-10-18 12:14:27 -05:00
Mahesh Mahadevan 858e536f1a K82F FRDM: Update the K82F Freedom board for QSPI
Add the QSPI pin defines, clock information and flash details

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-10-18 12:14:26 -05:00
Mahesh Mahadevan 9f64e46de2 K82F, KL82Z: Update register access mode for QSPI IPCR register
Add 16-bit access mode when writing the transfer size to prevent
the QSPI transaction from starting

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-10-18 12:14:26 -05:00
Mahesh Mahadevan 3bd6235032 K82F, KL82Z: Update the QSPI SDK driver to the latest version
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-10-18 12:14:25 -05:00
Mahesh Mahadevan e28fb7466b MCUXpresso: Add the QSPI HAL driver
This should support QSPI on Kinetis devices

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-10-18 12:14:23 -05:00
Mahesh Mahadevan ebf31c67f0 MCUXpresso: Ensure the RTC OSC is running at bootup on Kinetis platforms
This is a fix for Issue 5348.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-10-18 08:55:48 -05:00
Cruz Monrreal c9adf3cef4
Merge pull request #8307 from NXPmicro/Add-Support_RapidIoT
Add support for RapidIoT
2018-10-18 08:15:07 -05:00
Mahesh Mahadevan 9a47915791 MCUXpresso Flash Driver: Update Flash driver to support RAPIDIOT
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-10-16 08:52:15 -05:00
maclobdell fd08cc94f2 Add support for NXP Rapid IoT prototyping kit
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-10-16 08:52:14 -05:00
Mahesh Mahadevan f29a597411 MCUXpresso: Fix for the TRNG HAL driver
Apply the fix from K64F TRNG HAL driver.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-10-15 16:00:34 -05:00
Anna Bridge 24857d0f91
Merge pull request #5285 from c1728p9/minimum_requirements_test
Update devices to have minimum 2K RAM and heap, also added test
2018-10-12 11:04:57 +01:00
Cruz Monrreal 73f1d4cabd
Merge pull request #8186 from deepikabhavnani/freescale_align_fix
Freescale/NXP: Fix alignment of execute region to 8byte boundary
2018-10-10 08:43:51 -05:00
Deepika f549f14a0a Set ISR stack and heap sizes for low end devices
Set the ISR stack to be 1KB. https://github.com/ARMmbed/mbed-os/pull/7238
Set the heap size to 3KB(2KB + overhead + spare) so that atleast 2KB free ram is
available for testing.
With dynamic heap size, explicit size is not required. IAR 7.8 supports
static heap, hence the change is needed in IAR linker files.
2018-10-05 12:09:46 -05:00
Deepika 525545c7b0 Freescale: 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-09-19 09:35:59 -05:00
Russ Butler 66cce67d38 Update the K64F to use boot stack size config
Update the K64F linker scripts to make use of the newly added stack
size target config.
2018-09-07 17:00:48 +01:00
Yossi Levy acfda5895e Changes in PR #7774 of PinNames.h should be reverted. This commit reverts those files excpet for K82F and K64F which are left as an example 2018-09-05 14:13:05 +03:00
Cruz Monrreal 993c897b55
Merge pull request #7774 from yossi2le/sd-spif-to-mbed-os
Add default block device support (SD, SPIF and FLASHIAP)
2018-09-01 11:15:13 -05:00
Yossi Levy ed8e170d15 Moving SD, SPIF and FLASHIAP into mbedos and refactoring features storage directory structure. 2018-08-29 12:01:11 +03:00
Russ Butler 4ff5ea40dd Revert uVisor changes for K64F
Revert the changes made in the commit:
1c2a7d8842
Added the commit: Access MCG and SIM through secure access
2018-08-25 20:40:31 -05:00
Oren Cohen 787317b7eb Remove uVisor from mbed-os 2018-08-22 16:36:59 +03:00
Oren Cohen 795248bcaf Restore lp_ticker_free to previous implementation when running with uvisor
This is a temporary patch until uvisor is removed
2018-08-20 13:20:45 +03:00
Cruz Monrreal 8e25d2d905
Merge pull request #7669 from SigmaDeltaTechnologiesInc/master
SDT64, 8195, 32620, 32625, 51822, 52832B added to targets
2018-08-17 11:10:12 -05:00
MateuszM b5eb59091a fix formatting 2018-08-08 16:53:21 +02:00
MateuszM b5d23c3f26 Fix issue #5119, changed pwmout_api.
The period of pwm we could get was limited to 69.9 ms, because prescaler value was set once only during initialization. base->mod is a 16 bit register, to get longer period we have to slow down the clk.
2018-08-07 09:36:32 +02:00
Jiwon Yune 04fc7aa36f Generic pin names added 2018-08-06 14:50:19 +01: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
Jiwon Yune e5877910d2 SDT64B added 2018-08-01 18:13:33 +09: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
Cruz Monrreal e8005f6d72
Merge pull request #7206 from mikaleppanen/k64f_async_powerup
K64f non-blocking powerup
2018-06-19 21:49:37 -05:00
David Saada 714d025f6c Rename text region in ARM linker file for a few NXP CPUs 2018-06-18 17:32:01 +03:00
Mika Leppänen b7627e823b K64F, K66F: Update the ENET PHY driver
PHY init and autonegotation is split into own functions.
2018-06-15 10:41:31 +03:00
Przemyslaw Stekiel a499341b2d K64F CRC driver: Fix coding style 2018-06-07 15:12:56 +02:00
Przemyslaw Stekiel ee6a07e7ab K64F CRC driver: Fix handling of CRC final XOR value
According to the test results final XOR was incorrectly handled by the CRC driver.
This patch fixes this issue.
2018-06-07 15:06:36 +02:00
Przemyslaw Stekiel da557a58a6 K64F CRC driver: hal_crc_is_supported() - fix condition which validates CRC width
It looks like the intention was to return false when CRC width is different than: {16, 32} bits.
2018-06-07 15:06:36 +02:00
Bartek Szatkowski a305d849a8 Rename LOWPOWERTIMER to LPTICKER 2018-05-25 13:06:56 -05:00
Przemyslaw Stekiel 1e46895f75 K64F: adapt RTC drivers to the new standards (is_enabled function)
Make rtc_isenabled() to return 1 if the RTC is initialized and the time has been set; 0 otherwise.
Disable clock gate on exit from this function if RTC was initialized.
2018-05-25 12:52:40 -05:00
Przemyslaw Stekiel 377db73100 K64F: adapt RTC drivers to the new standards (free function)
rtc_free() does not stop the RTC from counting. Only disables clock gate since processor no longer needs to read RTC registers.
2018-05-25 12:52:40 -05:00
Russ Butler a0a9626420 Keep rtc code if low power timer is used
Keep the RTC code if either DEVICE_RTC or DEVICE_LOWPOWERTIMER is
defined on the devices which use the RTC for both the rtc api and the
low power timer api. This allows DEVICE_LOWPOWERTIMER to be enabled while
DEVICE_RTC is turned off.
2018-05-25 12:37:19 -05:00
Mahesh Mahadevan d46af14bb6 KL27Z: Update usticker to use TPM instead of LPTMR for ticker
This will free up the LPTMR to be used as lpticker

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-05-25 12:33:41 -05:00
Mahesh Mahadevan a21d21e700 KL43Z: Update usticker to use TPM instead of LPTMR for ticker
This will free up the LPTMR to be used as lpticker

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-05-25 12:33:41 -05:00
Mahesh Mahadevan 62254c2bae KW41Z: Update usticker to use TPM instead of LPTMR for ticker
This will free up the LPTMR to be used as lpticker

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-05-25 12:33:41 -05:00
Mahesh Mahadevan 4eb8841dc1 MCUXpresso: Update the usticker implementation
Enabled usticker for K22F, K24F, K66F, K82F, KL82Z, KW24D

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-05-25 12:32:38 -05:00
Mahesh Mahadevan 0d0321a7f0 MCUXpresso: Update Low Power Ticker
1. Enable LPTICKER for K22, K24, K64, K66, K82, KL82F, KW24D
2. Change the implementation to only use the LPTMR which reduces
   the amount of interrupts generated which is required for tickless
   operation

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-05-25 12:32:38 -05:00
Mahesh Mahadevan 132dc87f3e KL05, KL25, KL26, KL46: Enable usticker
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-05-25 12:30:53 -05:00
Bartek Szatkowski 6e9f04bf2f Rename DEVICE_LOWPOWERTIMER to DEVICE_LPTICKER
That's to match DEVICE_USTICKER.
2018-05-25 12:20:09 -05:00
Przemyslaw Stekiel 39852f772c Adapt K64F lp ticker driver to the new standards.
Low power ticker time counter is created based on RTC which is driven by 32KHz clock. Additional low power timer is used to generate interrupts.
We need to adapt driver to operate on ticks instead of us.

Perform the following updates:
- provide lp ticker configuration: 32KHz/32 bit counter.
- lp_ticker_init() routine disables lp ticker interrupts .
- adapt the driver functions to operate on ticks instead us.
- adapt comments.
- add us_ticker_free() routine.
2018-05-25 12:18:55 -05:00
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
Martin Kojtal 0c61cf4a37
Merge pull request #6785 from codeauroraforum/Fix_KL82Z_PWMOUT
KL82Z: Fix clock selection for PWMOUT driver
2018-05-03 16:24:07 +01:00
Mahesh Mahadevan 87244a969b KW41Z: Update SDK TPM driver
Certain instances of the TPM are missing some registers, updated
TPM driver handles this variation. This issue was discovered when
running the PWMOUT tests using the ci-test-shield

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-05-01 14:48:12 -05:00
Mahesh Mahadevan 0fb2f01ce7 KL82Z: Fix clock selection for PWMOUT driver
This was verified using the ci-test shield

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-05-01 12:22:04 -05:00
Martin Kojtal 43d0f17740 KL27Z: Flash protection macro addition
PR #6468 updated flash driver, but not for KL27Z target (another CPU type).
It is missing and leads to build failure. This fixes it.
2018-04-23 10:57:20 +01:00
Mahesh Mahadevan 72011173fc MCUXpresso: Fix deepsleep implementation for Kinetis parts
1. Fix the check to look for if MCG has a PLL
2. Do setup before and after deep sleep mode execution

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-04-10 08:16:41 -05:00
Mahesh Mahadevan e163a2769f MCUXpresso: Update Kinetis flash driver
Flash functions needed to be called before entering deepsleep mode

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-04-10 08:16:41 -05:00
Mahesh Mahadevan c3f8cac2e3 KL82Z: Fix the clock selection for LPUART module
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-03-27 02:52:20 -05:00
Cruz Monrreal 842a86ad7c
Merge pull request #6310 from codeauroraforum/Fix_K82F_I2C
MCUXpresso: Fix test failures seen with ci-test shield
2018-03-15 10:41:08 -05:00
Mahesh Mahadevan 5230bcaf6f MCUXpresso: Update the I2C implmentation for byte read and write
1. Start function: Issue repeat start when bus is busy
2. Byte write function: Do not call SDK function as this does
   not work for some of the Kinetis device
3. Byte read function: Do not call SDK function as this would
   issue a START and STOP signal which is not required for
   I2C byte functions

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-03-09 08:32:22 -06:00
Mahesh Mahadevan 53fa4e5fc4 MCUXpresso: Enable I2C SDA & SCL pins internal pullup resistors
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-03-09 08:18:21 -06:00
Mahesh Mahadevan d29c12d233 K82F: Fix I2C test failures seen with ci-test shield
I2C3 clock define was missing. I2C3 is connected to the Arduino
connector which is used by the ci-test shield

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-03-09 08:04:54 -06: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
Martin Kojtal 2661f6fe40 us ticker: fix fire interrupt handling
Few targets need more than just pending IRQ set. They include some flags to be
set that are checked in IRQ handler. This is the case for targets in this
commit.
2018-02-23 09:13:40 +01: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
Maciej Rogozinski bb4a72c39d Bootloader support for MK24F1 for IAR toolchain 2017-12-11 09:54:21 +01:00
Maciej Rogozinski c9500c6c58 Bootloader support for MK24F1 for Keil toolchain 2017-12-11 09:51:06 +01:00
Maciej Rogozinski aaa09d5482 Added missing subscription 2017-12-10 15:32:45 +01:00
sarahmarshy cefcb8cff3
Update K64F trng_api.c 2017-11-21 16:50:43 -06:00