Add Sonata 1.0 and 1.1 board descriptions. The -prerelease name is now an empty patch, since everything we support is currently in a release. We can resurrect it if needed. 1.0 is defined as a small diff on 1.1 (it adds some small tweaks to handle missing features.).
diff --git a/sdk/boards/sonata-1.0.patch b/sdk/boards/sonata-1.0.patch new file mode 100644 index 0000000..8521866 --- /dev/null +++ b/sdk/boards/sonata-1.0.patch
@@ -0,0 +1,15 @@ +{ + "base": "sonata-1.1", + "patch": [ + { + "op": "add", + "path": "/defines/0", + "value": "CHERIOT_NO_SAIL_83" + }, + { + "op": "add", + "path": "/cxflags", + "value": "-mllvm -enable-machine-outliner=never" + } + ] +}
diff --git a/sdk/boards/sonata-prerelease.json b/sdk/boards/sonata-1.1.json similarity index 97% rename from sdk/boards/sonata-prerelease.json rename to sdk/boards/sonata-1.1.json index 7f7b327..1dd81f2 100644 --- a/sdk/boards/sonata-prerelease.json +++ b/sdk/boards/sonata-1.1.json
@@ -96,10 +96,8 @@ "SUNBURST_SHADOW_SIZE=0x800", "ipconfigDRIVER_INCLUDED_RX_IP_CHECKSUM=1", "ipconfigDRIVER_INCLUDED_TX_IP_CHECKSUM=1", - "CHERIOT_NO_SAIL_83", "STDERR_TO_STDOUT=1" ], - "cxflags": "-mllvm -enable-machine-outliner=never", "driver_includes" : [ "../include/platform/sunburst", "../include/platform/ibex",
diff --git a/sdk/boards/sonata-prerelease.patch b/sdk/boards/sonata-prerelease.patch new file mode 100644 index 0000000..931cd7e --- /dev/null +++ b/sdk/boards/sonata-prerelease.patch
@@ -0,0 +1,4 @@ +{ + "base": "sonata-1.1", + "patch": [ ] +}
diff --git a/sdk/boards/sonata-simulator.patch b/sdk/boards/sonata-simulator.patch index 142eaa5..353edbd 100644 --- a/sdk/boards/sonata-simulator.patch +++ b/sdk/boards/sonata-simulator.patch
@@ -1,5 +1,5 @@ { - "base": "sonata-prerelease", + "base": "sonata-1.1", "patch": [ { "op": "replace",
diff --git a/sdk/xmake.lua b/sdk/xmake.lua index 73a8a8a..46d9032 100644 --- a/sdk/xmake.lua +++ b/sdk/xmake.lua
@@ -259,7 +259,7 @@ -- The directory containing the board file. local boarddir = path.directory(boardfile); -- If this isn't a path, look in the boards directory - if path.basename(boardfile) == boardfile then + if not os.isfile(boardfile) then boarddir = path.join(scriptdir, "boards") local fullBoardPath = path.join(boarddir, boardfile .. '.json') if not os.isfile(fullBoardPath) then