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, + }, +};