Skip to content

Commit abf22a7

Browse files
authored
Merge pull request #1458 from nanoframework/release-v1.3.2
Release 1.3.2
2 parents 4ee8fb7 + 49747e4 commit abf22a7

File tree

3 files changed

+41
-5
lines changed

3 files changed

+41
-5
lines changed

azure-pipelines.yml

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -340,15 +340,31 @@ jobs:
340340
vmImage: 'VS2017-Win2016'
341341

342342
steps:
343-
343+
# create or update GitHub release
344+
- task: GitHubReleasePublish@1
345+
inputs:
346+
githubEndpoint: 'nanoframework'
347+
githubOwner: 'nanoframework'
348+
githubRepositoryName: nf-interpreter
349+
githubTag: v$(NBGV_Version)
350+
githubReleaseTitle: 'nf Interpreter v$(NBGV_Version)'
351+
githubTargetCommitsh: $(Build.SourceVersion)
352+
githubReleaseDraft: true
353+
githubReleasePrerelease: true
354+
githubReuseDraftOnly: true
355+
githubReuseRelease: true
356+
githubEditRelease: true
357+
githubDeleteEmptyTag: true
358+
condition: and( succeeded(), not( startsWith(variables['Build.SourceBranch'], 'refs/pull') ), not( startsWith(variables['Build.SourceBranch'], 'refs/tags/v') ), ne( variables['StartReleaseCandidate'], true ) )
359+
displayName: Create/Update GitHub release
360+
344361
- task: GitHubReleasePublish@1
345362
inputs:
346363
githubEndpoint: 'nanoframework'
347364
githubOwner: 'nanoframework'
348365
githubRepositoryName: nf-interpreter
349366
githubTag: v$(NBGV_Version)
350367
githubReleaseTitle: 'nf Interpreter v$(NBGV_Version)'
351-
githubReleaseNotes:
352368
githubTargetCommitsh: $(Build.SourceVersion)
353369
githubReleaseDraft: false
354370
githubReleasePrerelease: false

targets/CMSIS-OS/ChibiOS/common/LaunchCLR.c

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@ void LaunchCLR(uint32_t address)
3535

3636
bool CheckValidCLRImage(uint32_t address)
3737
{
38+
uint32_t resetVectorAddress;
39+
3840
// load nanoCLR vector table
3941
const vectors_t* nanoCLRVectorTable = (vectors_t*) address;
4042

@@ -51,9 +53,27 @@ bool CheckValidCLRImage(uint32_t address)
5153
// that's an assembly "b.n" (branch instruction) the very first one in the Reset_Handler function
5254
// see os\common\startup\ARMCMx\compilers\GCC\vectors.S
5355

56+
57+
// for series that have ART Accelerator the handlers addresses stored in the vector table are for ITCM access
58+
// need to parsed them to reach the equivalent address in AXI access
59+
#ifdef FLASHITCM_BASE
60+
61+
// read address (ITCM)
62+
resetVectorAddress = (uint32_t)((uint32_t*)nanoCLRVectorTable->reset_handler);
63+
// parse it to get the address in the AXI range
64+
resetVectorAddress -= FLASHITCM_BASE;
65+
resetVectorAddress += FLASHAXI_BASE;
66+
67+
#else
68+
69+
// "regular" address mapping
70+
resetVectorAddress = (uint32_t)((uint32_t*)nanoCLRVectorTable->reset_handler);
71+
72+
#endif
73+
5474
// sanity check for invalid address (out of flash range which causes a hard fault)
55-
if( (uint32_t)((uint32_t*)nanoCLRVectorTable->reset_handler) <= FLASH1_MEMORY_StartAddress ||
56-
(uint32_t)((uint32_t*)nanoCLRVectorTable->reset_handler) >= (FLASH1_MEMORY_StartAddress + FLASH1_MEMORY_Size) )
75+
if( resetVectorAddress <= FLASH1_MEMORY_StartAddress ||
76+
resetVectorAddress >= (FLASH1_MEMORY_StartAddress + FLASH1_MEMORY_Size) )
5777
{
5878
// check failed, doesn't seem to be a valid CLR image
5979
return false;

version.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"$schema": "https://raw.githubusercontent.com/AArnott/Nerdbank.GitVersioning/master/src/NerdBank.GitVersioning/version.schema.json",
3-
"version": "1.3.1",
3+
"version": "1.3.2",
44
"assemblyVersion": {
55
"precision": "revision"
66
},

0 commit comments

Comments
 (0)