Skip to content

Commit 8ceb353

Browse files
author
Irit Arkin
committed
Done with pages for that section
Will now fix header levels for the existing sections before moving on to the other sections
1 parent a803051 commit 8ceb353

File tree

5 files changed

+24
-19
lines changed

5 files changed

+24
-19
lines changed

docs.json

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -51,14 +51,10 @@
5151
{"type": "markdown", "url": "https://github.com/ARMmbed/Handbook/blob/new_engine/docs/creating_apps/timer_design.md"},
5252
{"type": "markdown", "url": "https://github.com/ARMmbed/Handbook/blob/new_engine/docs/creating_apps/timing_considerations.md"},
5353
{"type": "markdown", "url": "https://github.com/ARMmbed/Handbook/blob/new_engine/docs/creating_apps/interactions.md"},
54-
{"type": "markdown", "url": "https://github.com/ARMmbed/Handbook/blob/new_engine/docs/creating_apps/task_manage_methods.md"},
55-
{"type": "markdown", "url": "https://github.com/ARMmbed/Handbook/blob/new_engine/docs/creating_apps/task_manage_methods.md"},
56-
{"type": "markdown", "url": "https://github.com/ARMmbed/Handbook/blob/new_engine/docs/creating_apps/task_manage_methods.md"},
57-
{"type": "markdown", "url": "https://github.com/ARMmbed/Handbook/blob/new_engine/docs/creating_apps/task_manage_methods.md"},
58-
{"type": "markdown", "url": "https://github.com/ARMmbed/Handbook/blob/new_engine/docs/creating_apps/task_manage_methods.md"},
59-
{"type": "markdown", "url": "https://github.com/ARMmbed/Handbook/blob/new_engine/docs/creating_apps/task_manage_methods.md"},
60-
{"type": "markdown", "url": "https://github.com/ARMmbed/Handbook/blob/new_engine/docs/creating_apps/task_manage_methods.md"}
61-
54+
{"type": "markdown", "url": "https://github.com/ARMmbed/Handbook/blob/new_engine/docs/creating_apps/network_stack_sleep.md"},
55+
{"type": "markdown", "url": "https://github.com/ARMmbed/Handbook/blob/new_engine/docs/creating_apps/bootloader.md"},
56+
{"type": "markdown", "url": "https://github.com/ARMmbed/Handbook/blob/new_engine/docs/creating_apps/debug_profile.md"},
57+
{"type": "markdown", "url": "https://github.com/ARMmbed/Handbook/blob/new_engine/docs/creating_apps/release_profile.md"}
6258
]
6359
},
6460
{

docs/advanced/bootloader.md renamed to docs/creating_apps/bootloader.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
1-
# Bootloader
1+
## Bootloader
22

33
This guide explains how to create a bootloader, how to create a main program to go with the bootloader and how to use this bootloader to perform software updates.
44

5-
## Porting bootloader
5+
### Porting bootloader
66

77
A target requires flash HAL functionality in order to support the bootloader. Please follow [the bootloader porting guide](https://docs.mbed.com/docs/mbed-os-handbook/en/latest/advanced/flash/) for more details.
88

9-
## mbed OS managed bootloader
9+
### mbed OS managed bootloader
1010

1111
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

13-
### Creating the bootloader
13+
#### Creating the bootloader
1414

1515
Creating a bootloader is similar to creating a regular application. The only additional step you need is to specify the size of the bootloader as a target override in mbed_app.json in the target field "target.restrict_size":
1616

@@ -57,7 +57,7 @@ mbed_start_application(POST_APPLICATION_ADDR);
5757

5858
For an example showing how to create a bootloader, see the [mbed-os-example-bootloader](https://github.com/armmbed/mbed-os-example-bootloader) repository.
5959

60-
### Creating the main program
60+
#### Creating the main program
6161

6262
To create an application using a bootloader, you must first have created the bootloader binary and added it to the current project. You must then specify the bootloader image in mbed_app.json in the target_override section:
6363

@@ -73,7 +73,7 @@ To create an application using a bootloader, you must first have created the boo
7373
Adding this field has following effects:
7474

7575
* When a build occurs, the application builds for the address immediately after the bootloader. The build system does this automatically by defining the symbols `MBED_APP_START` and `MBED_APP_SIZE` in the linker script (.sct, .ld or .icf).
76-
* At the end of building, the build image is automatically combined with the bootloader to create the final image.
76+
* At the end of building, the build image is automatically combined with the bootloader to create the final image.
7777

7878
Note: When building offline, the original uncombined image is in the same directory `<project-name>_application.bin`.
7979

@@ -95,20 +95,20 @@ It produces the following ROM layout:
9595
|(my_bootloader.bin)|
9696
| |
9797
+-------------------+ BOOTLOADER_ADDR == Start of ROM
98-
```
98+
```
9999

100100
For an example showing how to create an application that uses a bootloader, see the [mbed OS bootloader example](https://github.com/armmbed/mbed-os-example-bootloader-blinky) repository.
101101

102-
## Unmanaged bootloader
102+
### Unmanaged bootloader
103103

104104
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

106-
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`.
106+
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

108-
### `target.mbed_app_start`
108+
#### `target.mbed_app_start`
109109

110110
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 metatarget `*`. 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.
111111

112-
### `target.mbed_app_size`
112+
#### `target.mbed_app_size`
113113

114114
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.

docs/creating_apps/debug_profile.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
## Debug profile
2+
3+
[A document about different approaches and considerations when writing code for the debug profile (development, debugging, instrumentation)]
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
## Network stack during sleep
2+
3+
[A document explaining how to deal with network stacks while sleeping]

docs/creating_apps/release_profile.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
## Release profile
2+
3+
[A document about different approaches and considerations when writing code for the release profile (production).]

0 commit comments

Comments
 (0)