Skip to content

Update CMSIS pack index json for STM32H7xx family #11709

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

Merged
merged 5 commits into from
Nov 5, 2019

Conversation

JanneKiiskila
Copy link
Contributor

Description

Manually replaced the existing STM32H7 section and replaced it with the
context of updated index.json that pulled in the Keil packs available
today, as of 18th October, 2019.

See related PR; #11707

Pull request type

[ ] Fix
[ ] Refactor
[x] Target update
[ ] Functionality change
[ ] Docs update
[ ] Test update
[ ] Breaking change

Reviewers

@0xc0170 @ARMmbed/team-st-mcd @jeromecoutant

Release Notes

CMSIS pack index updated for STM32H7xx -family.

Copy link
Contributor

@0xc0170 0xc0170 left a comment

Choose a reason for hiding this comment

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

Becoming hard to review (file too large), I got one unicorn earlier today for this file 🙄

@jeromecoutant
Copy link
Collaborator

Hi
Could you explain which command you made to get this new file ?

"access": {
"execute": true,
"non_secure": false,

Copy link
Collaborator

Choose a reason for hiding this comment

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

Can you remove IROM2 part for H743, and double IROM1 size?
as it is a single core, and full ROM can be used.

"access": {
"execute": true,
"non_secure": false,

Copy link
Collaborator

Choose a reason for hiding this comment

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

How can we rename IROM1 into IROM_CM7 ?
and IROM2 into IROM_CM4 ?

@JanneKiiskila
Copy link
Contributor Author

JanneKiiskila commented Oct 28, 2019

@jeromecoutant - for the modifications here - all the information is coming from the cmsis-pack you have supplied to KEIL. Nothing is generated manually and if we start changing things manually, it means we must maintain this file manually forever. Which might or might not be something we really want. @jeromecoutant - in an ideal world, STM would re-generate the STM file, after which I would re-generate the CMSIS-pack to match.

@MarceloSalazar @mark-edgeworth @bulislaw @kjbracey-arm @madchutney - we really need to think what exactly we need and where, as it seems to me have lots of duplicate information. Flash sectors and sizes are in the cmsis-packs (in this PR) AND the target files. Either one of them is a duplicate. We have some similar information also in the compiler linker/scatter files, too.

Also, having one 13 MB JSON file also does not sound like a feasible plan going into the future, we should consider splitting the file into vendor parts (if we truly even need that one .JSON file) - too large files become unmanageable/hard to review.

@mark-edgeworth
Copy link
Contributor

@JanneKiiskila: @ARMmbed/mbed-os-tools are looking at this right now...

@0xc0170
Copy link
Contributor

0xc0170 commented Oct 29, 2019

@jeromecoutant - for the modifications here - all the information is coming from the cmsis-pack you have supplied to KEIL. Nothing is generated manually and if we start changing things manually, it means we must maintain this file manually forever. Which might or might not be something we really want. @jeromecoutant - in an ideal world, STM would re-generate the STM file, after which I would re-generate the CMSIS-pack to match.

@jeromecoutant can you rereview? As data in this PR are coming from the pack, can we use these and once pack is fixed, it will be fixed as well.

We would like to have this update on master as soon as possible.

Also, having one 13 MB JSON file also does not sound like a feasible plan going into the future, we should consider splitting the file into vendor parts (if we truly even need that one .JSON file) - too large files become unmanageable/hard to review.

Separation should help here, it will just grow in size day-by-day.

@0xc0170
Copy link
Contributor

0xc0170 commented Oct 29, 2019

@MarceloSalazar @mark-edgeworth @bulislaw @kjbracey-arm @madchutney - we really need to think what exactly we need and where, as it seems to me have lots of duplicate information. Flash sectors and sizes are in the cmsis-packs (in this PR) AND the target files. Either one of them is a duplicate. We have some similar information also in the compiler linker/scatter files, too.

I don't think these are duplicates. Not all drivers provide memory layout in the driver itself like the reference above (they could but there is no way we could get it writing one script without changes per each target family and its SDK). This information is in the cmsis packs - what we use, also what other tools use. This is standardized way to get this data.

Regarding linker scripts - this is one of the things we would like to have - one linker file per toolchain and generate it per target.

@0xc0170
Copy link
Contributor

0xc0170 commented Oct 31, 2019

Travis reports the device name is not valid:

E           AssertionError: Target DISCO_H747I contains invalid device_name STM32H747XIH6

@JanneKiiskila
Copy link
Contributor Author

JanneKiiskila commented Nov 1, 2019

Oh yes, the device name for DISCO_H747I was still wrong - it's not STM32H747XIH6 but actually STM32H747AGIx (I presume). @ARMmbed/team-st-mcd - please review.

On the other hand, I'd like to get this one merged in pretty soon - the problem is that the index.json file is now so large, that if a merge conflict happens -> doing a merge for example with P4Merge seems to be near impossible now, as it just goes into non-responsive mode. Seems we've hit some kind of file limit for that application...

Janne Kiiskila and others added 4 commits November 4, 2019 17:57
Manually replaced the existing STM32H7 section and replaced it with the
context of updated `index.json` that pulled in the Keil packs available
today, as of 18th October, 2019.

See related PR; ARMmbed#11707
Compilation of bootloader requires these parameters.
Add definitions for H743ZI2, required by bootloader.
The proposed review fixes by Jerome, cherry-picked in.

(cherry picked from commit fb15f02)
Signed-off-by: Janne Kiiskila <[email protected]>
Comment on lines +3218 to +3219
"mbed_rom_start": "0x08000000",
"mbed_rom_size" : "0x200000",
Copy link
Collaborator

Choose a reason for hiding this comment

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

I am sorry, but in order to remove warnings,
we should also add (for both H743ZI and ZI2):
"mbed_ram_start": "0x24000000",
"mbed_ram_size" : "0x80000",

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Which warnings? I don't recall seeing any?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Done, anyways.

Adding the RAM definitions per request of Jerome Coutant.
@0xc0170
Copy link
Contributor

0xc0170 commented Nov 5, 2019

CI started

@mbed-ci
Copy link

mbed-ci commented Nov 5, 2019

Test run: FAILED

Summary: 1 of 11 test jobs failed
Build number : 1
Build artifacts

Failed test jobs:

  • jenkins-ci/mbed-os-ci_exporter

@JanneKiiskila
Copy link
Contributor Author

Failure seems to be related to exporter tests;

12:33:22 [2019-11-05T10:33:22.164Z] [EXAMPLES]> ERROR FAILURE building mbed-os-example-blinky K64F make_armc6

@0xc0170
Copy link
Contributor

0xc0170 commented Nov 5, 2019

License error, restarting exporters

@0xc0170 0xc0170 merged commit cdcef4b into ARMmbed:master Nov 5, 2019
@JanneKiiskila JanneKiiskila deleted the CMSIS-STM32H7xx branch November 6, 2019 11:33
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.

5 participants