Skip to content

Commit 9b8a12d

Browse files
committed
Incorporate Amanda's edits
1 parent e145b7f commit 9b8a12d

File tree

1 file changed

+3
-4
lines changed

1 file changed

+3
-4
lines changed

docs/advanced/bootloader.md

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ A target requires flash HAL functionality in order to support the bootloader. Pl
88

99
## mbed OS managed bootloader
1010

11-
The tools of mbed OS know how to manage some bootloader projects. The tools can manage bootloader projects where the bootlodoader comes before the application in ROM and the application starts immediately after the bootloader. If your bootloader does not meet both of these requirements, then please read the [unmanaged bootloader section](bootloader.md#unmanaged-bootloader). A managed bootloader project automatically merge the bootloader image with the application image as part of the application image build process.
11+
The tools of mbed OS know how to manage some bootloader projects. The tools can manage bootloader projects where the bootlodoader comes before the application in ROM and the application starts immediately after the bootloader. If your bootloader does not meet both of these requirements, then please read the [unmanaged bootloader section](bootloader.md#unmanaged-bootloader). A managed bootloader project automatically merges the bootloader image with the application image as part of the application image build process.
1212

1313
### Creating the bootloader
1414

@@ -101,15 +101,14 @@ For an example showing how to create an application that uses a bootloader, see
101101

102102
## Unmanaged bootloader
103103

104-
You want to have an unmanaged bootloader when your bootloader's requirements conflict with the requirements of the managed bootloader. You need an unmanaged bootloader when your bootloader does not come before your application in ROM or your application does not start immediately after your bootloader. Unlike a managed bootloader, an unmananged bootloader does not automatically merge the bootloader image with the application image after building the application. We expect users of an unmanaged bootloader build to construct there own set of scripts built atop the `mbed compile` primitive to perform bootloader and application merging.
104+
You want to have an unmanaged bootloader when your bootloader's requirements conflict with the requirements of the managed bootloader. You need an unmanaged bootloader when your bootloader does not come before your application in ROM or your application does not start immediately after your bootloader. Unlike a managed bootloader, an unmananged bootloader does not automatically merge the bootloader image with the application image after building the application. We expect users of an unmanaged bootloader build to construct thier own set of scripts built atop the `mbed compile` primitive to perform bootloader and application merging.
105105

106106
An unmanaged bootloader build is a method for controlling the link location of a program within mbed OS. There are two configuration options available for changing the link location: `target.mbed_app_start` and `target.mbed_app_size`.
107107

108108
### `target.mbed_app_start`
109109

110-
111110
The configuration option `target.mbed_app_start` sets the starting address of the linker script by defining the `MBED_APP_START` macro for the linker script. You may only define this configuration option within the `target_overrides` section of an mbed application configuration, and you may not define it for the meta-target `*`. When you do not define this configuration option, it defaults to the start of a target's ROM. This configuration option must be an address within ROM.
112111

113112
### `target.mbed_app_size`
114113

115-
The configuration option `target.mbed_app_size` defines the size of an application image in ROM by defining the `MBED_APP_SIZE` macro for the linker script. You may only define this configuration option on a per-target basis defined within the `target_overrides` section of an mbed application configuration, and you may not define it for the meta-target `*`. When you do not define this configuration option, it defaults to the remaining ROM, which the mbed OS tools calculate by subtracting the image's offset into ROM from the total size of ROM. Together with `target.mbed_app_start`, these configuration options define a continuous region of memory that an image may use. The tools verify that this region of memory is in ROM, but the tools do not perform any other checks for consistency or validity.
114+
The configuration option `target.mbed_app_size` defines the size of an application image in ROM by defining the `MBED_APP_SIZE` macro for the linker script. You may only define this configuration option on a per-target basis defined within the `target_overrides` section of an mbed application configuration, and you may not define it for the metatarget `*`. When you do not define this configuration option, it defaults to the remaining ROM. The mbed OS tools calculate the remaning ROM by subtracting the image's offset into ROM from the total size of ROM. Together with `target.mbed_app_start`, these configuration options define a continuous region of memory that an image may use. The tools verify that this region of memory is in ROM, but the tools do not perform any other checks for consistency or validity.

0 commit comments

Comments
 (0)