mirror of https://github.com/ARMmbed/mbed-os.git
mbed-os to support bootlader for Cypress CY8CKIT_062_WIFI_BT_PSA and CY8CKIT_062_BLE
parent
b80c961dae
commit
dd27a3400b
|
@ -0,0 +1,49 @@
|
|||
Permissive Binary License
|
||||
|
||||
Version 1.0, September 2015
|
||||
|
||||
Redistribution. Redistribution and use in binary form, without
|
||||
modification, are permitted provided that the following conditions are
|
||||
met:
|
||||
|
||||
1) Redistributions must reproduce the above copyright notice and the
|
||||
following disclaimer in the documentation and/or other materials
|
||||
provided with the distribution.
|
||||
|
||||
2) Unless to the extent explicitly permitted by law, no reverse
|
||||
engineering, decompilation, or disassembly of this software is
|
||||
permitted.
|
||||
|
||||
3) Redistribution as part of a software development kit must include the
|
||||
accompanying file named "DEPENDENCIES" and any dependencies listed in
|
||||
that file.
|
||||
|
||||
4) Neither the name of the copyright holder nor the names of its
|
||||
contributors may be used to endorse or promote products derived from
|
||||
this software without specific prior written permission.
|
||||
|
||||
Limited patent license. The copyright holders (and contributors) grant a
|
||||
worldwide, non-exclusive, no-charge, royalty-free patent license to
|
||||
make, have made, use, offer to sell, sell, import, and otherwise
|
||||
transfer this software, where such license applies only to those patent
|
||||
claims licensable by the copyright holders (and contributors) that are
|
||||
necessarily infringed by this software. This patent license shall not
|
||||
apply to any combinations that include this software. No hardware is
|
||||
licensed hereunder.
|
||||
|
||||
If you institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the software
|
||||
itself infringes your patent(s), then your rights granted under this
|
||||
license shall terminate as of the date such litigation is filed.
|
||||
|
||||
DISCLAIMER. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
|
||||
CONTRIBUTORS "AS IS." ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
|
||||
NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
|
||||
TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"name": "bootloader_CY8CKIT_062_BLE",
|
||||
"target_overrides": {
|
||||
"*": {
|
||||
"target.app_offset": "0x0A400",
|
||||
"target.header_offset": "0x0A000",
|
||||
"target.bootloader_img": "mbed-bootloader-cy8ckit_062_ble-psa-block_device-kvstore.hex"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,49 @@
|
|||
Permissive Binary License
|
||||
|
||||
Version 1.0, September 2015
|
||||
|
||||
Redistribution. Redistribution and use in binary form, without
|
||||
modification, are permitted provided that the following conditions are
|
||||
met:
|
||||
|
||||
1) Redistributions must reproduce the above copyright notice and the
|
||||
following disclaimer in the documentation and/or other materials
|
||||
provided with the distribution.
|
||||
|
||||
2) Unless to the extent explicitly permitted by law, no reverse
|
||||
engineering, decompilation, or disassembly of this software is
|
||||
permitted.
|
||||
|
||||
3) Redistribution as part of a software development kit must include the
|
||||
accompanying file named "DEPENDENCIES" and any dependencies listed in
|
||||
that file.
|
||||
|
||||
4) Neither the name of the copyright holder nor the names of its
|
||||
contributors may be used to endorse or promote products derived from
|
||||
this software without specific prior written permission.
|
||||
|
||||
Limited patent license. The copyright holders (and contributors) grant a
|
||||
worldwide, non-exclusive, no-charge, royalty-free patent license to
|
||||
make, have made, use, offer to sell, sell, import, and otherwise
|
||||
transfer this software, where such license applies only to those patent
|
||||
claims licensable by the copyright holders (and contributors) that are
|
||||
necessarily infringed by this software. This patent license shall not
|
||||
apply to any combinations that include this software. No hardware is
|
||||
licensed hereunder.
|
||||
|
||||
If you institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the software
|
||||
itself infringes your patent(s), then your rights granted under this
|
||||
license shall terminate as of the date such litigation is filed.
|
||||
|
||||
DISCLAIMER. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
|
||||
CONTRIBUTORS "AS IS." ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
|
||||
NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
|
||||
TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"name": "bootloader_CY8CKIT_062_WIFI_BT",
|
||||
"target_overrides": {
|
||||
"*": {
|
||||
"target.app_offset": "0x0A400",
|
||||
"target.header_offset": "0x0A000",
|
||||
"target.bootloader_img": "mbed-bootloader-cy8ckit_062_wifi_bt-psa-block_device-kvstore.hex"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -46,10 +46,18 @@
|
|||
#define MBED_ROM_START 0x10002000
|
||||
#endif
|
||||
|
||||
#if !defined(MBED_APP_START)
|
||||
#define MBED_APP_START MBED_ROM_START
|
||||
#endif
|
||||
|
||||
#if !defined(MBED_ROM_SIZE)
|
||||
#define MBED_ROM_SIZE 0x000FE000
|
||||
#endif
|
||||
|
||||
#if !defined(MBED_APP_SIZE)
|
||||
#define MBED_APP_SIZE MBED_ROM_SIZE
|
||||
#endif
|
||||
|
||||
#if !defined(MBED_RAM_START)
|
||||
#define MBED_RAM_START 0x08002000
|
||||
#endif
|
||||
|
@ -77,8 +85,8 @@
|
|||
#define RAM_START MBED_RAM_START
|
||||
#define RAM_SIZE MBED_RAM_SIZE
|
||||
; Flash
|
||||
#define FLASH_START MBED_ROM_START
|
||||
#define FLASH_SIZE MBED_ROM_SIZE
|
||||
#define FLASH_START MBED_APP_START
|
||||
#define FLASH_SIZE MBED_APP_SIZE
|
||||
|
||||
; The following defines describe a 32K flash region used for EEPROM emulation.
|
||||
; This region can also be used as the general purpose flash.
|
||||
|
|
|
@ -44,10 +44,18 @@ ENTRY(Reset_Handler)
|
|||
#define MBED_ROM_START 0x10002000
|
||||
#endif
|
||||
|
||||
#if !defined(MBED_APP_START)
|
||||
#define MBED_APP_START MBED_ROM_START
|
||||
#endif
|
||||
|
||||
#if !defined(MBED_ROM_SIZE)
|
||||
#define MBED_ROM_SIZE 0x000FE000
|
||||
#endif
|
||||
|
||||
#if !defined(MBED_APP_SIZE)
|
||||
#define MBED_APP_SIZE MBED_ROM_SIZE
|
||||
#endif
|
||||
|
||||
#if !defined(MBED_RAM_START)
|
||||
#define MBED_RAM_START 0x08002000
|
||||
#endif
|
||||
|
@ -83,7 +91,7 @@ MEMORY
|
|||
* where 'xx' is the device group; for example, 'cy8c6xx7_cm0plus.ld'.
|
||||
*/
|
||||
ram (rwx) : ORIGIN = MBED_RAM_START, LENGTH = MBED_RAM_SIZE
|
||||
flash (rx) : ORIGIN = MBED_ROM_START, LENGTH = MBED_ROM_SIZE
|
||||
flash (rx) : ORIGIN = MBED_APP_START, LENGTH = MBED_APP_SIZE
|
||||
|
||||
/* This is a 32K flash region used for EEPROM emulation. This region can also be used as the general purpose flash.
|
||||
* You can assign sections to this memory region for only one of the cores.
|
||||
|
|
|
@ -45,10 +45,18 @@ if (!isdefinedsymbol(MBED_ROM_START)) {
|
|||
define symbol MBED_ROM_START = 0x10002000;
|
||||
}
|
||||
|
||||
if (!isdefinedsymbol(MBED_APP_START)) {
|
||||
define symbol MBED_APP_START = MBED_ROM_START;
|
||||
}
|
||||
|
||||
if (!isdefinedsymbol(MBED_ROM_SIZE)) {
|
||||
define symbol MBED_ROM_SIZE = 0x000FE000;
|
||||
}
|
||||
|
||||
if (!isdefinedsymbol(MBED_APP_SIZE)) {
|
||||
define symbol MBED_APP_SIZE = MBED_ROM_SIZE;
|
||||
}
|
||||
|
||||
if (!isdefinedsymbol(MBED_RAM_START)) {
|
||||
define symbol MBED_RAM_START = 0x08002000;
|
||||
}
|
||||
|
@ -76,8 +84,8 @@ if (!isdefinedsymbol(MBED_BOOT_STACK_SIZE)) {
|
|||
define symbol __ICFEDIT_region_IRAM1_start__ = MBED_RAM_START;
|
||||
define symbol __ICFEDIT_region_IRAM1_end__ = (MBED_RAM_START + MBED_RAM_SIZE);
|
||||
/* Flash */
|
||||
define symbol __ICFEDIT_region_IROM1_start__ = MBED_ROM_START;
|
||||
define symbol __ICFEDIT_region_IROM1_end__ = (MBED_ROM_START + MBED_ROM_SIZE);
|
||||
define symbol __ICFEDIT_region_IROM1_start__ = MBED_APP_START;
|
||||
define symbol __ICFEDIT_region_IROM1_end__ = (MBED_APP_START + MBED_APP_SIZE);
|
||||
|
||||
/* The following symbols define a 32K flash region used for EEPROM emulation.
|
||||
* This region can also be used as the general purpose flash.
|
||||
|
|
|
@ -46,10 +46,19 @@
|
|||
#define MBED_ROM_START 0x10002000
|
||||
#endif
|
||||
|
||||
#if !defined(MBED_APP_START)
|
||||
#define MBED_APP_START MBED_ROM_START
|
||||
#endif
|
||||
|
||||
|
||||
#if !defined(MBED_ROM_SIZE)
|
||||
#define MBED_ROM_SIZE 0x000FE000
|
||||
#endif
|
||||
|
||||
#if !defined(MBED_APP_SIZE)
|
||||
#define MBED_APP_SIZE MBED_ROM_SIZE
|
||||
#endif
|
||||
|
||||
#if !defined(MBED_RAM_START)
|
||||
#define MBED_RAM_START 0x08002000
|
||||
#endif
|
||||
|
@ -77,8 +86,8 @@
|
|||
#define RAM_START MBED_RAM_START
|
||||
#define RAM_SIZE MBED_RAM_SIZE
|
||||
; Flash
|
||||
#define FLASH_START MBED_ROM_START
|
||||
#define FLASH_SIZE MBED_ROM_SIZE
|
||||
#define FLASH_START MBED_APP_START
|
||||
#define FLASH_SIZE MBED_APP_SIZE
|
||||
|
||||
; The following defines describe a 32K flash region used for EEPROM emulation.
|
||||
; This region can also be used as the general purpose flash.
|
||||
|
|
|
@ -44,10 +44,18 @@ ENTRY(Reset_Handler)
|
|||
#define MBED_ROM_START 0x10002000
|
||||
#endif
|
||||
|
||||
#if !defined(MBED_APP_START)
|
||||
#define MBED_APP_START MBED_ROM_START
|
||||
#endif
|
||||
|
||||
#if !defined(MBED_ROM_SIZE)
|
||||
#define MBED_ROM_SIZE 0x000FE000
|
||||
#endif
|
||||
|
||||
#if !defined(MBED_APP_SIZE)
|
||||
#define MBED_APP_SIZE MBED_ROM_SIZE
|
||||
#endif
|
||||
|
||||
#if !defined(MBED_RAM_START)
|
||||
#define MBED_RAM_START 0x08002000
|
||||
#endif
|
||||
|
@ -83,7 +91,7 @@ MEMORY
|
|||
* where 'xx' is the device group; for example, 'cy8c6xx7_cm0plus.ld'.
|
||||
*/
|
||||
ram (rwx) : ORIGIN = MBED_RAM_START, LENGTH = MBED_RAM_SIZE
|
||||
flash (rx) : ORIGIN = MBED_ROM_START, LENGTH = MBED_ROM_SIZE
|
||||
flash (rx) : ORIGIN = MBED_APP_START, LENGTH = MBED_APP_SIZE
|
||||
|
||||
/* This is a 32K flash region used for EEPROM emulation. This region can also be used as the general purpose flash.
|
||||
* You can assign sections to this memory region for only one of the cores.
|
||||
|
|
|
@ -45,10 +45,18 @@ if (!isdefinedsymbol(MBED_ROM_START)) {
|
|||
define symbol MBED_ROM_START = 0x10002000;
|
||||
}
|
||||
|
||||
if (!isdefinedsymbol(MBED_APP_START)) {
|
||||
define symbol MBED_APP_START = MBED_ROM_START;
|
||||
}
|
||||
|
||||
if (!isdefinedsymbol(MBED_ROM_SIZE)) {
|
||||
define symbol MBED_ROM_SIZE = 0x000FE000;
|
||||
}
|
||||
|
||||
if (!isdefinedsymbol(MBED_APP_SIZE)) {
|
||||
define symbol MBED_APP_SIZE = MBED_ROM_SIZE;
|
||||
}
|
||||
|
||||
if (!isdefinedsymbol(MBED_RAM_START)) {
|
||||
define symbol MBED_RAM_START = 0x08002000;
|
||||
}
|
||||
|
@ -76,8 +84,8 @@ if (!isdefinedsymbol(MBED_BOOT_STACK_SIZE)) {
|
|||
define symbol __ICFEDIT_region_IRAM1_start__ = MBED_RAM_START;
|
||||
define symbol __ICFEDIT_region_IRAM1_end__ = (MBED_RAM_START + MBED_RAM_SIZE);
|
||||
/* Flash */
|
||||
define symbol __ICFEDIT_region_IROM1_start__ = MBED_ROM_START;
|
||||
define symbol __ICFEDIT_region_IROM1_end__ = (MBED_ROM_START + MBED_ROM_SIZE);
|
||||
define symbol __ICFEDIT_region_IROM1_start__ = MBED_APP_START;
|
||||
define symbol __ICFEDIT_region_IROM1_end__ = (MBED_APP_START + MBED_APP_SIZE);
|
||||
|
||||
/* The following symbols define a 32K flash region used for EEPROM emulation.
|
||||
* This region can also be used as the general purpose flash.
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
#include "gpio_object.h"
|
||||
#include "psoc6_utils.h"
|
||||
#include "mbed_error.h"
|
||||
#include "rtx_lib.h"
|
||||
#include "mbed_critical.h"
|
||||
|
||||
static inline void gpio_set_dir_mode(gpio_t *obj)
|
||||
{
|
||||
|
@ -66,7 +66,7 @@ void gpio_init(gpio_t *obj, PinName pin)
|
|||
* reserved HW resource. The MBED does not provide proper destructors for
|
||||
* doing that.
|
||||
*/
|
||||
if (!(IsIrqMode() || IsIrqMasked())) {
|
||||
if (!(core_util_is_isr_active () || core_util_are_interrupts_enabled())) {
|
||||
(void) cy_reserve_io_pin(pin);
|
||||
}
|
||||
|
||||
|
|
|
@ -724,7 +724,7 @@ const PinMap *serial_rts_pinmap()
|
|||
return PinMap_UART_RTS;
|
||||
}
|
||||
|
||||
#if DEVICE_SERIAL_ASYNCH
|
||||
|
||||
|
||||
void serial_irq_handler(serial_t *obj_in, uart_irq_handler handler, uint32_t id)
|
||||
{
|
||||
|
@ -760,6 +760,7 @@ void serial_irq_set(serial_t *obj_in, SerialIrq irq, uint32_t enable)
|
|||
}
|
||||
}
|
||||
|
||||
#if DEVICE_SERIAL_ASYNCH
|
||||
|
||||
int serial_tx_asynch(serial_t *obj_in, const void *tx, size_t tx_length, uint8_t tx_width, uint32_t handler, uint32_t event, DMAUsage hint)
|
||||
{
|
||||
|
|
|
@ -8082,7 +8082,9 @@
|
|||
"shared-ram-size": "0x100",
|
||||
"public-ram-start": "0x08047600",
|
||||
"public-ram-size": "0x200"
|
||||
}
|
||||
},
|
||||
"device_name": "CY8CKIT062WIFI",
|
||||
"bootloader_supported": true
|
||||
},
|
||||
"CY8CMOD_062_4343W": {
|
||||
"inherits": ["MCU_PSOC6_M4"],
|
||||
|
@ -8112,7 +8114,9 @@
|
|||
"hex_filename": "psoc6_01_cm0p_sleep.hex",
|
||||
"post_binary_hook": {
|
||||
"function": "PSOC6Code.complete"
|
||||
}
|
||||
},
|
||||
"device_name": "CY8CKIT062BLE",
|
||||
"bootloader_supported": true
|
||||
},
|
||||
"CY8CKIT_062_4343W": {
|
||||
"inherits": ["MCU_PSOC6_M4"],
|
||||
|
|
|
@ -462674,5 +462674,56 @@
|
|||
],
|
||||
"vendor": "Nordic Semiconductor:54"
|
||||
},
|
||||
"CY8CKIT062BLE": {
|
||||
"core": "Cortex-M4",
|
||||
"vendor": "Cypress",
|
||||
"sectors": [
|
||||
[
|
||||
268435456,
|
||||
512
|
||||
]
|
||||
],
|
||||
"memories": {
|
||||
"IROM1": {
|
||||
"access": {
|
||||
"execute": true,
|
||||
"non_secure": true,
|
||||
"non_secure_callable": false,
|
||||
"peripheral": false,
|
||||
"read": true,
|
||||
"secure": false,
|
||||
"write": true
|
||||
},
|
||||
"default": true,
|
||||
"start": "0x10002000",
|
||||
"size": "0x000FE000"
|
||||
}
|
||||
}
|
||||
},
|
||||
"CY8CKIT062WIFI": {
|
||||
"core": "Cortex-M4",
|
||||
"vendor": "Cypress",
|
||||
"sectors": [
|
||||
[
|
||||
268435456,
|
||||
512
|
||||
]
|
||||
],
|
||||
"memories": {
|
||||
"IROM1": {
|
||||
"access": {
|
||||
"execute": true,
|
||||
"non_secure": true,
|
||||
"non_secure_callable": false,
|
||||
"peripheral": false,
|
||||
"read": true,
|
||||
"secure": false,
|
||||
"write": true
|
||||
},
|
||||
"start": "0x10080000",
|
||||
"size": "0x78000"
|
||||
}
|
||||
}
|
||||
},
|
||||
"version": "0.2.0"
|
||||
}
|
|
@ -116,6 +116,8 @@ def complete_func(message_func, elf0, hexf0, hexf1=None, dest=None):
|
|||
|
||||
# Find Cortex M0 image.
|
||||
def find_cm0_image(toolchain, resources, elf, hexf, hex_filename):
|
||||
if hex_filename is None:
|
||||
return None
|
||||
# Locate user-specified image
|
||||
from tools.resources import FileType
|
||||
hex_files = resources.get_file_paths(FileType.HEX)
|
||||
|
|
Loading…
Reference in New Issue