Skip to content

Commit e9b8c48

Browse files
committed
squashme: Rebuild mbed and PORTENTA_H7 target
1 parent 88c4add commit e9b8c48

File tree

26 files changed

+205
-84
lines changed

26 files changed

+205
-84
lines changed

cores/arduino/mbed/connectivity/FEATURE_BLE/include/ble/gap/ChainableGapEventHandler.h

+8
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,10 @@ class ChainableGapEventHandler : public ble::Gap::EventHandler,
4141
execute_on_all(&ble::Gap::EventHandler::onScanRequestReceived, event);
4242
}
4343

44+
void onAdvertisingStart(const ble::AdvertisingStartEvent &event) override {
45+
execute_on_all(&ble::Gap::EventHandler::onAdvertisingStart, event);
46+
}
47+
4448
void onAdvertisingEnd(const ble::AdvertisingEndEvent &event) override {
4549
execute_on_all(&ble::Gap::EventHandler::onAdvertisingEnd, event);
4650
}
@@ -112,6 +116,10 @@ class ChainableGapEventHandler : public ble::Gap::EventHandler,
112116
connectionHandle, txSize, rxSize);
113117
}
114118

119+
void onPrivacyEnabled() override {
120+
execute_on_all(&ble::Gap::EventHandler::onPrivacyEnabled);
121+
}
122+
115123
};
116124

117125
#endif /* MBED_CHAINABLEGAPEVENTHANDLER_H_ */

cores/arduino/mbed/connectivity/nanostack/sal-stack-nanostack/nanostack/ws_bbr_api.h

+13
Original file line numberDiff line numberDiff line change
@@ -334,6 +334,19 @@ int ws_bbr_pan_configuration_get(int8_t interface_id, uint16_t *pan_id);
334334
*/
335335
int ws_bbr_pan_configuration_validate(int8_t interface_id, uint16_t pan_id);
336336

337+
/**
338+
* Sets Wi-SUN BSI
339+
*
340+
* Sets Wi-SUN PAN BSI.
341+
*
342+
* \param interface_id Network interface ID.
343+
* \param new_bsi Identifier.
344+
*
345+
* \return 0, PAN BSI set.
346+
* \return <0 PAN BSI set failed.
347+
*/
348+
int ws_bbr_bsi_set(int8_t interface_id, uint16_t new_bsi);
349+
337350
/**
338351
* Sets memory used for key storages
339352
*

cores/arduino/mbed/connectivity/nanostack/sal-stack-nanostack/nanostack/ws_management_api.h

+5
Original file line numberDiff line numberDiff line change
@@ -382,6 +382,8 @@ int ws_management_channel_plan_set(
382382
*
383383
* Change the default configuration for Wi-SUN FHSS operation.
384384
*
385+
* Calling with fhss_uc_dwell_interval = 0, fhss_broadcast_interval = 0xffffffff,
386+
* fhss_bc_dwell_interval = 0 restores stack defaults
385387
*
386388
* \param interface_id Network interface ID.
387389
* \param fhss_uc_dwell_interval default to 250 ms.
@@ -403,6 +405,7 @@ int ws_management_fhss_timing_configure(
403405
* Change the default configuration for Wi-SUN FHSS operation.
404406
* if application defined is used the behaviour is undefined
405407
*
408+
* Calling with dwell_interval = 0, channel_function = 0xff, fixed_channel = 0xffff restores stack defaults
406409
*
407410
* \param interface_id Network interface ID.
408411
* \param channel_function Unicast channel function.
@@ -458,6 +461,8 @@ int ws_management_fhss_unicast_channel_function_validate(
458461
* Change the default configuration for Wi-SUN FHSS operation.
459462
* if application defined is used the behaviour is undefined
460463
*
464+
* Calling with dwell_interval = 0, channel_function = 0xff,
465+
* broadcast_interval = 0xffffffff, fixed_channel = 0xffff restores stack defaults
461466
*
462467
* \param interface_id Network interface ID.
463468
* \param channel_function Broadcast channel function.

cores/arduino/mbed/connectivity/nanostack/sal-stack-nanostack/source/6LoWPAN/ws/ws_bbr_api_internal.h

+5
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,9 @@ bool ws_bbr_ready_to_start(protocol_interface_info_entry_t *cur);
3737

3838
bool ws_bbr_backbone_address_get(uint8_t *address);
3939

40+
uint16_t ws_bbr_bsi_generate(protocol_interface_info_entry_t *interface);
41+
void ws_bbr_init(protocol_interface_info_entry_t *interface);
42+
4043
#else
4144

4245
#define ws_bbr_seconds_timer( cur, seconds)
@@ -46,6 +49,8 @@ bool ws_bbr_backbone_address_get(uint8_t *address);
4649
#define ws_bbr_dhcp_address_lifetime_set(cur, dhcp_address_lifetime)
4750
#define ws_bbr_ready_to_start(cur) true
4851
#define ws_bbr_backbone_address_get(address) 0
52+
#define ws_bbr_bsi_generate(interface) 0
53+
#define ws_bbr_init(interface) (void) 0
4954

5055
#endif //HAVE_WS_BORDER_ROUTER
5156

cores/arduino/mbed/connectivity/nanostack/sal-stack-nanostack/source/6LoWPAN/ws/ws_cfg_settings.h

+4-4
Original file line numberDiff line numberDiff line change
@@ -56,12 +56,12 @@ typedef struct ws_timing_cfg_s {
5656
* \brief Struct ws_rpl_cfg_t RPL configuration
5757
*/
5858
typedef struct ws_bbr_cfg_s {
59-
uint8_t dio_interval_min; /**> DIO interval min; DEFAULT_DIO_INTERVAL_MIN; 2^value in milliseconds; range 1-255; default */
60-
uint8_t dio_interval_doublings; /**> DIO interval doublings; DEFAULT_DIO_INTERVAL_DOUBLINGS; range 1-8; default */
61-
uint8_t dio_redundancy_constant; /**> DIO redundancy constant; DEFAULT_DIO_REDUNDANCY_CONSTANT; range 0-10; default */
59+
uint8_t dio_interval_min; /**< DIO interval min; DEFAULT_DIO_INTERVAL_MIN; 2^value in milliseconds; range 1-255; default */
60+
uint8_t dio_interval_doublings; /**< DIO interval doublings; DEFAULT_DIO_INTERVAL_DOUBLINGS; range 1-8; default */
61+
uint8_t dio_redundancy_constant; /**< DIO redundancy constant; DEFAULT_DIO_REDUNDANCY_CONSTANT; range 0-10; default */
6262
uint16_t dag_max_rank_increase;
6363
uint16_t min_hop_rank_increase;
64-
uint32_t dhcp_address_lifetime; /**> DHCP address lifetime in seconds minimum 2 hours and maximum as days hours*/
64+
uint32_t dhcp_address_lifetime; /**< DHCP address lifetime in seconds minimum 2 hours and maximum as days hours*/
6565
} ws_bbr_cfg_t;
6666

6767
/**

cores/arduino/mbed/connectivity/nanostack/sal-stack-nanostack/source/6LoWPAN/ws/ws_common.h

+6
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,11 @@ typedef struct {
7373
uint8_t index;
7474
} ws_pending_key_index_t;
7575

76+
typedef struct {
77+
uint32_t block_time;
78+
uint16_t old_bsi;
79+
} ws_bsi_block_t;
80+
7681
typedef NS_LIST_HEAD(ws_nud_table_entry_t, link) ws_nud_table_list_t;
7782

7883
typedef struct ws_info_s {
@@ -89,6 +94,7 @@ typedef struct ws_info_s {
8994
parent_info_t parent_info[WS_PARENT_LIST_SIZE];
9095
parent_info_list_t parent_list_free;
9196
parent_info_list_t parent_list_reserved;
97+
ws_bsi_block_t ws_bsi_block;
9298
uint16_t aro_registration_timer; /**< Aro registration timer */
9399
uint16_t rpl_version_timer; /**< RPL version update timeout */
94100
uint32_t pan_timeout_timer; /**< routers will fallback to previous state after this */

cores/arduino/mbed/connectivity/nanostack/sal-stack-nanostack/source/6LoWPAN/ws/ws_config.h

+30-7
Original file line numberDiff line numberDiff line change
@@ -130,14 +130,37 @@ extern uint8_t DEVICE_MIN_SENS;
130130

131131

132132
/* Multicast MPL data message parameters
133-
* IMIN = 10 seconds, IMAX = 3 doublings
134133
*/
135-
136-
#define DATA_MESSAGE_IMIN 10
137-
#define DATA_MESSAGE_TIMER_EXPIRATIONS 3
138-
#define DATA_MESSAGE_IMAX 80
139-
#define DATA_MESSAGE_K 8
140-
#define MPL_SEED_SET_ENTRY_TIMEOUT (DATA_MESSAGE_IMAX * 24 * 4) // 10 seconds per hop making this 240 seconds
134+
#define MPL_SAFE_HOP_COUNT 6
135+
136+
/*Border router override to optimize the multicast startup*/
137+
#define MPL_BORDER_ROUTER_MIN_EXPIRATIONS 2
138+
#define MPL_BORDER_ROUTER_MAXIMUM_IMAX 40
139+
140+
/*Small network size*/
141+
#define MPL_SMALL_IMIN 1
142+
#define MPL_SMALL_IMAX 10
143+
#define MPL_SMALL_EXPIRATIONS 1
144+
#define MPL_SMALL_K 8
145+
#define MPL_SMALL_SEED_LIFETIME (MPL_SMALL_IMAX * MPL_SAFE_HOP_COUNT * (MPL_SMALL_EXPIRATIONS + 1)) // time that packet should get to safe distance
146+
/*Medium network size*/
147+
#define MPL_MEDIUM_IMIN 5
148+
#define MPL_MEDIUM_IMAX 20
149+
#define MPL_MEDIUM_EXPIRATIONS 2
150+
#define MPL_MEDIUM_K 8
151+
#define MPL_MEDIUM_SEED_LIFETIME (MPL_MEDIUM_IMAX * MPL_SAFE_HOP_COUNT * (MPL_MEDIUM_EXPIRATIONS + 1)) // time that packet should get to safe distance
152+
/*Large network size*/
153+
#define MPL_LARGE_IMIN 5
154+
#define MPL_LARGE_IMAX 40
155+
#define MPL_LARGE_EXPIRATIONS 2
156+
#define MPL_LARGE_K 8
157+
#define MPL_LARGE_SEED_LIFETIME (MPL_LARGE_IMAX * MPL_SAFE_HOP_COUNT * (MPL_LARGE_EXPIRATIONS + 1)) // time that packet should get to safe distance
158+
/*xtra large network size*/
159+
#define MPL_XLARGE_IMIN 10
160+
#define MPL_XLARGE_IMAX 80
161+
#define MPL_XLARGE_EXPIRATIONS 2
162+
#define MPL_XLARGE_K 8
163+
#define MPL_XLARGE_SEED_LIFETIME (MPL_XLARGE_IMAX * MPL_SAFE_HOP_COUNT * (MPL_XLARGE_EXPIRATIONS + 1)) // time that packet should get to safe distance
141164

142165
/* DHCP client timeout configuration values
143166
*

cores/arduino/mbed/connectivity/nanostack/sal-stack-nanostack/source/6LoWPAN/ws/ws_pae_key_storage.h

+8
Original file line numberDiff line numberDiff line change
@@ -153,6 +153,14 @@ bool ws_pae_key_storage_supp_delete(const void *instance, const uint8_t *eui64);
153153
*/
154154
void ws_pae_key_storage_timer(uint16_t seconds);
155155

156+
/**
157+
* ws_pae_key_storage_fast_timer key storage fast timers
158+
*
159+
* \param ticks Ticks passed
160+
*
161+
*/
162+
void ws_pae_key_storage_fast_timer(uint16_t ticks);
163+
156164
/**
157165
* ws_pae_key_storage_storing_interval_get gets key storage storing interval
158166
*

cores/arduino/mbed/connectivity/nanostack/sal-stack-nanostack/source/6LoWPAN/ws/ws_pae_nvm_data.h

+24-6
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,24 @@
4949
// key storage index bitfield (8)
5050
#define PAE_NVM_KEY_STORAGE_INDEX_LEN 8
5151

52+
typedef struct nw_info_nvm_tlv {
53+
uint16_t tag; /**< Unique tag */
54+
uint16_t len; /**< Number of the bytes after the length field */
55+
uint8_t data[PAE_NVM_NW_INFO_LEN]; /**< Data */
56+
} nw_info_nvm_tlv_t;
57+
58+
typedef struct keys_nvm_tlv {
59+
uint16_t tag; /**< Unique tag */
60+
uint16_t len; /**< Number of the bytes after the length field */
61+
uint8_t data[PAE_NVM_KEYS_LEN]; /**< Data */
62+
} keys_nvm_tlv_t;
63+
64+
typedef struct frame_cnt_nvm_tlv {
65+
uint16_t tag; /**< Unique tag */
66+
uint16_t len; /**< Number of the bytes after the length field */
67+
uint8_t data[PAE_NVM_FRAME_COUNTER_LEN]; /**< Data */
68+
} frame_cnt_nvm_tlv_t;
69+
5270
/**
5371
* ws_pae_nvm_store_generic_tlv_create create NVM generic storage TLV
5472
*
@@ -77,7 +95,7 @@ void ws_pae_nvm_store_generic_tlv_free(nvm_tlv_t *tlv_entry);
7795
* \return TLV entry or NULL
7896
*
7997
*/
80-
void ws_pae_nvm_store_nw_info_tlv_create(nvm_tlv_t *tlv_entry, uint16_t pan_id, char *nw_name, sec_prot_gtk_keys_t *gtks);
98+
void ws_pae_nvm_store_nw_info_tlv_create(nw_info_nvm_tlv_t *tlv_entry, uint16_t pan_id, char *nw_name, sec_prot_gtk_keys_t *gtks);
8199

82100
/**
83101
* ws_pae_nvm_store_nw_info_tlv_read read from NVM network info TLV
@@ -91,7 +109,7 @@ void ws_pae_nvm_store_nw_info_tlv_create(nvm_tlv_t *tlv_entry, uint16_t pan_id,
91109
* \return >= 0 success
92110
*
93111
*/
94-
int8_t ws_pae_nvm_store_nw_info_tlv_read(nvm_tlv_t *tlv_entry, uint16_t *pan_id, char *nw_name, sec_prot_gtk_keys_t *gtks);
112+
int8_t ws_pae_nvm_store_nw_info_tlv_read(nw_info_nvm_tlv_t *tlv_entry, uint16_t *pan_id, char *nw_name, sec_prot_gtk_keys_t *gtks);
95113

96114
/**
97115
* ws_pae_nvm_store_keys_tlv_create create NVM keys TLV
@@ -100,7 +118,7 @@ int8_t ws_pae_nvm_store_nw_info_tlv_read(nvm_tlv_t *tlv_entry, uint16_t *pan_id,
100118
* \param sec_keys security keys
101119
*
102120
*/
103-
void ws_pae_nvm_store_keys_tlv_create(nvm_tlv_t *tlv_entry, sec_prot_keys_t *sec_keys);
121+
void ws_pae_nvm_store_keys_tlv_create(keys_nvm_tlv_t *tlv_entry, sec_prot_keys_t *sec_keys);
104122

105123
/**
106124
* ws_pae_nvm_store_nw_info_tlv_read read from NVM keys TLV
@@ -112,7 +130,7 @@ void ws_pae_nvm_store_keys_tlv_create(nvm_tlv_t *tlv_entry, sec_prot_keys_t *sec
112130
* \return >= 0 success
113131
*
114132
*/
115-
int8_t ws_pae_nvm_store_keys_tlv_read(nvm_tlv_t *tlv_entry, sec_prot_keys_t *sec_keys);
133+
int8_t ws_pae_nvm_store_keys_tlv_read(keys_nvm_tlv_t *tlv_entry, sec_prot_keys_t *sec_keys);
116134

117135
/**
118136
* ws_pae_nvm_store_frame_counter_tlv_create create NVM frame counter TLV
@@ -123,7 +141,7 @@ int8_t ws_pae_nvm_store_keys_tlv_read(nvm_tlv_t *tlv_entry, sec_prot_keys_t *sec
123141
* \param counters frame counters
124142
*
125143
*/
126-
void ws_pae_nvm_store_frame_counter_tlv_create(nvm_tlv_t *tlv_entry, uint32_t restart_cnt, uint16_t pan_version, frame_counters_t *counters);
144+
void ws_pae_nvm_store_frame_counter_tlv_create(frame_cnt_nvm_tlv_t *tlv_entry, uint32_t restart_cnt, uint16_t pan_version, frame_counters_t *counters);
127145

128146
/**
129147
* ws_pae_nvm_store_frame_counter_tlv_read read from NVM frame counter TLV
@@ -138,7 +156,7 @@ void ws_pae_nvm_store_frame_counter_tlv_create(nvm_tlv_t *tlv_entry, uint32_t re
138156
* \return >= 0 success
139157
*
140158
*/
141-
int8_t ws_pae_nvm_store_frame_counter_tlv_read(nvm_tlv_t *tlv_entry, uint32_t *restart_cnt, uint64_t *stored_time, uint16_t *pan_version, frame_counters_t *counters);
159+
int8_t ws_pae_nvm_store_frame_counter_tlv_read(frame_cnt_nvm_tlv_t *tlv_entry, uint32_t *restart_cnt, uint64_t *stored_time, uint16_t *pan_version, frame_counters_t *counters);
142160

143161
/**
144162
* ws_pae_nvm_store_key_storage_index_tlv_create create NVM key storage index TLV

cores/arduino/mbed/connectivity/nanostack/sal-stack-nanostack/source/6LoWPAN/ws/ws_pae_nvm_store.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,8 @@ typedef struct nvm_tlv {
4040

4141
typedef struct {
4242
nvm_tlv_t nvm_tlv; /**< NVM TLV */
43-
uint64_t reference_time; /**< Reference time used for timers (set when file is created) */
4443
uint32_t reference_restart_cnt; /**< Reference re-start counter set when file is created) */
44+
uint64_t reference_time; /**< Reference time used for timers (set when file is created) */
4545
} key_storage_nvm_tlv_entry_t;
4646

4747
// tag + length

cores/arduino/mbed/connectivity/nanostack/sal-stack-nanostack/source/Core/include/ns_socket.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ typedef struct socket {
130130
int8_t id; /*!< socket id */
131131
uint8_t flags; /*!< Socket option flags */
132132
int8_t tasklet; /*!< Receiver tasklet */
133-
uint8_t refcount;
133+
uint16_t refcount;
134134
socket_family_t family;
135135
socket_type_t type;
136136
int8_t default_interface_id;

cores/arduino/mbed/connectivity/nanostack/sal-stack-nanostack/source/MAC/IEEE802_15_4/mac_pd_sap.h

+3
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626

2727
struct protocol_interface_rf_mac_setup;
2828
struct arm_phy_sap_msg_s;
29+
struct mac_fcf_sequence_s;
2930

3031
#define ENHANCED_ACK_NEIGHBOUR_POLL_MAX_TIME_US 3500
3132

@@ -61,4 +62,6 @@ void mac_pd_sap_state_machine(struct protocol_interface_rf_mac_setup *rf_mac_set
6162

6263
int8_t mac_data_edfe_force_stop(struct protocol_interface_rf_mac_setup *rf_ptr);
6364

65+
bool mac_pd_sap_ack_validation(struct protocol_interface_rf_mac_setup *rf_ptr, const struct mac_fcf_sequence_s *fcf_dsn, const uint8_t *data_ptr);
66+
6467
#endif /* MAC_PD_SAP_H_ */

cores/arduino/mbed/connectivity/nanostack/sal-stack-nanostack/source/RPL/rpl_downward.h

+1
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ void rpl_instance_parent_address_reg_timer_update(struct rpl_instance *instance,
4646
void rpl_instance_send_address_registration(rpl_instance_t *instance, const uint8_t addr[16]);
4747
bool rpl_instance_address_registration_done(protocol_interface_info_entry_t *interface, rpl_instance_t *instance, rpl_neighbour_t *neighbour, uint8_t status);
4848
struct rpl_dao_target *rpl_instance_get_active_target_confirmation(struct rpl_instance *instance);
49+
bool rpl_instance_parent_selection_ready(struct rpl_instance *instance);
4950

5051
#ifdef HAVE_RPL_DAO_HANDLING
5152
bool rpl_instance_dao_received(struct rpl_instance *instance, const uint8_t src[16], int8_t interface_id, bool multicast, const uint8_t *opts, uint16_t opts_len, uint8_t *status_out);

cores/arduino/mbed/connectivity/nanostack/sal-stack-nanostack/source/Service_Libs/fhss/fhss_ws.h

+2
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,8 @@ struct fhss_ws {
4040
int32_t drift_per_millisecond_ns;
4141
int16_t *tr51_channel_table;
4242
uint8_t *tr51_output_table;
43+
uint32_t next_uc_timeout;
44+
uint32_t next_bc_timeout;
4345
bool unicast_timer_running;
4446
bool broadcast_timer_running;
4547
bool is_on_bc_channel;

cores/arduino/mbed/connectivity/nanostack/sal-stack-nanostack/source/nsconfig.h

+7
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,13 @@
5454
#endif
5555
#endif /* HAVE_WS */
5656

57+
/* Configure trace level for Nanostack */
58+
#ifdef MBED_CONF_NANOSTACK_TRACE_MAX_LEVEL
59+
#ifdef MBED_TRACE_MAX_LEVEL
60+
#undef MBED_TRACE_MAX_LEVEL
61+
#endif /* MBED_TRACE_MAX_LEVEL */
62+
#define MBED_TRACE_MAX_LEVEL MBED_CONF_NANOSTACK_TRACE_MAX_LEVEL
63+
#endif /* MBED_CONF_NANOSTACK_TRACE_MAX_LEVEL */
5764

5865
#endif // ifndef _NANOSTACK_SOURCE_CONFIG_H
5966

cores/arduino/mbed/drivers/include/drivers/internal/SFDP.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ int sfdp_detect_erase_types_inst_and_size(uint8_t *bptbl_ptr, sfdp_hdr_info &sfd
129129
*
130130
* @return Region number
131131
*/
132-
int sfdp_find_addr_region(bd_size_t offset, const sfdp_hdr_info &sfdp_info);
132+
int sfdp_find_addr_region(bd_addr_t offset, const sfdp_hdr_info &sfdp_info);
133133

134134
/** Finds the largest Erase Type of the Region to which the offset belongs to
135135
*

cores/arduino/mbed/platform/include/platform/internal/SysTimer.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -191,7 +191,7 @@ class SysTimer: private mbed::TimerEvent, private mbed::NonCopyable<SysTimer<Per
191191
*/
192192
std::chrono::duration<int, period> unacknowledged_ticks() const
193193
{
194-
return std::chrono::duration<int, period>(core_util_atomic_load_u8(&_unacknowledged_ticks));
194+
return std::chrono::duration<int, period>(core_util_atomic_load_u32(&_unacknowledged_ticks));
195195
}
196196

197197
/** Get the current tick count
@@ -248,7 +248,7 @@ class SysTimer: private mbed::TimerEvent, private mbed::NonCopyable<SysTimer<Per
248248
const highres_time_point _epoch;
249249
highres_time_point _time;
250250
uint64_t _tick;
251-
uint8_t _unacknowledged_ticks;
251+
uint32_t _unacknowledged_ticks;
252252
bool _wake_time_set;
253253
bool _wake_time_passed;
254254
bool _wake_early;

cores/arduino/mbed/storage/blockdevice/COMPONENT_SPIF/include/SPIF/SPIFBlockDevice.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
#define MBED_SPIF_BLOCK_DEVICE_H
1919

2020
#include "platform/SingletonPtr.h"
21-
#include "drivers/SPI.h"
21+
#include "drivers/SPIMaster.h"
2222
#include "drivers/DigitalOut.h"
2323
#include "drivers/internal/SFDP.h"
2424
#include "blockdevice/BlockDevice.h"
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,20 @@
1+
/*
2+
* Copyright 2020 Cypress Semiconductor Corporation
3+
* SPDX-License-Identifier: Apache-2.0
4+
*
5+
* Licensed under the Apache License, Version 2.0 (the "License");
6+
* you may not use this file except in compliance with the License.
7+
* You may obtain a copy of the License at
8+
*
9+
* http://www.apache.org/licenses/LICENSE-2.0
10+
*
11+
* Unless required by applicable law or agreed to in writing, software
12+
* distributed under the License is distributed on an "AS IS" BASIS,
13+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
* See the License for the specific language governing permissions and
15+
* limitations under the License.
16+
*/
17+
118
#define WHD_VERSION "v1.91.2"
219
#define WHD_BRANCH "v1.91.2"
320
#define WHD_DATE "2020-06-25 02:15:47 -0500"

cores/arduino/mbed/targets/TARGET_STM/TARGET_STM32H7/TARGET_STM32H747xI/TARGET_PORTENTA_H7/PinNames.h

+2
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22
*******************************************************************************
33
* Copyright (c) 2018, STMicroelectronics
44
* Copyright (c) 2020, Arduino SA
5+
*
6+
* SPDX-License-Identifier: BSD-3-Clause
57
* All rights reserved.
68
*
79
* Redistribution and use in source and binary forms, with or without

0 commit comments

Comments
 (0)