You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mynewt.apache.org by ad...@apache.org on 2016/08/29 23:04:56 UTC

[3/3] incubator-mynewt-site git commit: Split image documentation

Split image documentation


Project: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/commit/61c05ad2
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/tree/61c05ad2
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/diff/61c05ad2

Branch: refs/heads/asf-site
Commit: 61c05ad2dfd0127de5650b82a7cb458877eda4aa
Parents: 1d5176d
Author: aditihilbert <ad...@runtime.io>
Authored: Mon Aug 29 16:04:24 2016 -0700
Committer: aditihilbert <ad...@runtime.io>
Committed: Mon Aug 29 16:04:24 2016 -0700

----------------------------------------------------------------------
 develop/mkdocs/search_index.json                | 130 +++
 develop/os/core_os/callout/callout/index.html   |  11 +
 .../callout/os_callout_func_init/index.html     |  11 +
 .../core_os/callout/os_callout_init/index.html  |  11 +
 .../callout/os_callout_queued/index.html        |  11 +
 .../core_os/callout/os_callout_reset/index.html |  11 +
 .../core_os/callout/os_callout_stop/index.html  |  11 +
 .../context_switch/context_switch/index.html    |  11 +
 .../context_switch/os_arch_ctx_sw/index.html    |  11 +
 .../core_os/context_switch/os_sched/index.html  |  11 +
 .../os_sched_ctx_sw_hook/index.html             |  11 +
 .../os_sched_get_current_task/index.html        |  11 +
 .../context_switch/os_sched_insert/index.html   |  11 +
 .../os_sched_next_task/index.html               |  11 +
 .../os_sched_os_timer_exp/index.html            |  11 +
 .../context_switch/os_sched_resort/index.html   |  11 +
 .../os_sched_set_current_task/index.html        |  11 +
 .../context_switch/os_sched_sleep/index.html    |  11 +
 .../context_switch/os_sched_wakeup/index.html   |  11 +
 .../core_os/event_queue/event_queue/index.html  |  11 +
 .../event_queue/os_eventq_get/index.html        |  11 +
 .../event_queue/os_eventq_init/index.html       |  11 +
 .../event_queue/os_eventq_put/index.html        |  11 +
 .../event_queue/os_eventq_remove/index.html     |  11 +
 develop/os/core_os/heap/heap/index.html         |  11 +
 develop/os/core_os/heap/os_free/index.html      |  11 +
 develop/os/core_os/heap/os_malloc/index.html    |  11 +
 develop/os/core_os/heap/os_realloc/index.html   |  11 +
 develop/os/core_os/mbuf/OS_MBUF_DATA/index.html |  11 +
 .../mbuf/OS_MBUF_LEADINGSPACE/index.html        |  11 +
 .../os/core_os/mbuf/OS_MBUF_PKTHDR/index.html   |  11 +
 .../mbuf/OS_MBUF_PKTHDR_TO_MBUF/index.html      |  11 +
 .../os/core_os/mbuf/OS_MBUF_PKTLEN/index.html   |  11 +
 .../mbuf/OS_MBUF_TRAILINGSPACE/index.html       |  11 +
 .../os/core_os/mbuf/OS_MBUF_USRHDR/index.html   |  11 +
 .../core_os/mbuf/OS_MBUF_USRHDR_LEN/index.html  |  11 +
 develop/os/core_os/mbuf/mbuf/index.html         |  11 +
 develop/os/core_os/mbuf/os_mbuf_adj/index.html  |  11 +
 .../os/core_os/mbuf/os_mbuf_append/index.html   |  11 +
 .../os/core_os/mbuf/os_mbuf_concat/index.html   |  11 +
 .../os/core_os/mbuf/os_mbuf_copydata/index.html |  11 +
 .../os/core_os/mbuf/os_mbuf_copyinto/index.html |  11 +
 develop/os/core_os/mbuf/os_mbuf_dup/index.html  |  11 +
 .../os/core_os/mbuf/os_mbuf_extend/index.html   |  11 +
 .../core_os/mbuf/os_mbuf_free_chain/index.html  |  11 +
 develop/os/core_os/mbuf/os_mbuf_get/index.html  |  11 +
 .../core_os/mbuf/os_mbuf_get_pkthdr/index.html  |  11 +
 .../os/core_os/mbuf/os_mbuf_memcmp/index.html   |  11 +
 develop/os/core_os/mbuf/os_mbuf_off/index.html  |  11 +
 .../core_os/mbuf/os_mbuf_pool_init/index.html   |  11 +
 .../os/core_os/mbuf/os_mbuf_prepend/index.html  |  11 +
 .../os/core_os/mbuf/os_mbuf_pullup/index.html   |  11 +
 .../memory_pool/OS_MEMPOOL_BYTES/index.html     |  11 +
 .../memory_pool/OS_MEMPOOL_SIZE/index.html      |  11 +
 .../core_os/memory_pool/memory_pool/index.html  |  11 +
 .../memory_pool/os_memblock_get/index.html      |  11 +
 .../memory_pool/os_memblock_put/index.html      |  11 +
 .../memory_pool/os_mempool_init/index.html      |  11 +
 develop/os/core_os/mqueue/mqueue/index.html     |  11 +
 .../os/core_os/mqueue/os_mqueue_get/index.html  |  11 +
 .../os/core_os/mqueue/os_mqueue_init/index.html |  11 +
 .../os/core_os/mqueue/os_mqueue_put/index.html  |  11 +
 develop/os/core_os/msys/msys/index.html         |  11 +
 develop/os/core_os/msys/os_msys_get/index.html  |  11 +
 .../core_os/msys/os_msys_get_pkthdr/index.html  |  11 +
 .../os/core_os/msys/os_msys_register/index.html |  11 +
 .../os/core_os/msys/os_msys_reset/index.html    |  11 +
 develop/os/core_os/mutex/mutex/index.html       |  11 +
 .../os/core_os/mutex/os_mutex_init/index.html   |  11 +
 .../os/core_os/mutex/os_mutex_pend/index.html   |  11 +
 .../core_os/mutex/os_mutex_release/index.html   |  11 +
 develop/os/core_os/mynewt_os/index.html         |  11 +
 develop/os/core_os/os_init/index.html           |  11 +
 develop/os/core_os/os_start/index.html          |  11 +
 develop/os/core_os/os_started/index.html        |  11 +
 develop/os/core_os/porting/port_bsp/index.html  |  11 +
 develop/os/core_os/porting/port_cpu/index.html  |  11 +
 develop/os/core_os/porting/port_mcu/index.html  |  11 +
 develop/os/core_os/porting/port_os/index.html   |  11 +
 .../sanity/os_sanity_check_init/index.html      |  11 +
 .../sanity/os_sanity_check_register/index.html  |  11 +
 .../sanity/os_sanity_check_reset/index.html     |  11 +
 .../sanity/os_sanity_task_checkin/index.html    |  11 +
 .../sanity/os_sanity_task_init/index.html       |  11 +
 develop/os/core_os/sanity/sanity/index.html     |  11 +
 .../os/core_os/semaphore/os_sem_init/index.html |  11 +
 .../os/core_os/semaphore/os_sem_pend/index.html |  11 +
 .../core_os/semaphore/os_sem_release/index.html |  11 +
 .../os/core_os/semaphore/semaphore/index.html   |  11 +
 .../os/core_os/task/os_task_count/index.html    |  11 +
 .../task/os_task_info_get_next/index.html       |  11 +
 develop/os/core_os/task/os_task_init/index.html |  11 +
 develop/os/core_os/task/task/index.html         |  11 +
 .../os/core_os/time/os_gettimeofday/index.html  |  11 +
 .../os/core_os/time/os_settimeofday/index.html  |  11 +
 develop/os/core_os/time/os_time/index.html      |  11 +
 .../os/core_os/time/os_time_delay/index.html    |  11 +
 develop/os/core_os/time/os_time_get/index.html  |  11 +
 develop/os/core_os/time/os_time_tick/index.html |  11 +
 develop/os/modules/baselibc/index.html          |  11 +
 .../bootloader/boot_build_status/index.html     |  11 +
 .../bootloader/boot_build_status_one/index.html |  11 +
 .../bootloader/boot_clear_status/index.html     |  11 +
 .../bootloader/boot_copy_area/index.html        |  11 +
 .../bootloader/boot_copy_image/index.html       |  11 +
 .../bootloader/boot_erase_area/index.html       |  11 +
 .../bootloader/boot_fill_slot/index.html        |  11 +
 .../boot_find_image_area_idx/index.html         |  11 +
 .../bootloader/boot_find_image_part/index.html  |  11 +
 .../bootloader/boot_find_image_slot/index.html  |  11 +
 .../os/modules/bootloader/boot_go/index.html    |  11 +
 .../bootloader/boot_init_flash/index.html       |  11 +
 .../bootloader/boot_move_area/index.html        |  11 +
 .../boot_read_image_header/index.html           |  11 +
 .../boot_read_image_headers/index.html          |  11 +
 .../bootloader/boot_read_status/index.html      |  11 +
 .../boot_select_image_slot/index.html           |  11 +
 .../bootloader/boot_slot_addr/index.html        |  11 +
 .../bootloader/boot_slot_to_area_idx/index.html |  11 +
 .../bootloader/boot_swap_areas/index.html       |  11 +
 .../bootloader/boot_vect_delete_main/index.html |  11 +
 .../bootloader/boot_vect_delete_test/index.html |  11 +
 .../bootloader/boot_vect_read_main/index.html   |  11 +
 .../bootloader/boot_vect_read_one/index.html    |  11 +
 .../bootloader/boot_vect_read_test/index.html   |  11 +
 .../bootloader/boot_write_status/index.html     |  11 +
 .../os/modules/bootloader/bootloader/index.html |  15 +-
 develop/os/modules/console/console/index.html   |  11 +
 .../console/console_blocking_mode/index.html    |  11 +
 .../os/modules/console/console_echo/index.html  |  11 +
 .../os/modules/console/console_init/index.html  |  11 +
 .../modules/console/console_is_init/index.html  |  11 +
 .../modules/console/console_printf/index.html   |  11 +
 .../os/modules/console/console_read/index.html  |  11 +
 .../os/modules/console/console_write/index.html |  11 +
 develop/os/modules/elua/elua/index.html         |  11 +
 develop/os/modules/elua/lua_init/index.html     |  11 +
 develop/os/modules/elua/lua_main/index.html     |  11 +
 develop/os/modules/fcb/fcb/index.html           |  11 +
 develop/os/modules/fcb/fcb_append/index.html    |  11 +
 .../os/modules/fcb/fcb_append_finish/index.html |  11 +
 .../fcb/fcb_append_to_scratch/index.html        |  11 +
 develop/os/modules/fcb/fcb_clear/index.html     |  11 +
 develop/os/modules/fcb/fcb_getnext/index.html   |  11 +
 develop/os/modules/fcb/fcb_init/index.html      |  11 +
 develop/os/modules/fcb/fcb_is_empty/index.html  |  11 +
 .../os/modules/fcb/fcb_offset_last_n/index.html |  11 +
 develop/os/modules/fcb/fcb_rotate/index.html    |  11 +
 develop/os/modules/fcb/fcb_walk/index.html      |  11 +
 develop/os/modules/fs/fs/fs/index.html          |  11 +
 develop/os/modules/fs/fs/fs_close/index.html    |  11 +
 develop/os/modules/fs/fs/fs_closedir/index.html |  11 +
 .../modules/fs/fs/fs_dirent_is_dir/index.html   |  11 +
 .../os/modules/fs/fs/fs_dirent_name/index.html  |  11 +
 develop/os/modules/fs/fs/fs_filelen/index.html  |  11 +
 develop/os/modules/fs/fs/fs_getpos/index.html   |  11 +
 develop/os/modules/fs/fs/fs_mkdir/index.html    |  11 +
 develop/os/modules/fs/fs/fs_open/index.html     |  11 +
 develop/os/modules/fs/fs/fs_opendir/index.html  |  11 +
 develop/os/modules/fs/fs/fs_ops/index.html      |  11 +
 develop/os/modules/fs/fs/fs_read/index.html     |  11 +
 develop/os/modules/fs/fs/fs_readdir/index.html  |  11 +
 develop/os/modules/fs/fs/fs_register/index.html |  11 +
 develop/os/modules/fs/fs/fs_rename/index.html   |  11 +
 .../os/modules/fs/fs/fs_return_codes/index.html |  11 +
 develop/os/modules/fs/fs/fs_seek/index.html     |  11 +
 develop/os/modules/fs/fs/fs_unlink/index.html   |  11 +
 develop/os/modules/fs/fs/fs_write/index.html    |  11 +
 .../modules/fs/fs/fsutil_read_file/index.html   |  11 +
 .../modules/fs/fs/fsutil_write_file/index.html  |  11 +
 develop/os/modules/fs/nffs/nffs/index.html      |  11 +
 .../modules/fs/nffs/nffs_area_desc/index.html   |  11 +
 .../os/modules/fs/nffs/nffs_config/index.html   |  11 +
 .../os/modules/fs/nffs/nffs_detect/index.html   |  11 +
 .../os/modules/fs/nffs/nffs_format/index.html   |  11 +
 develop/os/modules/fs/nffs/nffs_init/index.html |  11 +
 .../modules/fs/nffs/nffs_internals/index.html   |  11 +
 develop/os/modules/fs/otherfs/index.html        |  11 +
 develop/os/modules/hal/hal/index.html           |  11 +
 .../os/modules/hal/hal_adc/hal_adc/index.html   |  11 +
 develop/os/modules/hal/hal_api/index.html       |  11 +
 .../os/modules/hal/hal_architecture/index.html  |  11 +
 .../hal/hal_cputime/hal_cpu_timer/index.html    |  11 +
 develop/os/modules/hal/hal_creation/index.html  |  11 +
 .../os/modules/hal/hal_dac/hal_dac/index.html   |  11 +
 .../modules/hal/hal_flash/hal_flash/index.html  |  11 +
 .../hal/hal_flash/hal_flash_int/index.html      |  11 +
 .../hal/hal_flash/hal_flash_map/index.html      |  11 +
 .../os/modules/hal/hal_gpio/hal_gpio/index.html |  11 +
 .../os/modules/hal/hal_i2c/hal_i2c/index.html   |  11 +
 .../os/modules/hal/hal_in_libraries/index.html  |  11 +
 .../os/modules/hal/hal_pwm/hal_pwm/index.html   |  11 +
 .../os/modules/hal/hal_spi/hal_spi/index.html   |  11 +
 .../modules/hal/hal_system/hal_sys/index.html   |  11 +
 .../os/modules/hal/hal_uart/hal_uart/index.html |  11 +
 develop/os/modules/imgmgr/imgmgr/index.html     |  11 +
 .../imgmgr/imgmgr_module_init/index.html        |  11 +
 .../os/modules/imgmgr/imgr_ver_parse/index.html |  11 +
 .../os/modules/imgmgr/imgr_ver_str/index.html   |  11 +
 develop/os/modules/json/json/index.html         |  11 +
 .../json/json_encode_object_entry/index.html    |  11 +
 .../json/json_encode_object_finish/index.html   |  11 +
 .../json/json_encode_object_key/index.html      |  11 +
 .../json/json_encode_object_start/index.html    |  11 +
 .../os/modules/json/json_read_object/index.html |  11 +
 develop/os/modules/logs/logs/index.html         |  11 +
 develop/os/modules/shell/shell/index.html       |  11 +
 .../modules/shell/shell_cmd_register/index.html |  11 +
 .../shell/shell_nlip_input_register/index.html  |  11 +
 .../modules/shell/shell_nlip_output/index.html  |  15 +-
 .../os/modules/shell/shell_task_init/index.html |  11 +
 develop/os/modules/split/split/index.html       | 844 +++++++++++++++++++
 develop/os/modules/stats/stats/index.html       |  11 +
 .../os/modules/testutil/test_assert/index.html  |  11 +
 .../os/modules/testutil/test_case/index.html    |  11 +
 .../os/modules/testutil/test_decl/index.html    |  11 +
 .../os/modules/testutil/test_pass/index.html    |  11 +
 .../os/modules/testutil/test_suite/index.html   |  11 +
 develop/os/modules/testutil/testutil/index.html |  11 +
 develop/os/modules/testutil/tu_init/index.html  |  11 +
 .../os/modules/testutil/tu_restart/index.html   |  11 +
 develop/os/os_user_guide/index.html             |  11 +
 develop/sitemap.xml                             |  20 +-
 index.html                                      |   4 +-
 latest/sitemap.xml                              |  20 +-
 sitemap.xml                                     |  20 +-
 v0_9_0/sitemap.xml                              |  20 +-
 227 files changed, 3440 insertions(+), 46 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/mkdocs/search_index.json
----------------------------------------------------------------------
diff --git a/develop/mkdocs/search_index.json b/develop/mkdocs/search_index.json
index 9b55220..d401450 100644
--- a/develop/mkdocs/search_index.json
+++ b/develop/mkdocs/search_index.json
@@ -4771,6 +4771,136 @@
             "title": "Example"
         }, 
         {
+            "location": "/os/modules/split/split/", 
+            "text": "Split Images\n\n\nDescription\n\n\nSplit images allow the user to build the application content separate from the library content by splitting an application into two pieces:\n\n\n\n\nA \"loader\" which contains a separate application that can perform upgrades and manage split images. The \"loader\" resides in slot 1.\n\n\nA \"split app\" which contains the main application content and references the libraries in the loader by static linkage. The \"split app\" resides in slot 2.\n\n\n\n\nGoals\n\n\nThe goal of split images is to allow a larger application to run along with large components of mynewt such as \nnimble BLE stack\n and \nneutron flash file system(nffs)\n.\n\n\nConcept\n\n\nIn a typical mynewt application, an application is contained wholly within an image slot.  Typically there are at least two image slots since the image runs from one slot while uploading new code into the second slot.  Each image is capable of erasing and uploading another image. 
  Each image is completely stand-alone; that is, each image contains all of the libraries and components that it needs.   \n\n\nOn a typical 256 kbyte flash, a flash layout might look like this:\n\n\n\n\n\n\n\n\nName\n\n\nSize\n\n\n\n\n\n\n\n\n\n\nbootloader\n\n\n16 k\n\n\n\n\n\n\nimage slot 1\n\n\n108 k\n\n\n\n\n\n\nimage slot 2\n\n\n108 k\n\n\n\n\n\n\nscratch\n\n\n8 k\n\n\n\n\n\n\nFlash file system\n\n\n16 k\n\n\n\n\n\n\n\n\nNow, suppose the desired image contains:\n\n\n\n\n\n\n\n\nPackage\n\n\nSize\n\n\n\n\n\n\n\n\n\n\nnimble\n\n\n69 k\n\n\n\n\n\n\nos\n\n\n6 k\n\n\n\n\n\n\nlogging\n\n\n3 k\n\n\n\n\n\n\nimagemgr\n\n\n3 k\n\n\n\n\n\n\nconfig\n\n\n3 k\n\n\n\n\n\n\nnffs\n\n\n15 k\n\n\n\n\n\n\nnewtmgr\n\n\n7 k\n\n\n\n\n\n\n\n\nwhich total 106k.  With an image slot size of 108k this leaves only a small amount of code space remaining for the application.\n\n\nHowever, we can see that these packages contain everything you need to upgrade and configure, so if we build a stand-alone loader 
 with these components, we can build the app as a split image and get the entire second image slot to store application code and constant data.\n\n\nWhen do I use split images\n\n\nIf your application fits into the available image slots, there is no advantage to using split images.  In general, split images are harder to debug and more complicated to upload. However for a larger application, there may not be enough flash space to have two copies of the entire application. This is when split image becomes necessary.\n\n\nHow do I tell Newt I am building a split image?\n\n\nNewt looks for the variable \nloader\n in your target file. If it finds \nloader\n variable, it will build a split image.  For example, \n\n\ntargets/app\n    app=@apache-mynewt-core/apps/splitty\n    loader=@apache-mynewt-core/apps/slinky\n    bsp=@apache-mynewt-core/hw/bsp/nrf52dk\n    build_profile=optimized\n\n\n\n\n\nshows an application called splitty which uses slinky as its loader.\n\n\nPlatforms\n\n\nSplit 
 image requires BSP support.  The following BSPs support split images:\n\n\n\n\nnrf52dk\n\n\n\n\nLoaders\n\n\nThe following applications have been enabled as loaders. You may choose to build your own loader application, and these can serve as samples.\n\n\n\n\n@apache-mynewt-core/apps/slinky\n\n\n@apache-mynewt-core/apps/bleprph\n\n\n\n\nSplit Apps\n\n\nThe following applications have been enabled as split applications. If you choose to build your own split application these can serve as samples. Note that slinky can be either a loader image or a split app image.\n\n\n\n\n@apache-mynewt-core/apps/slinky\n\n\n@apache-mynewt-core/apps/splitty\n\n\n\n\nTheory of Operation\n\n\nA split image is built as follows:\n\n\nFirst newt builds the \napp\n and \nloader\n images separately to ensure they are consistent (no errors) and to generate elf files which can inform newt of the symbols used by each part.\n\n\nThen newt collects the symbols used by both \napp\n and \nloader\n in two ways.  It
  collects the set of symbols from the \n.elf\n files. It also collects all the possible symbols from the \n.a\n files for each application.\n\n\nNewt builds the set of packages that the two applications share.  It ensures that all the symbols used in those packages are matching.  NOTE: because of features and #ifdefs, its possible for the two package to have symbols that are not the same.  In this case newt generates an error and will not build a split image.  \n\n\nThen newt creates the list of symbols that the two applications share from those packages (using the .elf files).\n\n\nNewt re-links the loader to ensure all of these symbols are present in the loader application (by forcing the linker to include them in the \n.elf\n).  \n\n\nNewt builds a special copy of the loader.elf with only these symbols (and the handful of symbols discussed in the linking section above).\n\n\nFinally, newt links the application, replacing the common .a libraries with the special loader.elf image d
 uring the link. \n\n\nDesign\n\n\nBootloader\n\n\nThe bootloader has been modified to support \"non bootable\" images like split app images.  A flag in the image header denotes the image as \"non-bootable\". When this flag is set, the bootloader will not boot the split app image, nor will it copy it to the slot 1 location. Loader images are bootable, split app images are not.\n\n\nNewt\n\n\nNewt builds a split image when the token \nloader=@apache-mynewt-core/apps/slinky\n is present in the target file.\n\n\nNewt has a \nBuilder\n object that is responsible for building an image.  This features a \ntargetBuilder\n object that contains two builders (one for the app and one for the loader).\n\n\nThe \nBuilder\n object has been expanded to include options for building as part of a split image.\n\n Ability to specify the linker file during the link\n\n Ability to specify a set of keep_symbols during the link\n\n\nNewt commands like download, size, create-image have been expanded to perf
 orm operations twice (once for loader and once for app) if the loader target is present.\n\n\nDuring normal single-image builds, the \ntargetBuilder\n initializes and builds the application \nbuilder\n. During the split image build, the \ntargetBuilder\n performs the steps outlined in the section above using the two \nbuilder\ns for the loader and app.\n\n\nSpecial symbol and link features are designed as follows:\n\n\n\n\nNewt uses objdump to parse the symbol maps in the \n.a\n and \n.elf\n files. \n\n\nNewt uses the \n--undefined=\n option of the linker to force the loader to keep symbols used by the app (but not used by the linker)\n\n\nNewt uses objcopy with the \n-K\n (keep) option when building the special linker \n.elf\n.\n\n\nNewt uses the \n--just-symbols\n option of the linker to link against the loader \n.elf\n file.  \n\n\n\n\nnewt create-image\n\n\nCreate image uses two different methods to compute the image hash for standard and split images.  For split images, the has
 h is computed starting with the 32-byte hash of the loader, then continuing with the hashing algorithm used by the standard application.  This ensures that the split app can be \"validated\" against a loader image specifically.  \n\n\nnewt errors\n\n\nNewt has several new build errors when building split images.  \n\n\n\n\nLinker script undefined.  If the BSP for your application does not define a split image linker script the build will fail.\n\n\n\n\nIf newt finds that the same library (for example libs/os) has a different implementaiton in the loader and app, it will generate an error and fail to build.  These differences can arise when \n#ifdef\n or features are included in one app and not the other.  For example, it the loader includes \nlibs/console/stubs\n and the app includes \nlibs/console/full\n this may change implementations of certain functions within other packages.  \n\n\nImage manifest\n\n\nnewt builds a single manifest for split images, adding extra tags to the mani
 fest when the image is a split image.\n\n\n  \nloader\n: \nslinky.img\n,\n  \nloader_hash\n: \n55e254f133bedf640fc7be7b5bfe3e5fb387cf5e29ecd0d4ea02b5ba617e27e0\n,\n    \nloader_pkgs\n: [\n        ...\n        ]\n\n\n\n\n\nThe manifest lists packages in both the loader and app.  The app package list only contains those packages that reside in the app image itself.  \n\n\nlibs/bootutil\n\n\nBootutil has been expanded to include a function that looks for a split app image in slot 2, verifies that it matches the loader image in slot 1 and then fetches the entry information for the split app.\n\n\nlibs/split\n\n\nA small split image library was created to provide newtmgr commands for split image and to hold the configuration for split image. See newtmgr below for details.\n\n\nIt also contains the function used by a loader to validate and boot a split image.  \n\n\napps/slinky\n\n\nA sample app that can be built as a split image with slinky.\n\n\nTips when Building Split images\n\n\nTo b
 e added\n\n\nAdding BSP support for split images\n\n\nA BSP needs additional components to be \"split image ready\".\n\n\nThe split image requires a special linker script. The split image needs to run from the second image partition (since it's using the loader library that is linked to be placed in the first partition).  It needs to reserve space for RAM used by the loader.  It also does not need to include the vector table (just a bit of it).\n\n\nThe startup of the split image is different than a typical image.  It needs to copy \n.data\n from the loader image, and zero the loader image bss.  For this, it must reference symbols defined in the linker script of the loader. It has a special entry symbol that differentiates it from the entry symbol in the loader application.  \n\n\nSeveral of the bsp scripts need to handle additional agruments to deal with the two images produced by newt when building split images - mainly download and debug.\n\n\nAdd the following components to enab
 le your BSP for split images:\n\n\n\n\nA split image linker file\n\n\nA startup file for the split image\n\n\nA property in the pkg.yml file to tell newt what linker script to use for partition 2 images.  The property is defined as \npkg.part2linkerscript: \"split-nrf52dk.ld\n for example.\n\n\nModified download script\n\n\n\n\nAn example can be found in the \n/hw/bsp/nrf52dk\n\n\nsplit image linker script\n\n\nThe split image linker script must have the following.\n\n\nThe split linker must define the entry symbol as Reset_Handler_split.   For example:\n\n\nENTRY(Reset_Handler_split)\n\n\n\n\n\nThe split linker must define the first two words in the vector table (initial SP and Reset Vector). The additional vector entries are part of the loader. The bootloader accesses these entries at the beginning of the image slot (first 2 words). For example:\n\n\n    .text :\n    {\n        __split_isr_vector_start = .;\n        KEEP(*(.isr_vector_split))\n        __split_isr_vector_end = .;\n
         ...     \n\n\n\n\n\nThe split linker must ensure that it doesn't overwrite the BSS and DATA sections of the loader (they are both using RAM).  Note, the two apps don't run at the same time, but the loader has global data that its libraries use.  This cannot be overwritten by the application. An example linker section that accomplishes this can be found in \n/hw/bsp/nrf52dk/split-nrf52dk.ld\n. When linking against the loader, the loader exports the following symbosl which can be used by the split app code:\n\n\n\n\n__HeapBase_loader\n\n\n__bss_start___loader\n\n\n__bss_end___loader\n\n\n__etext_loader\n\n\n__data_start___loader\n\n\n__data_end___loader\n\n\n\n\nThe split app linker can use \n__HeapBase_loader\n to skip RAM used by the loader as follows.\n\n\n    /* save RAM used by the split image. This assumes that \n     * the loader uses all the RAM up to its HeapBase  */\n    .loader_ram_contents :\n    {\n        _loader_ram_start = .;\n\n    /* this symbol comes from th
 e loader linker */\n    . = . + (ABSOLUTE(__HeapBase_loader) - _loader_ram_start);\n        _loader_ram_end = .;\n    } \n RAM\n\n\n\n\n\nsplit image startup code\n\n\nThe split application needs separate startup code to intialize the split image before running main.  THe split image is specially linked so that _start and main are included individually for the loader and split app.\n\n\nThe split app startup code must have the following.\n\n\n\n\nA definition of the split image vector table (first two words). \n\n\nThe entry point function to start the code \nReset_Handler_split\n\n\nCode that copies the .data section for the loader from Flash to RAM\n\n\nCode that zeros the .bss section for the loader.\n\n\nCode that calls _sbrkInit to set the heap pointers for the application\n\n\n\n\nAn example can be found in the \n/hw/bsp/nrf52dk/src/arch/cortex_m4/gcc_startup_nrf52_split.s\n\n\nnewtmgr and split Images\n\n\nnewtmgr has support for split images.\n\n\nnewtmgr image list2\n lists
  the current images in the flash.  Its clear from the output that some images are non-bootable.  For example.\n\n\nImages:\n slot=1\n    version=1.2.3\n    bootable=true\n    hash=55e254f133bedf640fc7be7b5bfe3e5fb387cf5e29ecd0d4ea02b5ba617e27e0\n slot=2\n    version=1.2.3\n    bootable=false\n    hash=1697bd1658f7e902e0191094c5f729446c9dd790c00a58e2bb37f56d6fcb72fe\n\n\n\n\n\nThe bootloader is unable to boot split app images (of course it can boot the loader images), so do not use the \nboot2\n command to instruct mynewt to boot slot 2.  \n\n\nInstead, use the new \nsplit status\n command to see the status of split images and to set their boot status.  The split status command with no arguments returns status of the split image.  The Split Value tells the loader how to boot the split app. Options are:\n\n\n\n\nnone\n Don't boot the split application. Just remain running in the loader.\n\n\ntest\n Boot the split application, but revert back to the loader on the next reset.\n\n\nrun\n
  Boot the split application.\n\n\n\n\nThe split status command also verified the hash of the split application (using the hash of the loader as shown above) and returns the status of the check (matching or non-matching).\n\n\nnewtmgr -c connection split status \n  Split value is none\n  Split status is matching\n\n\n\n\n\nWhen the split image application is running, the active hash in the boot2 command will match the hash of the split application (in slot 2). For example:\n\n\nprompt$ newtmgr -c foo1 image boot2\n   Test image: 55e254f133bedf640fc7be7b5bfe3e5fb387cf5e29ecd0d4ea02b5ba617e27e0\n   Main image: 55e254f133bedf640fc7be7b5bfe3e5fb387cf5e29ecd0d4ea02b5ba617e27e0\n   Active img: 1697bd1658f7e902e0191094c5f729446c9dd790c00a58e2bb37f56d6fcb72fe\n\n\n\n\n\nUpgrading a split image with newtmgr\n\n\nWhen running via newt, the \nnewt load\n command will load both parts of a split image, the loader and application.\n\n\nWhen running via newtmgr a sequence of commands is required to
  upgrade.  Assuming you are running the split app in \nrun\n mode the following sequence will upgrade\n\n\n\n\nnewtmgr split status none\n\n\nnewtmgr reboot\n\n\nnewtmgr image upload \n\n\nnewtmgr image boot2 \n\n\nnewtmgr reboot\n\n\nnewtmgr image upload \n\n\nnewtmgr split status test\n\n\nnewtmgr reboot\n\n\nnewtmgr boot2 (check status to ensure new app is running)\n\n\nnewtmgr split status run\n\n\n\n\nThis upgrade is robust.  In all steps there is a loader image that is capable of upgrading (or reverting) images.", 
+            "title": "toc"
+        }, 
+        {
+            "location": "/os/modules/split/split/#split-images", 
+            "text": "", 
+            "title": "Split Images"
+        }, 
+        {
+            "location": "/os/modules/split/split/#description", 
+            "text": "Split images allow the user to build the application content separate from the library content by splitting an application into two pieces:   A \"loader\" which contains a separate application that can perform upgrades and manage split images. The \"loader\" resides in slot 1.  A \"split app\" which contains the main application content and references the libraries in the loader by static linkage. The \"split app\" resides in slot 2.", 
+            "title": "Description"
+        }, 
+        {
+            "location": "/os/modules/split/split/#goals", 
+            "text": "The goal of split images is to allow a larger application to run along with large components of mynewt such as  nimble BLE stack  and  neutron flash file system(nffs) .", 
+            "title": "Goals"
+        }, 
+        {
+            "location": "/os/modules/split/split/#concept", 
+            "text": "In a typical mynewt application, an application is contained wholly within an image slot.  Typically there are at least two image slots since the image runs from one slot while uploading new code into the second slot.  Each image is capable of erasing and uploading another image.  Each image is completely stand-alone; that is, each image contains all of the libraries and components that it needs.     On a typical 256 kbyte flash, a flash layout might look like this:     Name  Size      bootloader  16 k    image slot 1  108 k    image slot 2  108 k    scratch  8 k    Flash file system  16 k     Now, suppose the desired image contains:     Package  Size      nimble  69 k    os  6 k    logging  3 k    imagemgr  3 k    config  3 k    nffs  15 k    newtmgr  7 k     which total 106k.  With an image slot size of 108k this leaves only a small amount of code space remaining for the application.  However, we can see that these packages contain everything you need to upgra
 de and configure, so if we build a stand-alone loader with these components, we can build the app as a split image and get the entire second image slot to store application code and constant data.", 
+            "title": "Concept"
+        }, 
+        {
+            "location": "/os/modules/split/split/#when-do-i-use-split-images", 
+            "text": "If your application fits into the available image slots, there is no advantage to using split images.  In general, split images are harder to debug and more complicated to upload. However for a larger application, there may not be enough flash space to have two copies of the entire application. This is when split image becomes necessary.", 
+            "title": "When do I use split images"
+        }, 
+        {
+            "location": "/os/modules/split/split/#how-do-i-tell-newt-i-am-building-a-split-image", 
+            "text": "Newt looks for the variable  loader  in your target file. If it finds  loader  variable, it will build a split image.  For example,   targets/app\n    app=@apache-mynewt-core/apps/splitty\n    loader=@apache-mynewt-core/apps/slinky\n    bsp=@apache-mynewt-core/hw/bsp/nrf52dk\n    build_profile=optimized  shows an application called splitty which uses slinky as its loader.", 
+            "title": "How do I tell Newt I am building a split image?"
+        }, 
+        {
+            "location": "/os/modules/split/split/#platforms", 
+            "text": "Split image requires BSP support.  The following BSPs support split images:   nrf52dk", 
+            "title": "Platforms"
+        }, 
+        {
+            "location": "/os/modules/split/split/#loaders", 
+            "text": "The following applications have been enabled as loaders. You may choose to build your own loader application, and these can serve as samples.   @apache-mynewt-core/apps/slinky  @apache-mynewt-core/apps/bleprph", 
+            "title": "Loaders"
+        }, 
+        {
+            "location": "/os/modules/split/split/#split-apps", 
+            "text": "The following applications have been enabled as split applications. If you choose to build your own split application these can serve as samples. Note that slinky can be either a loader image or a split app image.   @apache-mynewt-core/apps/slinky  @apache-mynewt-core/apps/splitty", 
+            "title": "Split Apps"
+        }, 
+        {
+            "location": "/os/modules/split/split/#theory-of-operation", 
+            "text": "A split image is built as follows:  First newt builds the  app  and  loader  images separately to ensure they are consistent (no errors) and to generate elf files which can inform newt of the symbols used by each part.  Then newt collects the symbols used by both  app  and  loader  in two ways.  It collects the set of symbols from the  .elf  files. It also collects all the possible symbols from the  .a  files for each application.  Newt builds the set of packages that the two applications share.  It ensures that all the symbols used in those packages are matching.  NOTE: because of features and #ifdefs, its possible for the two package to have symbols that are not the same.  In this case newt generates an error and will not build a split image.    Then newt creates the list of symbols that the two applications share from those packages (using the .elf files).  Newt re-links the loader to ensure all of these symbols are present in the loader application (by forci
 ng the linker to include them in the  .elf ).    Newt builds a special copy of the loader.elf with only these symbols (and the handful of symbols discussed in the linking section above).  Finally, newt links the application, replacing the common .a libraries with the special loader.elf image during the link.", 
+            "title": "Theory of Operation"
+        }, 
+        {
+            "location": "/os/modules/split/split/#design", 
+            "text": "", 
+            "title": "Design"
+        }, 
+        {
+            "location": "/os/modules/split/split/#bootloader", 
+            "text": "The bootloader has been modified to support \"non bootable\" images like split app images.  A flag in the image header denotes the image as \"non-bootable\". When this flag is set, the bootloader will not boot the split app image, nor will it copy it to the slot 1 location. Loader images are bootable, split app images are not.", 
+            "title": "Bootloader"
+        }, 
+        {
+            "location": "/os/modules/split/split/#newt", 
+            "text": "Newt builds a split image when the token  loader=@apache-mynewt-core/apps/slinky  is present in the target file.  Newt has a  Builder  object that is responsible for building an image.  This features a  targetBuilder  object that contains two builders (one for the app and one for the loader).  The  Builder  object has been expanded to include options for building as part of a split image.  Ability to specify the linker file during the link  Ability to specify a set of keep_symbols during the link  Newt commands like download, size, create-image have been expanded to perform operations twice (once for loader and once for app) if the loader target is present.  During normal single-image builds, the  targetBuilder  initializes and builds the application  builder . During the split image build, the  targetBuilder  performs the steps outlined in the section above using the two  builder s for the loader and app.  Special symbol and link features are designed as follow
 s:   Newt uses objdump to parse the symbol maps in the  .a  and  .elf  files.   Newt uses the  --undefined=  option of the linker to force the loader to keep symbols used by the app (but not used by the linker)  Newt uses objcopy with the  -K  (keep) option when building the special linker  .elf .  Newt uses the  --just-symbols  option of the linker to link against the loader  .elf  file.", 
+            "title": "Newt"
+        }, 
+        {
+            "location": "/os/modules/split/split/#newt-create-image", 
+            "text": "Create image uses two different methods to compute the image hash for standard and split images.  For split images, the hash is computed starting with the 32-byte hash of the loader, then continuing with the hashing algorithm used by the standard application.  This ensures that the split app can be \"validated\" against a loader image specifically.", 
+            "title": "newt create-image"
+        }, 
+        {
+            "location": "/os/modules/split/split/#newt-errors", 
+            "text": "Newt has several new build errors when building split images.     Linker script undefined.  If the BSP for your application does not define a split image linker script the build will fail.   If newt finds that the same library (for example libs/os) has a different implementaiton in the loader and app, it will generate an error and fail to build.  These differences can arise when  #ifdef  or features are included in one app and not the other.  For example, it the loader includes  libs/console/stubs  and the app includes  libs/console/full  this may change implementations of certain functions within other packages.", 
+            "title": "newt errors"
+        }, 
+        {
+            "location": "/os/modules/split/split/#image-manifest", 
+            "text": "newt builds a single manifest for split images, adding extra tags to the manifest when the image is a split image.     loader :  slinky.img ,\n   loader_hash :  55e254f133bedf640fc7be7b5bfe3e5fb387cf5e29ecd0d4ea02b5ba617e27e0 ,\n     loader_pkgs : [\n        ...\n        ]  The manifest lists packages in both the loader and app.  The app package list only contains those packages that reside in the app image itself.", 
+            "title": "Image manifest"
+        }, 
+        {
+            "location": "/os/modules/split/split/#libsbootutil", 
+            "text": "Bootutil has been expanded to include a function that looks for a split app image in slot 2, verifies that it matches the loader image in slot 1 and then fetches the entry information for the split app.", 
+            "title": "libs/bootutil"
+        }, 
+        {
+            "location": "/os/modules/split/split/#libssplit", 
+            "text": "A small split image library was created to provide newtmgr commands for split image and to hold the configuration for split image. See newtmgr below for details.  It also contains the function used by a loader to validate and boot a split image.", 
+            "title": "libs/split"
+        }, 
+        {
+            "location": "/os/modules/split/split/#appsslinky", 
+            "text": "A sample app that can be built as a split image with slinky.", 
+            "title": "apps/slinky"
+        }, 
+        {
+            "location": "/os/modules/split/split/#tips-when-building-split-images", 
+            "text": "To be added", 
+            "title": "Tips when Building Split images"
+        }, 
+        {
+            "location": "/os/modules/split/split/#adding-bsp-support-for-split-images", 
+            "text": "A BSP needs additional components to be \"split image ready\".  The split image requires a special linker script. The split image needs to run from the second image partition (since it's using the loader library that is linked to be placed in the first partition).  It needs to reserve space for RAM used by the loader.  It also does not need to include the vector table (just a bit of it).  The startup of the split image is different than a typical image.  It needs to copy  .data  from the loader image, and zero the loader image bss.  For this, it must reference symbols defined in the linker script of the loader. It has a special entry symbol that differentiates it from the entry symbol in the loader application.    Several of the bsp scripts need to handle additional agruments to deal with the two images produced by newt when building split images - mainly download and debug.  Add the following components to enable your BSP for split images:   A split image linke
 r file  A startup file for the split image  A property in the pkg.yml file to tell newt what linker script to use for partition 2 images.  The property is defined as  pkg.part2linkerscript: \"split-nrf52dk.ld  for example.  Modified download script   An example can be found in the  /hw/bsp/nrf52dk", 
+            "title": "Adding BSP support for split images"
+        }, 
+        {
+            "location": "/os/modules/split/split/#split-image-linker-script", 
+            "text": "The split image linker script must have the following.  The split linker must define the entry symbol as Reset_Handler_split.   For example:  ENTRY(Reset_Handler_split)  The split linker must define the first two words in the vector table (initial SP and Reset Vector). The additional vector entries are part of the loader. The bootloader accesses these entries at the beginning of the image slot (first 2 words). For example:      .text :\n    {\n        __split_isr_vector_start = .;\n        KEEP(*(.isr_vector_split))\n        __split_isr_vector_end = .;\n        ...       The split linker must ensure that it doesn't overwrite the BSS and DATA sections of the loader (they are both using RAM).  Note, the two apps don't run at the same time, but the loader has global data that its libraries use.  This cannot be overwritten by the application. An example linker section that accomplishes this can be found in  /hw/bsp/nrf52dk/split-nrf52dk.ld . When linking against the
  loader, the loader exports the following symbosl which can be used by the split app code:   __HeapBase_loader  __bss_start___loader  __bss_end___loader  __etext_loader  __data_start___loader  __data_end___loader   The split app linker can use  __HeapBase_loader  to skip RAM used by the loader as follows.      /* save RAM used by the split image. This assumes that \n     * the loader uses all the RAM up to its HeapBase  */\n    .loader_ram_contents :\n    {\n        _loader_ram_start = .;\n\n    /* this symbol comes from the loader linker */\n    . = . + (ABSOLUTE(__HeapBase_loader) - _loader_ram_start);\n        _loader_ram_end = .;\n    }   RAM", 
+            "title": "split image linker script"
+        }, 
+        {
+            "location": "/os/modules/split/split/#split-image-startup-code", 
+            "text": "The split application needs separate startup code to intialize the split image before running main.  THe split image is specially linked so that _start and main are included individually for the loader and split app.  The split app startup code must have the following.   A definition of the split image vector table (first two words).   The entry point function to start the code  Reset_Handler_split  Code that copies the .data section for the loader from Flash to RAM  Code that zeros the .bss section for the loader.  Code that calls _sbrkInit to set the heap pointers for the application   An example can be found in the  /hw/bsp/nrf52dk/src/arch/cortex_m4/gcc_startup_nrf52_split.s", 
+            "title": "split image startup code"
+        }, 
+        {
+            "location": "/os/modules/split/split/#newtmgr-and-split-images", 
+            "text": "newtmgr has support for split images.  newtmgr image list2  lists the current images in the flash.  Its clear from the output that some images are non-bootable.  For example.  Images:\n slot=1\n    version=1.2.3\n    bootable=true\n    hash=55e254f133bedf640fc7be7b5bfe3e5fb387cf5e29ecd0d4ea02b5ba617e27e0\n slot=2\n    version=1.2.3\n    bootable=false\n    hash=1697bd1658f7e902e0191094c5f729446c9dd790c00a58e2bb37f56d6fcb72fe  The bootloader is unable to boot split app images (of course it can boot the loader images), so do not use the  boot2  command to instruct mynewt to boot slot 2.    Instead, use the new  split status  command to see the status of split images and to set their boot status.  The split status command with no arguments returns status of the split image.  The Split Value tells the loader how to boot the split app. Options are:   none  Don't boot the split application. Just remain running in the loader.  test  Boot the split application, but reve
 rt back to the loader on the next reset.  run  Boot the split application.   The split status command also verified the hash of the split application (using the hash of the loader as shown above) and returns the status of the check (matching or non-matching).  newtmgr -c connection split status \n  Split value is none\n  Split status is matching  When the split image application is running, the active hash in the boot2 command will match the hash of the split application (in slot 2). For example:  prompt$ newtmgr -c foo1 image boot2\n   Test image: 55e254f133bedf640fc7be7b5bfe3e5fb387cf5e29ecd0d4ea02b5ba617e27e0\n   Main image: 55e254f133bedf640fc7be7b5bfe3e5fb387cf5e29ecd0d4ea02b5ba617e27e0\n   Active img: 1697bd1658f7e902e0191094c5f729446c9dd790c00a58e2bb37f56d6fcb72fe", 
+            "title": "newtmgr and split Images"
+        }, 
+        {
+            "location": "/os/modules/split/split/#upgrading-a-split-image-with-newtmgr", 
+            "text": "When running via newt, the  newt load  command will load both parts of a split image, the loader and application.  When running via newtmgr a sequence of commands is required to upgrade.  Assuming you are running the split app in  run  mode the following sequence will upgrade   newtmgr split status none  newtmgr reboot  newtmgr image upload   newtmgr image boot2   newtmgr reboot  newtmgr image upload   newtmgr split status test  newtmgr reboot  newtmgr boot2 (check status to ensure new app is running)  newtmgr split status run   This upgrade is robust.  In all steps there is a loader image that is capable of upgrading (or reverting) images.", 
+            "title": "Upgrading a split image with newtmgr"
+        }, 
+        {
             "location": "/os/modules/bootloader/bootloader/", 
             "text": "Bootloader\n\n\nInsert synopsis here\n\n\nDescription\n\n\nDescribe module here, special features, how pieces fit together etc.\n\n\nData structures\n\n\nReplace this with the list of data structures used, why, any neat features\n\n\nList of Functions\n\n\n\n\nThe functions available in bootloader are:\n\n\n\n\nboot_build_status\n\n\nboot_build_status_one\n\n\nboot_clear_status\n\n\nboot_copy_area\n\n\nboot_copy_image\n\n\nboot_erase_area\n\n\nboot_fill_slot\n\n\nboot_find_image_area_idx\n\n\nboot_find_image_part\n\n\nboot_find_image_slot\n\n\nboot_go\n\n\nboot_init_flash\n\n\nboot_move_area\n\n\nboot_read_image_header\n\n\nboot_read_image_headers\n\n\nboot_read_status\n\n\nboot_select_image_slot\n\n\nboot_slot_addr\n\n\nboot_slot_to_area_idx\n\n\nboot_swap_areas\n\n\nboot_vect_delete_main\n\n\nboot_vect_delete_test\n\n\nboot_vect_read_main\n\n\nboot_vect_read_one\n\n\nboot_vect_read_test\n\n\nboot_write_status", 
             "title": "toc"

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/callout/callout/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/callout/callout/index.html b/develop/os/core_os/callout/callout/index.html
index 4350996..5614f16 100644
--- a/develop/os/core_os/callout/callout/index.html
+++ b/develop/os/core_os/callout/callout/index.html
@@ -427,6 +427,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/callout/os_callout_func_init/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/callout/os_callout_func_init/index.html b/develop/os/core_os/callout/os_callout_func_init/index.html
index a5ddc11..30d67bb 100644
--- a/develop/os/core_os/callout/os_callout_func_init/index.html
+++ b/develop/os/core_os/callout/os_callout_func_init/index.html
@@ -471,6 +471,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/callout/os_callout_init/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/callout/os_callout_init/index.html b/develop/os/core_os/callout/os_callout_init/index.html
index 1721927..aef887b 100644
--- a/develop/os/core_os/callout/os_callout_init/index.html
+++ b/develop/os/core_os/callout/os_callout_init/index.html
@@ -471,6 +471,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/callout/os_callout_queued/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/callout/os_callout_queued/index.html b/develop/os/core_os/callout/os_callout_queued/index.html
index 6a04390..f1438ae 100644
--- a/develop/os/core_os/callout/os_callout_queued/index.html
+++ b/develop/os/core_os/callout/os_callout_queued/index.html
@@ -471,6 +471,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/callout/os_callout_reset/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/callout/os_callout_reset/index.html b/develop/os/core_os/callout/os_callout_reset/index.html
index 56ed767..35ac3f1 100644
--- a/develop/os/core_os/callout/os_callout_reset/index.html
+++ b/develop/os/core_os/callout/os_callout_reset/index.html
@@ -471,6 +471,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/callout/os_callout_stop/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/callout/os_callout_stop/index.html b/develop/os/core_os/callout/os_callout_stop/index.html
index c940386..bc04e42 100644
--- a/develop/os/core_os/callout/os_callout_stop/index.html
+++ b/develop/os/core_os/callout/os_callout_stop/index.html
@@ -471,6 +471,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/context_switch/context_switch/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/context_switch/context_switch/index.html b/develop/os/core_os/context_switch/context_switch/index.html
index f023520..7693b37 100644
--- a/develop/os/core_os/context_switch/context_switch/index.html
+++ b/develop/os/core_os/context_switch/context_switch/index.html
@@ -427,6 +427,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/context_switch/os_arch_ctx_sw/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/context_switch/os_arch_ctx_sw/index.html b/develop/os/core_os/context_switch/os_arch_ctx_sw/index.html
index 1dbd2ee..a1f8cd6 100644
--- a/develop/os/core_os/context_switch/os_arch_ctx_sw/index.html
+++ b/develop/os/core_os/context_switch/os_arch_ctx_sw/index.html
@@ -519,6 +519,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/context_switch/os_sched/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/context_switch/os_sched/index.html b/develop/os/core_os/context_switch/os_sched/index.html
index b03a8e1..3278a8a 100644
--- a/develop/os/core_os/context_switch/os_sched/index.html
+++ b/develop/os/core_os/context_switch/os_sched/index.html
@@ -519,6 +519,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/context_switch/os_sched_ctx_sw_hook/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/context_switch/os_sched_ctx_sw_hook/index.html b/develop/os/core_os/context_switch/os_sched_ctx_sw_hook/index.html
index 0517b16..e2fac41 100644
--- a/develop/os/core_os/context_switch/os_sched_ctx_sw_hook/index.html
+++ b/develop/os/core_os/context_switch/os_sched_ctx_sw_hook/index.html
@@ -519,6 +519,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/context_switch/os_sched_get_current_task/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/context_switch/os_sched_get_current_task/index.html b/develop/os/core_os/context_switch/os_sched_get_current_task/index.html
index f813260..22e197d 100644
--- a/develop/os/core_os/context_switch/os_sched_get_current_task/index.html
+++ b/develop/os/core_os/context_switch/os_sched_get_current_task/index.html
@@ -519,6 +519,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/context_switch/os_sched_insert/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/context_switch/os_sched_insert/index.html b/develop/os/core_os/context_switch/os_sched_insert/index.html
index 314c77c..c1f869a 100644
--- a/develop/os/core_os/context_switch/os_sched_insert/index.html
+++ b/develop/os/core_os/context_switch/os_sched_insert/index.html
@@ -519,6 +519,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/context_switch/os_sched_next_task/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/context_switch/os_sched_next_task/index.html b/develop/os/core_os/context_switch/os_sched_next_task/index.html
index ce38521..6bf28a9 100644
--- a/develop/os/core_os/context_switch/os_sched_next_task/index.html
+++ b/develop/os/core_os/context_switch/os_sched_next_task/index.html
@@ -519,6 +519,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/context_switch/os_sched_os_timer_exp/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/context_switch/os_sched_os_timer_exp/index.html b/develop/os/core_os/context_switch/os_sched_os_timer_exp/index.html
index 8e51a36..4b561ad 100644
--- a/develop/os/core_os/context_switch/os_sched_os_timer_exp/index.html
+++ b/develop/os/core_os/context_switch/os_sched_os_timer_exp/index.html
@@ -519,6 +519,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/context_switch/os_sched_resort/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/context_switch/os_sched_resort/index.html b/develop/os/core_os/context_switch/os_sched_resort/index.html
index 286d509..38a24c8 100644
--- a/develop/os/core_os/context_switch/os_sched_resort/index.html
+++ b/develop/os/core_os/context_switch/os_sched_resort/index.html
@@ -519,6 +519,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/context_switch/os_sched_set_current_task/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/context_switch/os_sched_set_current_task/index.html b/develop/os/core_os/context_switch/os_sched_set_current_task/index.html
index 15a45d9..be96ca6 100644
--- a/develop/os/core_os/context_switch/os_sched_set_current_task/index.html
+++ b/develop/os/core_os/context_switch/os_sched_set_current_task/index.html
@@ -519,6 +519,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/context_switch/os_sched_sleep/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/context_switch/os_sched_sleep/index.html b/develop/os/core_os/context_switch/os_sched_sleep/index.html
index 1565410..af70243 100644
--- a/develop/os/core_os/context_switch/os_sched_sleep/index.html
+++ b/develop/os/core_os/context_switch/os_sched_sleep/index.html
@@ -519,6 +519,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/context_switch/os_sched_wakeup/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/context_switch/os_sched_wakeup/index.html b/develop/os/core_os/context_switch/os_sched_wakeup/index.html
index 1c06812..1a37014 100644
--- a/develop/os/core_os/context_switch/os_sched_wakeup/index.html
+++ b/develop/os/core_os/context_switch/os_sched_wakeup/index.html
@@ -519,6 +519,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/event_queue/event_queue/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/event_queue/event_queue/index.html b/develop/os/core_os/event_queue/event_queue/index.html
index 0eed368..26a5d70 100644
--- a/develop/os/core_os/event_queue/event_queue/index.html
+++ b/develop/os/core_os/event_queue/event_queue/index.html
@@ -427,6 +427,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/event_queue/os_eventq_get/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/event_queue/os_eventq_get/index.html b/develop/os/core_os/event_queue/os_eventq_get/index.html
index fff44f5..9679f9d 100644
--- a/develop/os/core_os/event_queue/os_eventq_get/index.html
+++ b/develop/os/core_os/event_queue/os_eventq_get/index.html
@@ -463,6 +463,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/event_queue/os_eventq_init/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/event_queue/os_eventq_init/index.html b/develop/os/core_os/event_queue/os_eventq_init/index.html
index 4fd5976..db5d0ea 100644
--- a/develop/os/core_os/event_queue/os_eventq_init/index.html
+++ b/develop/os/core_os/event_queue/os_eventq_init/index.html
@@ -463,6 +463,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/event_queue/os_eventq_put/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/event_queue/os_eventq_put/index.html b/develop/os/core_os/event_queue/os_eventq_put/index.html
index 7ad3114..84f132e 100644
--- a/develop/os/core_os/event_queue/os_eventq_put/index.html
+++ b/develop/os/core_os/event_queue/os_eventq_put/index.html
@@ -463,6 +463,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/event_queue/os_eventq_remove/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/event_queue/os_eventq_remove/index.html b/develop/os/core_os/event_queue/os_eventq_remove/index.html
index 4037aff..0617e1a 100644
--- a/develop/os/core_os/event_queue/os_eventq_remove/index.html
+++ b/develop/os/core_os/event_queue/os_eventq_remove/index.html
@@ -463,6 +463,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/heap/heap/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/heap/heap/index.html b/develop/os/core_os/heap/heap/index.html
index 6247979..2ad6b4c 100644
--- a/develop/os/core_os/heap/heap/index.html
+++ b/develop/os/core_os/heap/heap/index.html
@@ -427,6 +427,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/heap/os_free/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/heap/os_free/index.html b/develop/os/core_os/heap/os_free/index.html
index 10d4fa3..95c276e 100644
--- a/develop/os/core_os/heap/os_free/index.html
+++ b/develop/os/core_os/heap/os_free/index.html
@@ -455,6 +455,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/heap/os_malloc/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/heap/os_malloc/index.html b/develop/os/core_os/heap/os_malloc/index.html
index a9dcda8..1bae21b 100644
--- a/develop/os/core_os/heap/os_malloc/index.html
+++ b/develop/os/core_os/heap/os_malloc/index.html
@@ -455,6 +455,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/heap/os_realloc/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/heap/os_realloc/index.html b/develop/os/core_os/heap/os_realloc/index.html
index eda2616..786d159 100644
--- a/develop/os/core_os/heap/os_realloc/index.html
+++ b/develop/os/core_os/heap/os_realloc/index.html
@@ -455,6 +455,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/OS_MBUF_DATA/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/OS_MBUF_DATA/index.html b/develop/os/core_os/mbuf/OS_MBUF_DATA/index.html
index 5807aa0..d8e182a 100644
--- a/develop/os/core_os/mbuf/OS_MBUF_DATA/index.html
+++ b/develop/os/core_os/mbuf/OS_MBUF_DATA/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/OS_MBUF_LEADINGSPACE/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/OS_MBUF_LEADINGSPACE/index.html b/develop/os/core_os/mbuf/OS_MBUF_LEADINGSPACE/index.html
index 87c5fb8..9759db0 100644
--- a/develop/os/core_os/mbuf/OS_MBUF_LEADINGSPACE/index.html
+++ b/develop/os/core_os/mbuf/OS_MBUF_LEADINGSPACE/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/OS_MBUF_PKTHDR/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/OS_MBUF_PKTHDR/index.html b/develop/os/core_os/mbuf/OS_MBUF_PKTHDR/index.html
index c430150..f7f1004 100644
--- a/develop/os/core_os/mbuf/OS_MBUF_PKTHDR/index.html
+++ b/develop/os/core_os/mbuf/OS_MBUF_PKTHDR/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/OS_MBUF_PKTHDR_TO_MBUF/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/OS_MBUF_PKTHDR_TO_MBUF/index.html b/develop/os/core_os/mbuf/OS_MBUF_PKTHDR_TO_MBUF/index.html
index 0f309a7..de78011 100644
--- a/develop/os/core_os/mbuf/OS_MBUF_PKTHDR_TO_MBUF/index.html
+++ b/develop/os/core_os/mbuf/OS_MBUF_PKTHDR_TO_MBUF/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/OS_MBUF_PKTLEN/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/OS_MBUF_PKTLEN/index.html b/develop/os/core_os/mbuf/OS_MBUF_PKTLEN/index.html
index 8a57efc..b31fb1a 100644
--- a/develop/os/core_os/mbuf/OS_MBUF_PKTLEN/index.html
+++ b/develop/os/core_os/mbuf/OS_MBUF_PKTLEN/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/OS_MBUF_TRAILINGSPACE/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/OS_MBUF_TRAILINGSPACE/index.html b/develop/os/core_os/mbuf/OS_MBUF_TRAILINGSPACE/index.html
index 42e6fad..28e04aa 100644
--- a/develop/os/core_os/mbuf/OS_MBUF_TRAILINGSPACE/index.html
+++ b/develop/os/core_os/mbuf/OS_MBUF_TRAILINGSPACE/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/OS_MBUF_USRHDR/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/OS_MBUF_USRHDR/index.html b/develop/os/core_os/mbuf/OS_MBUF_USRHDR/index.html
index 8f9c088..ca50149 100644
--- a/develop/os/core_os/mbuf/OS_MBUF_USRHDR/index.html
+++ b/develop/os/core_os/mbuf/OS_MBUF_USRHDR/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/OS_MBUF_USRHDR_LEN/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/OS_MBUF_USRHDR_LEN/index.html b/develop/os/core_os/mbuf/OS_MBUF_USRHDR_LEN/index.html
index aed7b28..49504f3 100644
--- a/develop/os/core_os/mbuf/OS_MBUF_USRHDR_LEN/index.html
+++ b/develop/os/core_os/mbuf/OS_MBUF_USRHDR_LEN/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/mbuf/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/mbuf/index.html b/develop/os/core_os/mbuf/mbuf/index.html
index b8123f6..25cb7b1 100644
--- a/develop/os/core_os/mbuf/mbuf/index.html
+++ b/develop/os/core_os/mbuf/mbuf/index.html
@@ -464,6 +464,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/os_mbuf_adj/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/os_mbuf_adj/index.html b/develop/os/core_os/mbuf/os_mbuf_adj/index.html
index a20de9c..c8d8a41 100644
--- a/develop/os/core_os/mbuf/os_mbuf_adj/index.html
+++ b/develop/os/core_os/mbuf/os_mbuf_adj/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/os_mbuf_append/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/os_mbuf_append/index.html b/develop/os/core_os/mbuf/os_mbuf_append/index.html
index 35fe7cb..9558cd2 100644
--- a/develop/os/core_os/mbuf/os_mbuf_append/index.html
+++ b/develop/os/core_os/mbuf/os_mbuf_append/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/os_mbuf_concat/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/os_mbuf_concat/index.html b/develop/os/core_os/mbuf/os_mbuf_concat/index.html
index 06c1b69..5ed6061 100644
--- a/develop/os/core_os/mbuf/os_mbuf_concat/index.html
+++ b/develop/os/core_os/mbuf/os_mbuf_concat/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/os_mbuf_copydata/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/os_mbuf_copydata/index.html b/develop/os/core_os/mbuf/os_mbuf_copydata/index.html
index d60f5ab..1c14367 100644
--- a/develop/os/core_os/mbuf/os_mbuf_copydata/index.html
+++ b/develop/os/core_os/mbuf/os_mbuf_copydata/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/os_mbuf_copyinto/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/os_mbuf_copyinto/index.html b/develop/os/core_os/mbuf/os_mbuf_copyinto/index.html
index 6cca946..c2877ff 100644
--- a/develop/os/core_os/mbuf/os_mbuf_copyinto/index.html
+++ b/develop/os/core_os/mbuf/os_mbuf_copyinto/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/os_mbuf_dup/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/os_mbuf_dup/index.html b/develop/os/core_os/mbuf/os_mbuf_dup/index.html
index e2e6b75..7a2e608 100644
--- a/develop/os/core_os/mbuf/os_mbuf_dup/index.html
+++ b/develop/os/core_os/mbuf/os_mbuf_dup/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/os_mbuf_extend/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/os_mbuf_extend/index.html b/develop/os/core_os/mbuf/os_mbuf_extend/index.html
index 91095bd..07c613c 100644
--- a/develop/os/core_os/mbuf/os_mbuf_extend/index.html
+++ b/develop/os/core_os/mbuf/os_mbuf_extend/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/os_mbuf_free_chain/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/os_mbuf_free_chain/index.html b/develop/os/core_os/mbuf/os_mbuf_free_chain/index.html
index 09c025b..821fb15 100644
--- a/develop/os/core_os/mbuf/os_mbuf_free_chain/index.html
+++ b/develop/os/core_os/mbuf/os_mbuf_free_chain/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/os_mbuf_get/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/os_mbuf_get/index.html b/develop/os/core_os/mbuf/os_mbuf_get/index.html
index 2348a58..fa187bf 100644
--- a/develop/os/core_os/mbuf/os_mbuf_get/index.html
+++ b/develop/os/core_os/mbuf/os_mbuf_get/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/os_mbuf_get_pkthdr/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/os_mbuf_get_pkthdr/index.html b/develop/os/core_os/mbuf/os_mbuf_get_pkthdr/index.html
index 7b9ed07..e29f214 100644
--- a/develop/os/core_os/mbuf/os_mbuf_get_pkthdr/index.html
+++ b/develop/os/core_os/mbuf/os_mbuf_get_pkthdr/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/os_mbuf_memcmp/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/os_mbuf_memcmp/index.html b/develop/os/core_os/mbuf/os_mbuf_memcmp/index.html
index 0a4776f..f2e0e90 100644
--- a/develop/os/core_os/mbuf/os_mbuf_memcmp/index.html
+++ b/develop/os/core_os/mbuf/os_mbuf_memcmp/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/os_mbuf_off/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/os_mbuf_off/index.html b/develop/os/core_os/mbuf/os_mbuf_off/index.html
index 08904c0..c228e61 100644
--- a/develop/os/core_os/mbuf/os_mbuf_off/index.html
+++ b/develop/os/core_os/mbuf/os_mbuf_off/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/os_mbuf_pool_init/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/os_mbuf_pool_init/index.html b/develop/os/core_os/mbuf/os_mbuf_pool_init/index.html
index ec666d0..511cc25 100644
--- a/develop/os/core_os/mbuf/os_mbuf_pool_init/index.html
+++ b/develop/os/core_os/mbuf/os_mbuf_pool_init/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/os_mbuf_prepend/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/os_mbuf_prepend/index.html b/develop/os/core_os/mbuf/os_mbuf_prepend/index.html
index 8480e56..b891607 100644
--- a/develop/os/core_os/mbuf/os_mbuf_prepend/index.html
+++ b/develop/os/core_os/mbuf/os_mbuf_prepend/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/mbuf/os_mbuf_pullup/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/mbuf/os_mbuf_pullup/index.html b/develop/os/core_os/mbuf/os_mbuf_pullup/index.html
index 9cbf217..331dc67 100644
--- a/develop/os/core_os/mbuf/os_mbuf_pullup/index.html
+++ b/develop/os/core_os/mbuf/os_mbuf_pullup/index.html
@@ -652,6 +652,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/memory_pool/OS_MEMPOOL_BYTES/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/memory_pool/OS_MEMPOOL_BYTES/index.html b/develop/os/core_os/memory_pool/OS_MEMPOOL_BYTES/index.html
index ec22c03..32463d9 100644
--- a/develop/os/core_os/memory_pool/OS_MEMPOOL_BYTES/index.html
+++ b/develop/os/core_os/memory_pool/OS_MEMPOOL_BYTES/index.html
@@ -471,6 +471,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>
   
   

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/61c05ad2/develop/os/core_os/memory_pool/OS_MEMPOOL_SIZE/index.html
----------------------------------------------------------------------
diff --git a/develop/os/core_os/memory_pool/OS_MEMPOOL_SIZE/index.html b/develop/os/core_os/memory_pool/OS_MEMPOOL_SIZE/index.html
index 842c25e..130a23e 100644
--- a/develop/os/core_os/memory_pool/OS_MEMPOOL_SIZE/index.html
+++ b/develop/os/core_os/memory_pool/OS_MEMPOOL_SIZE/index.html
@@ -471,6 +471,17 @@
                 
   
   
+    <li ><a href="../../../modules/split/split/">Split Images</a>
+  
+  
+    </li>
+
+              
+          
+              
+                
+  
+  
     <li ><a href="../../../modules/bootloader/bootloader/">Bootloader</a>