-
Notifications
You must be signed in to change notification settings - Fork 34
Support NUMAKER_IOT_M263A #43
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
Conversation
Can one of the admins verify this patch? |
1 similar comment
Can one of the admins verify this patch? |
@ccli8 thanks for the PR. |
Integration Test (ARMC6)
|
Integration Test (GCC_ARM)Note:
|
Integration Test (IAR)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.
"NUMAKER_IOT_M263A": { | ||
"target.network-default-interface-type" : "WIFI", | ||
"target.bootloader_img" : "bootloader/mbed-bootloader-m263_iot-block_device-kvstore-v4.1.0.bin", | ||
"bootloader-size" : "(64*1024)", |
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.
Any reason the bootloader is this large? I presume this has to align to quite large sector sizes?
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.
Not related to sector size. 32KiB is too just fit. Reserve space for normal build or even debug build.
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.
Looks ok. The KV external size is much larger than it ever needs to be. 128 KiB should be more than enough for certificates.
Follow other target like NUCLEO_F411RE for configuring external storage size. Besides, it could be used for user application. |
build-only |
Make modifications:
|
Based on mbed-os-pelion-example master/mbed-bootloader 4.1.0/mbed-cloud-client 4.0.0, support Nuvoton targets: 1. Support Nuvoton targets: - NUMAKER_IOT_M263A 2. Change storage to NUSD (SD card in SDIO bus mode) from SD (SD card SPI bus mode) (1) Add COMPONENT_NUSD.lib. (2) Add component NUSD (target.components_add). (3) Change default BlockDevice to NUSD: Override BlockDevice::get_default_instance (nusd.provide-default-blockdevice). Required since mbed-cloud-client 2.1.0 (arm_uc_blockdevice_ext) or in: mbed-bootloader/modules/storage/pal-blockdevice/source/arm_uc_pal_blockdevice_mbed.cpp (4) Enable kvstore with blockdevice type being "other". i) Override get_other_blockdevice() (nusd.provide-kvstore-other-blockdevice). ii) Configure storage type to "FILESYSTEM". iii)Configure file system type to "LITTLE". vi) Configure block device type to "other". v) Configure external size to 64MiB, which cannot overlap with update-client. storage-address/update-client.storage-size. 3. Change back UARTSerial tx/rx buffer size from 1024/1024 to 256/256. This can reduce memory footprint by (1024 - 256) * 2 = 1.5KiB. Because this configuration influences both ESP8266 and default console (platfrom/mbed_retarget.cpp), memory reduction can achieve 1.5KiB x 2 = 3KiB. 4. Enlarge ESP8266 'send tcp data' timeout on Nuvoton targets Pelion connection has some failure rate with this. Enlarging ESP8266_SEND_TIMEOUT can just relieve the issue. A ticket has raised to address it: ARMmbed/mbed-os#11544 5. Requirements for mbed-os version: - mbed-os 5.13.0 (or afterwards) to support kvstore with block device type being "other" - mbed-os 5.13.1 (or afterwards) to fix 'undefined pal_plat_osEntropyInject(...)' error - mbed-os 5.14.0 (or afterwards) to support NUMAKER_IOT_M263A
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.
Could be rebased and added to README
This PR is split of #25 and to support NUMAKER_IOT_M263A.
@MarceloSalazar