diff --git a/repos/gems/run/sculpt.run b/repos/gems/run/sculpt.run
index 199fb1442f..a475961278 100644
--- a/repos/gems/run/sculpt.run
+++ b/repos/gems/run/sculpt.run
@@ -12,12 +12,13 @@ proc sculpt_version { } { return "24.10" }
proc assert_platform_supported { } {
- if {[have_board pc]} return
- if {[have_board imx8q_evk]} return
- if {[have_board mnt_reform2]} return
- if {[have_board mnt_pocket]} return
- if {[have_board linux]} return
- if {[have_board pinephone]} return
+ if {[have_board pc]} return
+ if {[have_board imx8q_evk]} return
+ if {[have_board mnt_reform2]} return
+ if {[have_board mnt_pocket]} return
+ if {[have_board linux]} return
+ if {[have_board pinephone]} return
+ if {[have_board imx8mp_armstone]} return
puts "Platform is unsupported.";
exit 0;
@@ -231,6 +232,18 @@ proc driver_routes { } {
}
+ set result(imx8mp_armstone) {
+
+
+
+
+
+
+
+
+
+ }
+
if {[info exists result([board])]} {
return $result([board]); }
diff --git a/repos/gems/run/sculpt_image.run b/repos/gems/run/sculpt_image.run
index f565a0896e..8f9e9b60aa 100644
--- a/repos/gems/run/sculpt_image.run
+++ b/repos/gems/run/sculpt_image.run
@@ -3,10 +3,11 @@
#
proc board_supported { } {
- if {[have_board pinephone]} { return true }
- if {[have_board pc]} { return true }
- if {[have_board mnt_reform2]} { return true }
- if {[have_board mnt_pocket]} { return true }
+ if {[have_board pinephone]} { return true }
+ if {[have_board pc]} { return true }
+ if {[have_board mnt_reform2]} { return true }
+ if {[have_board mnt_pocket]} { return true }
+ if {[have_board imx8mp_armstone]} { return true }
return false
}
@@ -52,6 +53,12 @@ if {[have_board mnt_pocket]} {
assert_run_arg "--image-uboot-gzip-best"
}
+if {[have_board imx8mp_armstone]} {
+ assert_include image/uboot
+ assert_include image/armstone_sdcard
+ assert_run_arg "--image-uboot-gzip-best"
+}
+
source ${genode_dir}/repos/gems/run/sculpt.run
set image_name "sculpt-$board_var-[build_date]"
diff --git a/repos/gems/src/app/sculpt_manager/main.cc b/repos/gems/src/app/sculpt_manager/main.cc
index c0ff8b8154..7c2b3bba60 100644
--- a/repos/gems/src/app/sculpt_manager/main.cc
+++ b/repos/gems/src/app/sculpt_manager/main.cc
@@ -91,6 +91,7 @@ struct Sculpt::Main : Input_event_handler,
bool const _mnt_reform = (_build_info.board == "mnt_reform2");
bool const _mnt_pocket = (_build_info.board == "mnt_pocket");
+ bool const _armstone = (_build_info.board == "imx8mp_armstone");
Registry _child_states { };
@@ -294,13 +295,13 @@ struct Sculpt::Main : Input_event_handler,
**********************/
Board_info::Soc _soc {
- .fb = _mnt_reform || _mnt_pocket,
+ .fb = _mnt_reform || _mnt_pocket || _armstone,
.touch = false,
.wifi = _mnt_pocket, /* initialized via PCI on Reform */
- .usb = _mnt_reform || _mnt_pocket,
- .mmc = _mnt_reform || _mnt_pocket,
+ .usb = _mnt_reform || _mnt_pocket || _armstone,
+ .mmc = _mnt_reform || _mnt_pocket || _armstone,
.modem = false,
- .nic = _mnt_reform || _mnt_pocket,
+ .nic = _mnt_reform || _mnt_pocket || _armstone,
.fb_on_dedicated_cpu = _mnt_pocket
};
@@ -310,7 +311,7 @@ struct Sculpt::Main : Input_event_handler,
Drivers::Resumed _resumed = _drivers.resumed();
Board_info::Options _driver_options {
- .display = _mnt_reform || _mnt_pocket,
+ .display = _mnt_reform || _mnt_pocket || _armstone,
.usb_net = false,
.nic = false,
.wifi = _mnt_pocket,