Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[mbed-os-5.15] Bring in MIMXRT1050_EVK changes from feature-wisun branch #14326

Merged

Conversation

artokin
Copy link
Contributor

@artokin artokin commented Feb 23, 2021

Summary of changes

Bring in MIMXRT1050_EVK related changes from the following pull requests made to feature-wisun branch:

PR #12562 (25 commits)
PR #12774 (6 commits)
PR #13063 (2 commits)
PR #13391 (2 commits)
PR #13526
PR #13569
PR #13927

These same changes are available in the Mbed OS master via PR: #14323

This PR ensures that target MIMXRT1050_EVK can be used with Pelion device management. Verified manually that pelion_border-router application (MIMXRT1050_EVK) connects to Pelion DM and other Wi-SUN nodes can connect to the Wi-SUN network.

Impact of changes

Migration actions required

Documentation


Pull request type

[x] Patch update (Bug fix / Target update / Docs update / Test update / Refactor)
[] Feature update (New feature / Functionality change / New API)
[] Major update (Breaking change E.g. Return code change / API behaviour change)

Test results

[] No Tests required for this change (E.g docs only update)
[x] Covered by existing mbed-os tests (Greentea or Unittest)
[] Tests / results supplied as part of this PR

Reviewers


mmahadevan108 and others added 30 commits February 23, 2021 10:40
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
1. No need to copy RAM functions, this is done in the startup file
2. Update memory config for the FLASH section
3. Configure the PMIC_STDBY pin
4. Update UART clock setting

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
1. Add defines to copy ram & no-cache functions
2. Add deep sleep latency definition

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
The SDK header provides separate arrays for high and low
GPIO interrupts in place of the previous combined array

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
1. Run in doze mode
2. Add implementation for free function

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
The PIT module should be initialized only once

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
The UART first instance is 1 and not 0. Update the code logic to account
for this.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
These functions are used to READ/WRITE to the Flexspi NOR

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Reserve 4MB for mbed-os. The rest is used by storage driver

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
1. Do not disable and enable osillators during deep sleep
   entry and exit
2. Increase the deep sleep to pass tests

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
NXP MIMXRT1050 EVK can support Hyper Flash or QSPI Flash with
small hardware reworks. Modify the XIP file to support boot
from the two kinds of Flash device. The Hyper Flash should be
the default device and defined in tartgets.json with the macro
"HYPERFLASH_BOOT". To select the QSPI Flash, just remove the
macro with the below line in any overriding json file.
	"target.macros_remove" : ["HYPERFLASH_BOOT"]

Signed-off-by: Gavin Liu <gang.liu@nxp.com>
The flash access may fail when implementing flash
initialization. So there is risk for interrupt handler
which linked in flash space.

Add the critical section to avoid the risk.

Signed-off-by: Gavin Liu <gang.liu@nxp.com>
The memset function from c library will be linked in flash
space, it's risk for FLASHIAP. So I wrote flexspi_memset
to replace the memset for IMX FLASHIAP, and put the function
into targets/.../TARGET_IMX/flash_api.c file. All IMX Soc
platforms can declare it as extern and use in their Soc
flexspi driver files.

Signed-off-by: Gavin Liu <gang.liu@nxp.com>
Update the flash driver to support both Hyper Flash
and QSPI Flash.

In addition, the static function cannot be linked to
SRAM even defined by AT_QUICKACCESS_SECTION_CODE macro.
So remove all "static" modifier for the FLASHIAP
functions.

Signed-off-by: Gavin Liu <gang.liu@nxp.com>
For the application(firmware) booted by bootloader(OTA),
the image doesn't need the "flash_config" and "ivt" header.
So update the link file to support both kinds of application
(firmware) booted by bootROM and bootloader.

In default, the compilation will get the image with
"flash_config" and "ivt" header, for example the bootloader
compiling.

When compiling the OTA application image, please add the
line as below in the mbed_app.json file.

	"target.macros_add" : ["MBED_APP_COMPILE"]

This will remove the "flash_config" and "ivt" header in the
final image.

Signed-off-by: Gavin Liu <gang.liu@nxp.com>
@ciarmcom ciarmcom requested a review from a team February 23, 2021 10:00
@ciarmcom
Copy link
Member

@artokin, thank you for your changes.
@ARMmbed/mbed-os-maintainers please review.

@mergify mergify bot added needs: CI and removed needs: review labels Feb 25, 2021
@ciarmcom
Copy link
Member

This pull request has automatically been marked as stale because it has had no recent activity. @ARMmbed/mbed-os-maintainers, please start CI to get the PR merged.

@ciarmcom ciarmcom added the stale Stale Pull Request label Feb 27, 2021
@adbridge
Copy link
Contributor

adbridge commented Mar 1, 2021

CI started

@mbed-ci
Copy link

mbed-ci commented Mar 1, 2021

Test run: SUCCESS

Summary: 10 of 10 test jobs passed
Build number : 1
Build artifacts

@0xc0170 0xc0170 requested a review from andypowers March 2, 2021 08:40
@0xc0170 0xc0170 removed the stale Stale Pull Request label Mar 2, 2021
Copy link
Collaborator

@andypowers andypowers left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved.

@0xc0170
Copy link
Contributor

0xc0170 commented Mar 22, 2021

CI restarted

@mbed-ci
Copy link

mbed-ci commented Mar 22, 2021

Test run: SUCCESS

Summary: 10 of 10 test jobs passed
Build number : 2
Build artifacts

@0xc0170 0xc0170 merged commit 878a32c into ARMmbed:mbed-os-5.15 Mar 22, 2021
@mergify mergify bot removed the ready for merge label Mar 22, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.