This is an automated email from the ASF dual-hosted git repository.

jerzy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/mynewt-core.git

commit 82d50e1f6b80bb30730031bbf10bee7294aff22f
Author: Jerzy Kasenberg <jerzy.kasenb...@codecoup.pl>
AuthorDate: Mon Mar 4 15:54:21 2024 +0100

    Add image header package
    
    This package adds content of .image_header section
    When this section is present and correct linker script is used
    generated elf file can be directly downloaded by debugger
    
    Signed-off-by: Jerzy Kasenberg <jerzy.kasenb...@codecoup.pl>
---
 mgmt/image_header/pkg.yml            | 33 +++++++++++++++++++++++++++++++++
 mgmt/image_header/src/image_header.c | 31 +++++++++++++++++++++++++++++++
 2 files changed, 64 insertions(+)

diff --git a/mgmt/image_header/pkg.yml b/mgmt/image_header/pkg.yml
new file mode 100644
index 000000000..724f708f5
--- /dev/null
+++ b/mgmt/image_header/pkg.yml
@@ -0,0 +1,33 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#  http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+pkg.name: mgmt/image_header
+pkg.description: >
+    Package adds section .image_header.
+    When this section is present elf file contains mynewt image header and
+    can be loaded directly debugger into flash.
+pkg.author: "Apache Mynewt <d...@mynewt.apache.org>"
+pkg.homepage: "http://mynewt.apache.org/";
+pkg.keywords:
+
+pkg.deps:
+    - "@mcuboot/boot/bootutil"
+
+pkg.lflags:
+    - "-uimage_header"
diff --git a/mgmt/image_header/src/image_header.c 
b/mgmt/image_header/src/image_header.c
new file mode 100644
index 000000000..8b6581dd0
--- /dev/null
+++ b/mgmt/image_header/src/image_header.c
@@ -0,0 +1,31 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+#include <bootutil/image.h>
+
+__attribute__((section(".image_header"))) const struct image_header 
image_header = {
+    .ih_magic = IMAGE_MAGIC,
+    .ih_hdr_size = IMAGE_HEADER_SIZE,
+    .ih_ver = {
+        .iv_major = 0,
+        .iv_minor = 1,
+        .iv_revision = 0,
+        .iv_build_num = 99,
+    },
+};

Reply via email to