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

TinyUSB stack ported to MCXA and MXCN freedom boards. #2466

Merged
merged 35 commits into from
Apr 8, 2024

Conversation

jerpa77
Copy link
Contributor

@jerpa77 jerpa77 commented Feb 12, 2024

TinyUSB stack ported to MCX A and MXC N freedom boards.

Notes

  1. MCX A and MCX N families created under hw/bsp folder. Due to differing compiler options required by different versions of ARM Cortex M-33 for MCX A and MCX N, they were not grouped together in the same family.

  2. Build code for make and cmake tools added under example/build_system to support the ARM Cortex M-33 core with no DSP and no FPU.

  3. Since the NXP SDK repository is not up to date yet, the tools/get_deps.py file was modified to get the dependencies for MCX A, MCX N, etc. from our fork https://github.com/wavenumber-eng/mcux-sdk. We manually added the data from the MCUXpresso SDK generator to support MCX A. In a few weeks NXP will update their SDK repository, so no github fork will be necessary.

  4. The building code was implemented and tested to work with make and cmake. The following examples have been tested on the MCX A and MCX N boards:

  • board_test
  • cdc_dual_ports
  • cdc_msc
  • hid_composite
  1. USB Compliance Verification successfully passed the following tests:
  • Chapter 9 Tests [USB 2 devices]
  • HID Tests
  • MSC Tests

Copy link
Owner

@hathach hathach left a comment

Choose a reason for hiding this comment

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

Thank you very much for your PR. It looks great, though there is some change request below:

MCX A and MCX N families created under hw/bsp folder. Due to differing compiler options required by different versions of ARM Cortex M-33 for MCX A and MCX N, they were not grouped together in the same family.

besides the DSP/FPU option, is there any other difference, we can solve this by either using the MCU_VARIANT check in family.mk/cmake or just set the correct CPU_CORE in the board.mk/cmake instead. That would both A & N series under one mcx directory

tools/get_deps.py Outdated Show resolved Hide resolved
src/portable/chipidea/ci_fs/ci_fs_mcxa.h Outdated Show resolved Hide resolved
README.rst Outdated Show resolved Hide resolved
@jerpa77
Copy link
Contributor Author

jerpa77 commented Feb 21, 2024

Thank you a lot for your feedback.
I already made the pull request for your mcux-sdk fork.
When we have the mcux-sdk updated I'm going to push the corrections.

@jerpa77
Copy link
Contributor Author

jerpa77 commented Feb 27, 2024

Hello Thach!
I already made the changes

@hathach
Copy link
Owner

hathach commented Apr 2, 2024

I try to resolve conflict with master, and also want to make changes to the PR. Please edit PR to "allow maintainer to edit this pull request"

@jerpa77
Copy link
Contributor Author

jerpa77 commented Apr 4, 2024

Hi @hathach
I read that this option is only for user-owned repositories, but I sent you an invitation to have permissions on the repository.

@hathach
Copy link
Owner

hathach commented Apr 5, 2024

resolved the conflict, I don't why, but your PR contains also lots of unrelated changes to other files such as cdc_msc_freertos, nrf etc.. probably the git branch is messed up somehow. I have reverted those changes.

Copy link
Owner

@hathach hathach left a comment

Choose a reason for hiding this comment

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

thank you for your PR. Everything work perfecty now, I made some changes to get it built with all examples. Currenlty ci failed on hil test, but that is a totally different issue by local pi4 setup. Will fix that in master.

@hathach hathach merged commit af1346c into hathach:master Apr 8, 2024
45 of 49 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants