-
Notifications
You must be signed in to change notification settings - Fork 3k
[Silicon Labs] Update to HAL and devices #3934
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
[Silicon Labs] Update to HAL and devices #3934
Conversation
Testing finished on EFM32PG12_STK3402. Please note that the failures reported are all due to a known issue, where the lp_ticker test is basically invalid when going to deepsleep (because there is no second timebase available to reference against). This is discussed in #3215 |
Second note: EFM32PG12 is the platform @akselsm and I will be leveraging for the partner workshop in two weeks, so it would be nice to get this PR reviewed by then. |
Can you remove the merge commit (rebase ) ? Cam-CI fails (I could not get the test from uvisor CI) but this is the report:
|
targets/targets.json
Outdated
}, | ||
"THUNDERBOARD_SENSE_12": { | ||
"inherits": ["EFR32MG12P332F1024GL125"], | ||
"device_has": ["AES", "SHA", "ECC", "SL_PTI", "RF_2P4GHZ", "ANALOGIN", "ERROR_PATTERN", "I2C", "I2CSLAVE", "I2C_ASYNCH", "INTERRUPTIN", "LOWPOWERTIMER", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_ASYNCH", "SLEEP", "SPI", "SPISLAVE", "SPI_ASYNCH", "STDIO_MESSAGES"], |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the first 5 are not valid device_has values ? I don't remember having DEVICE_AES. They should be defined via macros ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I thought it made more logical sense to use the device_has infrastructure present in the tooling for indicating device functionality. But okay, I can move to macros.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed in latest commit
1cac755
to
12b0ff2
Compare
Did the rebase. |
@mazimkhan Can you please look at the uvisor CI failure? I can't find a reason for the TIMEOUT (hw failure ?). |
@Patater can you please have a look. This PR repeatedly fails on efm32gg target. |
uint32_t pid0 = SECURE_READ(&(ROMTABLE->PID0)); | ||
uint32_t pid1 = SECURE_READ(&(ROMTABLE->PID1)); | ||
uint32_t pid2 = SECURE_READ(&(ROMTABLE->PID2)); | ||
uint32_t pid3 = SECURE_READ(&(ROMTABLE->PID3)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
uVisor won't work if SECURE_READ
is no longer used. This is why uVisor CI is failing. Please ensure that the SECURE
macros continue to be used across updates to the Gecko SDK.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks! Will make note.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @Patater !
/morph test |
Result: FAILUREYour command has finished executing! Here's what you wrote!
OutputExample Build failed! |
I'm honestly not sure why the example build failed here. The log didn't print any useful information. I'm restarting it now. /morph test |
Result: FAILUREYour command has finished executing! Here's what you wrote!
OutputExample Build failed! |
Ok something's up, I'm looking into it. |
Well this is interesting! I wasn't able to reproduce this on my local machine, only on the CI machine. Even though we're using the exact same build of IAR.
|
You got IAR to crash? Congratulations! :D |
Ok, I've spent a good 3 hours trying to narrow down what has gone wrong here, but I've yet to come up with something 100% concrete. But so far here is the closest I have to a reproducible test case:
Run the following commands to reproduce:
This sometimes still passes, but it seems to fail more often than not. It looks like there are more Windows updates in the update queue, so I may try installing those. Hoping Microsoft has fixed anything that they may have broke. That's it for now, not sure how much time I'll have to examine this further. Would really appreciate it if someone else running Windows 10 could try the steps above and verify! |
Has this anything to do with the PR? I didn't touch any common files nor NRF ones... |
Any tests results for this pull request (as this is a new target, would be nice to run tests and share test results), ci test shield tests ? |
@0xc0170 test results in first reply on this PR :) |
/morph test |
Result: FAILUREYour command has finished executing! Here's what you wrote!
OutputExample Build failed! |
Also, why did #3939 pass? I'll try to rebase onto master once more. |
Updating emlib
Updating CMSIS device headers
Update RAIL library to 1.5.1
d1dcfd4
to
32e5587
Compare
retest uvisor |
/morph test |
Result: SUCCESSYour command has finished executing! Here's what you wrote!
OutputAll builds and test passed! |
Finally! 👍 |
retest uvisor |
@mazimkhan To be aware - uvisor CI failed with an exception (tools problem ?). I re-triggered the job |
@0xc0170 Yay, all green. |
@stevew817 Do you want to rebase some commits ("copypasta" like ) ? |
* Off by one error in the linker scripts reserved one word too little for the vector table * Re-apply uvisor changes to emlib. To allow uvisor to run, we should make accesses to the romtable through uvisor's secure read gateway * Copypasta in target name (EFM32PG12, not EFR32PG12) * Copypasta in the pin definitions (thanks @akselsm) * Forgot to update PortName for extra ports on MG/PG12
* Reduce verbosity of EFR32 radio driver when debug tracing is on. * Correctly pass pending bit of received ACK to the stack.
Removing device_name for devices that haven't shown up in the Keil package manager yet to avoid Travis from tripping on our PR
As asked by @0xc0170 in PR ARMmbed#3934, we won't be using device_has for indicating RF/Crypto features any longer. RF config options moved to the SL_RAIL lib.json, crypto config options will come with mbedTLS integration.
32e5587
to
d217357
Compare
@0xc0170 Squashed |
/morph test |
Result: SUCCESSYour command has finished executing! Here's what you wrote!
OutputAll builds and test passed! |
Ports for Upcoming Targets 3934: [Silicon Labs] Update to HAL and devices ARMmbed/mbed-os#3934 Known Issues There is an issue with LPC1768 failing the 'Semihost file system' test with this release. Fixes and Changes 3691: [TLS / hw acceleration] AES ECB for NUCLEO_F439ZI ARMmbed/mbed-os#3691 3869: NCS36510: Default range changed from 0 to 950mV - ADC ARMmbed/mbed-os#3869 3893: [STM32F7] Update STM32 Cube version v1.6.0 ARMmbed/mbed-os#3893 3917: Fix mistake register setting in serial_format() ARMmbed/mbed-os#3917 3927: [DELTA_DFBM_NQ620] Add RC calibration setting and revise mbed_overrides.c ARMmbed/mbed-os#3927 3918: [NUC472/M453] Support unique locally administered MAC address and other driver updates ARMmbed/mbed-os#3918 3920: Heap size adjusted to work for both tls-client and mbed-client ARMmbed/mbed-os#3920 3969: NUCLEO_F302R8: Add missing PB_8/PB_9 CAN pins ARMmbed/mbed-os#3969
Description
Status
READY
Tests
Tests are running, will attach results as separate text file to a PR comment.