-
Notifications
You must be signed in to change notification settings - Fork 178
Add unmanaged bootloader documentation #149
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
@AnotherButler could you edit? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice work on this. I left my suggested changes. Most of them relate to passive voice.
docs/advanced/bootloader.md
Outdated
## Creating the bootloader | ||
## mbed OS managed bootloader | ||
|
||
The tools of mbed OS know how to manage some bootloader projects. The tools can manage bootloader projects where the bootlodoader is placed in ROM before the application and the application starts immediately after the bootloader. If your bootloader does not meet both of these requirements, then pleas read the [unmanaged bootloader section](bootloader.md#unmanaged-bootloader). A managed bootloader project will automatically merge the bootloader image with the application image as part of the application image build process. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- In the second sentence, "is placed in ROM" is passive voice. Please clarify who or what is doing the placing.
- Please change "pleas" to "please" in the third sentence.
- In the last sentence, please change "will automatically merge" to "automatically merges" for consistent tense.
docs/advanced/bootloader.md
Outdated
|
||
## Unmanaged bootloader | ||
|
||
You want to have an unmanaged bootloader when your bootloaders 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. Unlinke a managed bootloader, an unmananged bootloader does not automatically merge the bootloader image with the application image after building the application. We expect a user of an unmanaged bootloader build to construct there own set of scripts built atop the `mbed compile` primitive to perform bootloader and application merging. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- In first sentence, please change "bootloaders" to "bootloader's" to show possession.
- In third sentence, please change "Unlinke" to "Unlike" to fix the typo.
- Please change the start of the last sentence to "We expect users of unmanaged bootloader builds to construct their own sets of scripts built atop..." for agreement.
docs/advanced/bootloader.md
Outdated
|
||
You want to have an unmanaged bootloader when your bootloaders 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. Unlinke a managed bootloader, an unmananged bootloader does not automatically merge the bootloader image with the application image after building the application. We expect a user of an unmanaged bootloader build to construct there own set of scripts built atop the `mbed compile` primitive to perform bootloader and application merging. | ||
|
||
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`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Query: Should this appear earlier, before we first mention "unmanaged bootloaders"?
docs/advanced/bootloader.md
Outdated
### `target.mbed_app_start` | ||
|
||
|
||
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. This configuration option may only be defined within the `target_overrides` section of an mbed application configuration and may not be defined for the meta-target `*`. When this configuration option is not defined, it defaults to the start of a target's ROM. This configuration option must be an address within ROM. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"may only be defined" and "may not be defined" and "is not defined" are passive voice. Please clarify who or what is doing the defining.
docs/advanced/bootloader.md
Outdated
|
||
### `target.mbed_app_size` | ||
|
||
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. This configuration option may only be defined on a per-target basis defined within the `target_overrides` section of an mbed application configuration and may not be defined for the meta-target `*`. When this configuration option is not defined, it defaults to the remaining ROM, which is calculated 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 placed within ROM, but the tools do not perform any other checks for consistency or validity. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- "may only be defined" and "may not be defined" and "is not defined" are passive voice. Please clarify who or what is doing the defining.
- Please delete the extra space between "the" and "remaining" in the third sentence.
- "is calculated" is passive voice. Please clarify who or what is doing the calculating.
- "is placed within ROM" is passive voice. Please clarify who or what is doing the placing.
9233a9c
to
6c1f399
Compare
Delete extra space
Documentation for ARMmbed/mbed-os#4202