You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mynewt.apache.org by vi...@apache.org on 2017/02/24 19:38:21 UTC

[26/50] incubator-mynewt-core git commit: merge from develop, and update to support new sysinit

merge from develop, and update to support new sysinit


Project: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/commit/2681044e
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/tree/2681044e
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/diff/2681044e

Branch: refs/heads/develop
Commit: 2681044e84b6446a1a354278d8f5ca69bf6d447d
Parents: 6247b5a 71f7d65
Author: Sterling Hughes <st...@runtime.io>
Authored: Mon Jan 23 19:01:08 2017 -0800
Committer: Sterling Hughes <st...@runtime.io>
Committed: Mon Jan 23 19:01:08 2017 -0800

----------------------------------------------------------------------
 apps/blecent/pkg.yml                            |     4 +-
 apps/blecent/src/blecent.h                      |    12 +-
 apps/blecent/src/main.c                         |    63 +-
 apps/blecent/src/misc.c                         |    26 +-
 apps/blecent/src/peer.c                         |    20 +-
 apps/blecent/syscfg.yml                         |     4 +
 apps/blehci/pkg.yml                             |     2 +-
 apps/blehci/src/main.c                          |     9 +-
 apps/blehci/syscfg.yml                          |    24 +
 apps/bleprph/pkg.yml                            |     6 +-
 apps/bleprph/src/gatt_svr.c                     |   172 +-
 apps/bleprph/src/main.c                         |    64 +-
 apps/bleprph/syscfg.yml                         |     4 +
 apps/bleprph_oic/pkg.yml                        |     4 +-
 apps/bleprph_oic/src/gatt_svr.c                 |    79 +-
 apps/bleprph_oic/src/main.c                     |    57 +-
 apps/bleprph_oic/syscfg.yml                     |     5 +
 apps/bletest/pkg.yml                            |     4 +-
 apps/bletest/src/main.c                         |    47 +-
 apps/bletest/syscfg.yml                         |     6 +-
 apps/bletiny/pkg.yml                            |     7 +-
 apps/bletiny/src/bletiny.h                      |    15 +-
 apps/bletiny/src/cmd.c                          |    98 +-
 apps/bletiny/src/gatt_svr.c                     |   330 +-
 apps/bletiny/src/main.c                         |    90 +-
 apps/bletiny/src/misc.c                         |    20 +-
 apps/bletiny/src/parse.c                        |    27 +-
 apps/bletiny/syscfg.yml                         |     7 +-
 apps/bleuart/pkg.yml                            |     3 +-
 apps/bleuart/src/main.c                         |    44 +-
 apps/bleuart/syscfg.yml                         |     4 +
 apps/boot/syscfg.yml                            |     2 +
 apps/fat2native/pkg.yml                         |     2 +
 apps/ffs2native/pkg.yml                         |     2 +
 apps/ocf_sample/pkg.yml                         |     3 +-
 apps/ocf_sample/src/main.c                      |    86 +-
 apps/ocf_sample/syscfg.yml                      |     3 +
 apps/slinky/pkg.yml                             |    10 +-
 apps/slinky/src/main.c                          |    71 +-
 apps/slinky/syscfg.yml                          |     3 +
 apps/slinky_oic/pkg.yml                         |     6 +-
 apps/slinky_oic/src/main.c                      |    45 +-
 apps/slinky_oic/syscfg.yml                      |     4 +
 apps/spitest/pkg.yml                            |     4 +-
 apps/spitest/src/main.c                         |    40 +-
 apps/spitest/syscfg.yml                         |     4 +
 apps/splitty/pkg.yml                            |    15 +-
 apps/splitty/src/main.c                         |    47 +-
 apps/splitty/syscfg.yml                         |     4 +
 apps/testbench/pkg.yml                          |    57 +
 apps/testbench/src/testbench.c                  |   386 +
 apps/testbench/src/testbench.h                  |   189 +
 apps/testbench/src/testbench_json.c             |    82 +
 apps/testbench/src/testbench_mempool.c          |    98 +
 apps/testbench/src/testbench_mutex.c            |   172 +
 apps/testbench/src/testbench_sem.c              |   141 +
 apps/testbench/syscfg.yml                       |    37 +
 apps/timtest/pkg.yml                            |     4 +-
 apps/timtest/src/main.c                         |    39 +-
 boot/bootutil/design.txt                        |   191 +-
 boot/bootutil/include/bootutil/bootutil.h       |    15 +-
 boot/bootutil/include/bootutil/image.h          |     9 +-
 boot/bootutil/pkg.yml                           |     3 +
 boot/bootutil/signed_images.md                  |    16 +-
 boot/bootutil/src/bootutil_misc.c               |    46 +-
 boot/bootutil/src/image_ec.c                    |     5 +-
 boot/bootutil/src/image_ec256.c                 |   179 +
 boot/bootutil/src/image_validate.c              |    20 +-
 boot/bootutil/src/loader.c                      |   269 +-
 boot/bootutil/syscfg.yml                        |     3 +
 boot/bootutil/test/src/boot_test.c              |     4 +
 boot/bootutil/test/src/boot_test.h              |     1 +
 boot/bootutil/test/src/boot_test_utils.c        |    16 +
 .../test/src/testcases/boot_test_invalid_hash.c |     2 +-
 .../src/testcases/boot_test_no_flag_has_hash.c  |     2 +-
 .../test/src/testcases/boot_test_no_hash.c      |     2 +-
 .../test/src/testcases/boot_test_nv_bs_11.c     |     2 +-
 .../src/testcases/boot_test_nv_bs_11_2areas.c   |     2 +-
 .../test/src/testcases/boot_test_nv_ns_01.c     |     2 +-
 .../test/src/testcases/boot_test_permanent.c    |    53 +
 .../testcases/boot_test_permanent_continue.c    |    62 +
 .../test/src/testcases/boot_test_vb_ns_11.c     |     2 +-
 .../test/src/testcases/boot_test_vm_ns_01.c     |     2 +-
 .../src/testcases/boot_test_vm_ns_11_2areas.c   |     2 +-
 .../test/src/testcases/boot_test_vm_ns_11_b.c   |     2 +-
 boot/split/pkg.yml                              |     4 +-
 boot/split/src/split.c                          |     7 +-
 boot/split_app/pkg.yml                          |    25 +
 boot/split_app/src/split_app.c                  |    46 +
 compiler/arm-none-eabi-m0/compiler.yml          |     2 +-
 compiler/arm-none-eabi-m4/compiler.yml          |     2 +-
 compiler/sim/compiler.yml                       |     4 +-
 crypto/tinycrypt/LICENSE                        |    62 +
 crypto/tinycrypt/README                         |    82 +-
 crypto/tinycrypt/VERSION                        |     1 +
 crypto/tinycrypt/include/tinycrypt/aes.h        |    16 +-
 crypto/tinycrypt/include/tinycrypt/cbc_mode.h   |     8 +-
 crypto/tinycrypt/include/tinycrypt/ccm_mode.h   |    12 +-
 crypto/tinycrypt/include/tinycrypt/cmac_mode.h  |    20 +-
 crypto/tinycrypt/include/tinycrypt/constants.h  |     4 +
 crypto/tinycrypt/include/tinycrypt/ctr_mode.h   |     4 +-
 crypto/tinycrypt/include/tinycrypt/ctr_prng.h   |   167 +
 crypto/tinycrypt/include/tinycrypt/ecc.h        |     8 +-
 crypto/tinycrypt/include/tinycrypt/ecc_dh.h     |    14 +-
 crypto/tinycrypt/include/tinycrypt/ecc_dsa.h    |     8 +-
 crypto/tinycrypt/include/tinycrypt/hmac.h       |    16 +-
 crypto/tinycrypt/include/tinycrypt/hmac_prng.h  |    12 +-
 crypto/tinycrypt/include/tinycrypt/sha256.h     |    12 +-
 crypto/tinycrypt/include/tinycrypt/utils.h      |     8 +-
 crypto/tinycrypt/src/aes_decrypt.c              |     8 +-
 crypto/tinycrypt/src/aes_encrypt.c              |    14 +-
 crypto/tinycrypt/src/cbc_mode.c                 |     8 +-
 crypto/tinycrypt/src/ccm_mode.c                 |    30 +-
 crypto/tinycrypt/src/cmac_mode.c                |    28 +-
 crypto/tinycrypt/src/ctr_mode.c                 |     6 +-
 crypto/tinycrypt/src/ctr_prng.c                 |   308 +
 crypto/tinycrypt/src/hmac.c                     |    24 +-
 crypto/tinycrypt/src/hmac_prng.c                |    16 +-
 crypto/tinycrypt/src/sha256.c                   |    18 +-
 crypto/tinycrypt/src/utils.c                    |     2 +-
 encoding/base64/include/base64/hex.h            |     2 +-
 encoding/base64/src/hex.c                       |     2 +-
 encoding/cborattr/include/cborattr/cborattr.h   |    33 +-
 encoding/cborattr/src/cborattr.c                |   374 +-
 encoding/cborattr/test/pkg.yml                  |    31 +
 encoding/cborattr/test/src/test_cborattr.c      |    48 +
 encoding/cborattr/test/src/test_cborattr.h      |    57 +
 .../cborattr/test/src/test_cborattr_utils.c     |    35 +
 .../test/src/testcases/cborattr_decode1.c       |    83 +
 .../src/testcases/cborattr_decode_bool_array.c  |   101 +
 .../src/testcases/cborattr_decode_int_array.c   |   143 +
 .../src/testcases/cborattr_decode_obj_array.c   |   109 +
 .../test/src/testcases/cborattr_decode_object.c |   198 +
 .../testcases/cborattr_decode_object_array.c    |   126 +
 .../src/testcases/cborattr_decode_partial.c     |    47 +
 .../test/src/testcases/cborattr_decode_simple.c |   123 +
 .../testcases/cborattr_decode_string_array.c    |   135 +
 .../testcases/cborattr_decode_unnamed_array.c   |    99 +
 encoding/json/test/src/test_json.h              |     7 +-
 encoding/json/test/src/test_json_utils.c        |     6 +-
 .../tinycbor/include/tinycbor/cbor_buf_reader.h |     4 +-
 .../tinycbor/include/tinycbor/cbor_buf_writer.h |    12 +-
 .../include/tinycbor/cbor_mbuf_reader.h         |    14 +-
 .../include/tinycbor/cbor_mbuf_writer.h         |     7 +-
 encoding/tinycbor/src/cbor_buf_reader.c         |    25 +-
 encoding/tinycbor/src/cbor_buf_writer.c         |    16 +-
 encoding/tinycbor/src/cbor_mbuf_reader.c        |    55 +-
 encoding/tinycbor/src/cbor_mbuf_writer.c        |     7 +-
 encoding/tinycbor/src/cborencoder.c             |     8 +-
 .../src/cborencoder_close_container_checked.c   |    10 +-
 encoding/tinycbor/src/cborerrorstrings.c        |     2 +-
 encoding/tinycbor/src/cborparser.c              |    10 +-
 encoding/tinycbor/src/cborparser_dup_string.c   |     2 +-
 encoding/tinycbor/src/cborpretty.c              |     6 +-
 encoding/tinycbor/src/cbortojson.c              |     8 +-
 encoding/tinycbor/src/open_memstream.c          |     2 +-
 fs/disk/include/disk/disk.h                     |    56 +
 fs/disk/pkg.yml                                 |    27 +
 fs/disk/src/disk.c                              |   151 +
 fs/fatfs/pkg.yml                                |     9 +-
 fs/fatfs/src/mynewt_glue.c                      |   227 +-
 fs/fs/include/fs/fs_if.h                        |    37 +-
 fs/fs/pkg.yml                                   |     3 +
 fs/fs/src/fs_dirent.c                           |    30 +-
 fs/fs/src/fs_file.c                             |   180 +-
 fs/fs/src/fs_mkdir.c                            |     8 +-
 fs/fs/src/fs_mount.c                            |    59 +-
 fs/fs/src/fs_priv.h                             |     3 +-
 fs/nffs/pkg.yml                                 |     9 +-
 fs/nffs/src/nffs.c                              |    19 +-
 fs/nffs/src/nffs_dir.c                          |     5 +
 fs/nffs/src/nffs_file.c                         |     4 +
 fs/nffs/src/nffs_misc.c                         |     4 +-
 fs/nffs/src/nffs_priv.h                         |     3 +
 fs/nffs/test/pkg.yml                            |     2 +
 hw/bsp/arduino_primo_nrf52/pkg.yml              |     2 -
 hw/bsp/arduino_primo_nrf52/primo_debug.sh       |     3 +-
 .../src/arch/cortex_m4/gcc_startup_nrf52.s      |    10 +
 .../arch/cortex_m4/gcc_startup_nrf52_split.s    |    12 +-
 hw/bsp/arduino_primo_nrf52/src/hal_bsp.c        |    11 +-
 hw/bsp/arduino_primo_nrf52/syscfg.yml           |     7 +-
 hw/bsp/bmd300eval/pkg.yml                       |     2 -
 .../src/arch/cortex_m4/gcc_startup_nrf52.s      |    10 +
 .../arch/cortex_m4/gcc_startup_nrf52_split.s    |    12 +-
 hw/bsp/bmd300eval/src/hal_bsp.c                 |    11 +-
 hw/bsp/bmd300eval/syscfg.yml                    |     7 +-
 hw/bsp/ci40/bsp.yml                             |     4 +-
 hw/bsp/ci40/pkg.yml                             |     6 +
 hw/bsp/frdm-k64f/pkg.yml                        |    17 +-
 hw/bsp/frdm-k64f/src/hal_bsp.c                  |     4 +
 hw/bsp/native/pkg.yml                           |     2 -
 hw/bsp/native/src/hal_bsp.c                     |    13 +
 hw/bsp/nrf51-arduino_101/pkg.yml                |     3 -
 .../src/arch/cortex_m0/gcc_startup_nrf51.s      |    12 +-
 hw/bsp/nrf51-arduino_101/src/hal_bsp.c          |    13 +-
 hw/bsp/nrf51-arduino_101/syscfg.yml             |     7 +-
 hw/bsp/nrf51-blenano/nrf51dk_debug.sh           |     3 +-
 hw/bsp/nrf51-blenano/pkg.yml                    |     2 -
 .../src/arch/cortex_m0/gcc_startup_nrf51.s      |    12 +-
 .../arch/cortex_m0/gcc_startup_nrf51_split.s    |    15 +-
 hw/bsp/nrf51-blenano/src/hal_bsp.c              |    16 +-
 hw/bsp/nrf51-blenano/syscfg.yml                 |     7 +-
 hw/bsp/nrf51dk-16kbram/pkg.yml                  |     2 -
 hw/bsp/nrf51dk-16kbram/split-nrf51dk-16kbram.ld |     2 +-
 .../src/arch/cortex_m0/gcc_startup_nrf51.s      |    14 +-
 .../arch/cortex_m0/gcc_startup_nrf51_split.s    |    14 +-
 hw/bsp/nrf51dk-16kbram/src/hal_bsp.c            |    13 +-
 hw/bsp/nrf51dk-16kbram/syscfg.yml               |     7 +-
 hw/bsp/nrf51dk/pkg.yml                          |     2 -
 .../src/arch/cortex_m0/gcc_startup_nrf51.s      |    12 +-
 .../arch/cortex_m0/gcc_startup_nrf51_split.s    |    13 +-
 hw/bsp/nrf51dk/src/hal_bsp.c                    |    14 +-
 hw/bsp/nrf51dk/syscfg.yml                       |     7 +-
 hw/bsp/nrf52840pdk/boot-nrf52840aa.ld           |    26 +
 hw/bsp/nrf52840pdk/bsp.yml                      |    62 +
 hw/bsp/nrf52840pdk/include/bsp/boards.h         |    19 +
 hw/bsp/nrf52840pdk/include/bsp/bsp.h            |    53 +
 hw/bsp/nrf52840pdk/include/bsp/cmsis_nvic.h     |    29 +
 hw/bsp/nrf52840pdk/nrf52840aa.ld                |    26 +
 hw/bsp/nrf52840pdk/nrf52840pdk_debug.sh         |    46 +
 hw/bsp/nrf52840pdk/nrf52840pdk_download.sh      |    40 +
 hw/bsp/nrf52840pdk/nrf52840pdk_no_boot.ld       |   191 +
 hw/bsp/nrf52840pdk/pkg.yml                      |    94 +
 hw/bsp/nrf52840pdk/split-nrf52840pdk.ld         |   204 +
 .../src/arch/cortex_m4/gcc_startup_nrf52840.s   |   322 +
 .../arch/cortex_m4/gcc_startup_nrf52_split.s    |   161 +
 hw/bsp/nrf52840pdk/src/hal_bsp.c                |   209 +
 hw/bsp/nrf52840pdk/src/sbrk.c                   |    59 +
 hw/bsp/nrf52840pdk/syscfg.yml                   |   104 +
 hw/bsp/nrf52dk/pkg.yml                          |     2 -
 .../src/arch/cortex_m4/gcc_startup_nrf52.s      |    12 +-
 .../arch/cortex_m4/gcc_startup_nrf52_split.s    |    12 +-
 hw/bsp/nrf52dk/src/hal_bsp.c                    |    19 +-
 hw/bsp/nrf52dk/syscfg.yml                       |     7 +-
 hw/bsp/nucleo-f401re/nucleo-f401re_debug.sh     |     2 +-
 .../src/arch/cortex_m4/startup_STM32F40x.s      |    10 +
 hw/bsp/nucleo-f401re/syscfg.yml                 |     4 -
 .../olimex_stm32-e407_devboard_debug.sh         |     2 +-
 hw/bsp/olimex_stm32-e407_devboard/pkg.yml       |     2 -
 .../src/arch/cortex_m4/startup_STM32F40x.s      |    10 +
 hw/bsp/olimex_stm32-e407_devboard/syscfg.yml    |     4 -
 hw/bsp/rb-nano2/pkg.yml                         |     2 -
 hw/bsp/rb-nano2/rb-nano2_debug.sh               |     3 +-
 .../src/arch/cortex_m4/gcc_startup_nrf52.s      |    10 +
 .../arch/cortex_m4/gcc_startup_nrf52_split.s    |    12 +-
 hw/bsp/rb-nano2/src/hal_bsp.c                   |     9 +-
 hw/bsp/rb-nano2/syscfg.yml                      |     8 +-
 .../src/arch/cortex_m4/startup_STM32F40x.s      |    10 +
 .../stm32f4discovery/stm32f4discovery_debug.sh  |     3 +-
 hw/bsp/usbmkw41z/boot-mkw41z512.ld              |   197 +
 hw/bsp/usbmkw41z/bsp.yml                        |    60 +
 hw/bsp/usbmkw41z/include/bsp/bsp.h              |    47 +
 hw/bsp/usbmkw41z/include/bsp/cmsis_nvic.h       |    42 +
 hw/bsp/usbmkw41z/mkw41z512.ld                   |   186 +
 hw/bsp/usbmkw41z/no-boot-mkw41z512.ld           |   197 +
 hw/bsp/usbmkw41z/pkg.yml                        |    35 +
 .../src/arch/cortex_m0/gcc_startup_mkw41z.s     |   240 +
 hw/bsp/usbmkw41z/src/hal_bsp.c                  |    88 +
 hw/bsp/usbmkw41z/src/sbrk.c                     |    59 +
 hw/bsp/usbmkw41z/syscfg.yml                     |    31 +
 hw/bsp/usbmkw41z/usbkw41z_debug.sh              |    36 +
 hw/bsp/usbmkw41z/usbkw41z_download.sh           |    41 +
 hw/drivers/flash/at45db/pkg.yml                 |    27 +
 hw/drivers/flash/at45db/src/at45db.c            |   452 +
 hw/drivers/mmc/include/mmc/mmc.h                |    23 +
 hw/drivers/mmc/src/mmc.c                        |    34 +
 hw/drivers/nimble/nrf51/src/ble_phy.c           |     8 +-
 hw/drivers/nimble/nrf52/src/ble_phy.c           |     8 +-
 hw/hal/include/hal/hal_flash.h                  |     2 +-
 hw/hal/include/hal/hal_flash_int.h              |    18 +-
 hw/hal/include/hal/hal_system.h                 |     3 +
 hw/hal/src/hal_flash.c                          |    20 +-
 hw/mcu/native/src/hal_flash.c                   |    31 +-
 hw/mcu/native/src/hal_system.c                  |    23 +-
 hw/mcu/native/src/hal_uart.c                    |     2 +-
 hw/mcu/nordic/nrf51xxx/src/hal_flash.c          |    28 +-
 hw/mcu/nordic/nrf51xxx/src/hal_os_tick.c        |    84 +-
 hw/mcu/nordic/nrf51xxx/src/hal_system.c         |    63 +
 hw/mcu/nordic/nrf51xxx/src/hal_timer.c          |   239 +-
 hw/mcu/nordic/nrf52xxx/include/mcu/cortex_m4.h  |     5 +
 hw/mcu/nordic/nrf52xxx/include/mcu/mcu.h        |     6 +-
 hw/mcu/nordic/nrf52xxx/src/hal_flash.c          |    30 +-
 hw/mcu/nordic/nrf52xxx/src/hal_gpio.c           |    62 +-
 hw/mcu/nordic/nrf52xxx/src/hal_i2c.c            |     2 -
 hw/mcu/nordic/nrf52xxx/src/hal_os_tick.c        |     2 +-
 hw/mcu/nordic/nrf52xxx/src/hal_spi.c            |     2 +-
 hw/mcu/nordic/nrf52xxx/src/hal_timer.c          |   287 +-
 hw/mcu/nordic/nrf52xxx/src/hal_watchdog.c       |     3 +-
 hw/mcu/nordic/nrf52xxx/src/nrf52_hw_id.c        |     4 +-
 hw/mcu/nordic/nrf52xxx/src/system_nrf52.c       |   175 +-
 .../components/device/nrf.h                     |    25 +-
 .../components/device/nrf51_to_nrf52840.h       |   567 +
 .../components/device/nrf52840.h                |  2417 +++
 .../components/device/nrf52840_bitfields.h      | 14633 +++++++++++++++++
 .../components/device/nrf52840_peripherals.h    |   240 +
 .../components/device/nrf52_to_nrf52840.h       |    88 +
 .../components/toolchain/system_nrf52840.c      |   209 +
 .../components/toolchain/system_nrf52840.h      |    69 +
 hw/mcu/nxp/MK64F12/src/hal_flash.c              |    28 +-
 hw/mcu/nxp/mkw41z/include/mcu/MKW41Z4.h         | 12979 +++++++++++++++
 .../nxp/mkw41z/include/mcu/MKW41Z4_features.h   |  1719 ++
 hw/mcu/nxp/mkw41z/include/mcu/cortex_m0.h       |    41 +
 .../mkw41z/include/mcu/fsl_device_registers.h   |    56 +
 hw/mcu/nxp/mkw41z/include/mcu/mcu.h             |    38 +
 hw/mcu/nxp/mkw41z/include/mcu/mkw41z_hal.h      |    46 +
 hw/mcu/nxp/mkw41z/include/mcu/system_MKW41Z4.h  |   133 +
 hw/mcu/nxp/mkw41z/pkg.yml                       |    31 +
 hw/mcu/nxp/mkw41z/src/hal_gpio.c                |   161 +
 hw/mcu/nxp/mkw41z/src/hal_os_tick.c             |   104 +
 hw/mcu/nxp/mkw41z/src/hal_system.c              |    37 +
 hw/mcu/nxp/mkw41z/src/hal_watchdog.c            |    41 +
 hw/mcu/nxp/mkw41z/src/system_MKW41Z4.c          |   179 +
 hw/mcu/stm/stm32f4xx/src/hal_flash.c            |    30 +-
 hw/scripts/jlink.sh                             |    15 +-
 hw/scripts/openocd.sh                           |     2 +-
 hw/sensor/pkg.yml                               |     3 +
 hw/sensor/src/sensor.c                          |     6 -
 kernel/os/include/os/os.h                       |     3 +
 kernel/os/include/os/os_eventq.h                |     1 -
 kernel/os/include/os/os_fault.h                 |    34 +
 kernel/os/pkg.yml                               |     4 +-
 kernel/os/src/arch/cortex_m0/os_fault.c         |     5 +-
 kernel/os/src/arch/cortex_m4/os_fault.c         |     5 +-
 kernel/os/src/arch/mips/os_fault.c              |     5 +-
 kernel/os/src/arch/sim-mips/os_fault.c          |     9 +-
 kernel/os/src/arch/sim/os_fault.c               |     9 +-
 kernel/os/src/os.c                              |    28 +
 kernel/os/src/os_eventq.c                       |    23 +-
 kernel/os/src/os_heap.c                         |     8 +-
 kernel/os/src/os_mbuf.c                         |    29 +-
 kernel/os/src/os_time.c                         |     9 +
 kernel/os/syscfg.yml                            |     9 +
 kernel/os/test/src/eventq_test.c                |     1 -
 kernel/os/test/src/mempool_test.c               |     1 +
 kernel/os/test/src/mutex_test.c                 |    52 +-
 kernel/os/test/src/os_test.c                    |    37 +-
 kernel/os/test/src/os_test_priv.h               |     4 +
 kernel/os/test/src/sem_test.c                   |   118 +-
 .../test/src/testcases/event_test_poll_0timo.c  |     2 +-
 .../src/testcases/event_test_poll_single_sr.c   |     3 +-
 .../os/test/src/testcases/event_test_poll_sr.c  |     1 +
 .../src/testcases/event_test_poll_timeout_sr.c  |     5 +-
 kernel/os/test/src/testcases/event_test_src.c   |     3 +-
 kernel/os/test/src/testcases/os_callout_test.c  |     7 +-
 .../test/src/testcases/os_callout_test_speak.c  |     7 +-
 .../test/src/testcases/os_callout_test_stop.c   |     9 +-
 .../os/test/src/testcases/os_mutex_test_basic.c |     7 +-
 .../test/src/testcases/os_mutex_test_case_1.c   |    14 +-
 .../test/src/testcases/os_mutex_test_case_2.c   |    24 +-
 .../os/test/src/testcases/os_sem_test_basic.c   |     7 +-
 .../os/test/src/testcases/os_sem_test_case_1.c  |    13 +-
 .../os/test/src/testcases/os_sem_test_case_2.c  |    16 +-
 .../os/test/src/testcases/os_sem_test_case_3.c  |    16 +-
 .../os/test/src/testcases/os_sem_test_case_4.c  |    16 +-
 libc/baselibc/include/assert.h                  |     2 +-
 libc/baselibc/src/start.c                       |    46 +
 mgmt/imgmgr/include/imgmgr/imgmgr.h             |     8 +-
 mgmt/imgmgr/pkg.yml                             |     4 +-
 mgmt/imgmgr/src/imgmgr_cli.c                    |   121 +-
 mgmt/imgmgr/src/imgmgr_state.c                  |    49 +-
 mgmt/newtmgr/nmgr_os/pkg.yml                    |     5 +-
 mgmt/newtmgr/nmgr_os/src/newtmgr_os.c           |     6 +
 mgmt/newtmgr/nmgr_os/syscfg.yml                 |    23 +
 mgmt/newtmgr/pkg.yml                            |     4 +-
 mgmt/newtmgr/src/newtmgr.c                      |     8 +-
 mgmt/newtmgr/transport/ble/pkg.yml              |     4 +-
 mgmt/newtmgr/transport/ble/src/newtmgr_ble.c    |    18 +-
 mgmt/newtmgr/transport/nmgr_shell/pkg.yml       |     4 +-
 mgmt/newtmgr/transport/nmgr_uart/pkg.yml        |     4 +-
 mgmt/oicmgr/pkg.yml                             |     9 +-
 mgmt/oicmgr/src/oicmgr.c                        |    15 +-
 net/ip/mn_socket/test/src/mn_sock_util.c        |     1 +
 .../mn_socket/test/src/testcases/socket_tests.c |     1 +
 net/ip/native_sockets/pkg.yml                   |     4 +-
 .../controller/include/controller/ble_ll_conn.h |     7 +-
 .../controller/include/controller/ble_ll_hci.h  |     4 +-
 net/nimble/controller/pkg.yml                   |     6 +-
 net/nimble/controller/src/ble_ll.c              |    16 +-
 net/nimble/controller/src/ble_ll_adv.c          |     5 +-
 net/nimble/controller/src/ble_ll_conn.c         |   122 +-
 net/nimble/controller/src/ble_ll_conn_priv.h    |     3 -
 net/nimble/controller/src/ble_ll_hci.c          |    16 +-
 net/nimble/controller/src/ble_ll_resolv.c       |    19 +-
 net/nimble/host/include/host/ble_gap.h          |     3 +
 net/nimble/host/include/host/ble_gatt.h         |    49 +-
 net/nimble/host/include/host/ble_store.h        |     1 +
 net/nimble/host/include/host/ble_uuid.h         |    92 +-
 net/nimble/host/pkg.yml                         |    12 +-
 net/nimble/host/profiles/lls/src/ble_svc_lls.c  |     4 +-
 net/nimble/host/pts/README.txt                  |     8 +
 net/nimble/host/pts/pts-gap.txt                 |   370 +
 net/nimble/host/pts/pts-gatt.txt                |   530 +
 net/nimble/host/pts/pts-l2cap.txt               |   223 +
 net/nimble/host/pts/pts-sm.txt                  |   149 +
 .../host/pts/tpg/90359-20161220-172100175.tpg   |  1022 ++
 .../host/pts/tpg/90359-20161220-172113981.pts   |   288 +
 net/nimble/host/services/ans/pkg.yml            |     4 +-
 net/nimble/host/services/ans/src/ble_svc_ans.c  |    14 +-
 .../services/bleuart/include/bleuart/bleuart.h  |     2 +-
 net/nimble/host/services/bleuart/pkg.yml        |     4 +-
 net/nimble/host/services/bleuart/src/bleuart.c  |    28 +-
 net/nimble/host/services/gap/pkg.yml            |     4 +-
 net/nimble/host/services/gap/src/ble_svc_gap.c  |    16 +-
 net/nimble/host/services/gatt/pkg.yml           |     4 +-
 .../host/services/gatt/src/ble_svc_gatt.c       |     4 +-
 net/nimble/host/services/ias/pkg.yml            |     4 +-
 net/nimble/host/services/ias/src/ble_svc_ias.c  |     4 +-
 net/nimble/host/services/lls/src/ble_svc_lls.c  |     4 +-
 net/nimble/host/services/tps/pkg.yml            |     4 +-
 net/nimble/host/services/tps/src/ble_svc_tps.c  |     4 +-
 net/nimble/host/src/ble_att_clt.c               |    19 +-
 net/nimble/host/src/ble_att_cmd_priv.h          |     4 +-
 net/nimble/host/src/ble_att_priv.h              |    20 +-
 net/nimble/host/src/ble_att_svr.c               |   388 +-
 net/nimble/host/src/ble_gap.c                   |    51 +-
 net/nimble/host/src/ble_gattc.c                 |   158 +-
 net/nimble/host/src/ble_gatts.c                 |   182 +-
 net/nimble/host/src/ble_hs.c                    |     5 +-
 net/nimble/host/src/ble_hs_conn.c               |     8 +-
 net/nimble/host/src/ble_hs_conn_priv.h          |     3 +-
 net/nimble/host/src/ble_hs_hci_cmd.c            |     8 +-
 net/nimble/host/src/ble_hs_pvcy.c               |     6 +-
 net/nimble/host/src/ble_sm.c                    |   123 +-
 net/nimble/host/src/ble_sm_alg.c                |    29 +-
 net/nimble/host/src/ble_sm_priv.h               |     6 +-
 net/nimble/host/src/ble_sm_sc.c                 |     6 +-
 net/nimble/host/src/ble_uuid.c                  |   240 +-
 net/nimble/host/src/ble_uuid_priv.h             |     9 +-
 net/nimble/host/store/ram/pkg.yml               |     4 +-
 net/nimble/host/syscfg.yml                      |     4 +
 net/nimble/host/test/pkg.yml                    |     2 +
 net/nimble/host/test/src/ble_att_clt_test.c     |     8 +-
 net/nimble/host/test/src/ble_att_svr_test.c     |   277 +-
 net/nimble/host/test/src/ble_gap_test.c         |    90 +
 net/nimble/host/test/src/ble_gatt_conn_test.c   |    22 +-
 net/nimble/host/test/src/ble_gatt_disc_c_test.c |   150 +-
 net/nimble/host/test/src/ble_gatt_disc_d_test.c |    74 +-
 net/nimble/host/test/src/ble_gatt_disc_s_test.c |   119 +-
 net/nimble/host/test/src/ble_gatt_find_s_test.c |    56 +-
 net/nimble/host/test/src/ble_gatt_read_test.c   |    23 +-
 net/nimble/host/test/src/ble_gatt_write_test.c  |    12 +-
 .../host/test/src/ble_gatts_notify_test.c       |    16 +-
 net/nimble/host/test/src/ble_gatts_read_test.c  |     8 +-
 net/nimble/host/test/src/ble_gatts_reg_test.c   |   190 +-
 net/nimble/host/test/src/ble_hs_test_util.c     |   152 +-
 net/nimble/host/test/src/ble_hs_test_util.h     |    10 +-
 net/nimble/host/test/src/ble_uuid_test.c        |    93 +-
 net/nimble/transport/ram/pkg.yml                |     4 +-
 net/nimble/transport/uart/pkg.yml               |     4 +-
 net/nimble/transport/uart/src/ble_hci_uart.c    |     8 +
 net/oic/include/oic/oc_api.h                    |     5 +
 net/oic/include/oic/oc_client_state.h           |    23 +-
 net/oic/include/oic/oc_gatt.h                   |     8 +-
 net/oic/include/oic/oc_log.h                    |    20 +
 net/oic/include/oic/oc_rep.h                    |     4 +-
 net/oic/include/oic/oc_ri.h                     |    17 +
 net/oic/pkg.yml                                 |     6 +-
 net/oic/src/api/oc_buffer.c                     |    47 +-
 net/oic/src/api/oc_buffer.h                     |     5 -
 net/oic/src/api/oc_discovery.c                  |    33 +-
 net/oic/src/api/oc_main.c                       |     3 -
 net/oic/src/api/oc_rep.c                        |    21 +-
 net/oic/src/api/oc_ri.c                         |   285 +-
 net/oic/src/api/oc_server_api.c                 |    11 +-
 net/oic/src/messaging/coap/coap.c               |   278 +-
 net/oic/src/messaging/coap/coap.h               |   132 +-
 net/oic/src/messaging/coap/constants.h          |     2 +
 net/oic/src/messaging/coap/engine.c             |    51 +-
 net/oic/src/messaging/coap/engine.h             |     2 +-
 net/oic/src/messaging/coap/observe.c            |    39 +-
 net/oic/src/messaging/coap/observe.h            |     2 +-
 net/oic/src/messaging/coap/oc_coap.h            |     2 +-
 net/oic/src/messaging/coap/separate.c           |     6 +-
 net/oic/src/messaging/coap/separate.h           |     5 +-
 net/oic/src/port/mynewt/adaptor.c               |    25 -
 net/oic/src/port/mynewt/adaptor.h               |     3 -
 net/oic/src/port/mynewt/ble_adaptor.c           |    57 +-
 net/oic/src/port/mynewt/ip_adaptor.c            |    88 +-
 net/oic/src/port/mynewt/log.c                   |    30 +
 net/oic/src/port/mynewt/random.c                |     9 +-
 net/oic/src/port/oc_connectivity.h              |     7 -
 net/oic/src/port/oc_network_events_mutex.h      |    34 -
 net/oic/syscfg.yml                              |     4 +
 net/oic/test/pkg.yml                            |    34 +
 net/oic/test/src/test_discovery.c               |   153 +
 net/oic/test/src/test_getset.c                  |   127 +
 net/oic/test/src/test_oic.c                     |    46 +
 net/oic/test/src/test_oic.h                     |    51 +
 net/oic/test/src/testcases/oic_tests.c          |   115 +
 net/oic/test/syscfg.yml                         |    24 +
 sys/config/pkg.yml                              |     4 +-
 sys/config/src/config_init.c                    |    30 +-
 sys/config/test-nffs/pkg.yml                    |     2 +
 sys/console/full/pkg.yml                        |     4 +-
 sys/console/stub/include/console/prompt.h       |    21 +-
 sys/console/stub/include/console/ticks.h        |    16 +-
 sys/flash_map/include/flash_map/flash_map.h     |    13 +-
 sys/flash_map/pkg.yml                           |     5 +-
 sys/flash_map/src/flash_map.c                   |    47 +-
 .../test/src/testcases/flash_map_test_case_1.c  |     2 +-
 .../test/src/testcases/flash_map_test_case_2.c  |     2 +-
 sys/id/pkg.yml                                  |     4 +-
 sys/log/full/include/log/ignore.h               |    64 +
 sys/log/full/include/log/log.h                  |   233 +
 sys/log/full/pkg.yml                            |    44 +
 sys/log/full/src/log.c                          |   236 +
 sys/log/full/src/log_cbmem.c                    |   129 +
 sys/log/full/src/log_console.c                  |    75 +
 sys/log/full/src/log_fcb.c                      |   285 +
 sys/log/full/src/log_nmgr.c                     |   516 +
 sys/log/full/src/log_shell.c                    |   101 +
 sys/log/full/syscfg.yml                         |    37 +
 sys/log/full/test/pkg.yml                       |    30 +
 sys/log/full/test/src/log_test.c                |   109 +
 sys/log/full/test/src/log_test.h                |    54 +
 .../full/test/src/testcases/log_append_fcb.c    |    33 +
 sys/log/full/test/src/testcases/log_flush_fcb.c |    31 +
 sys/log/full/test/src/testcases/log_setup_fcb.c |    39 +
 sys/log/full/test/src/testcases/log_walk_fcb.c  |    30 +
 sys/log/full/test/syscfg.yml                    |    22 +
 sys/log/include/log/ignore.h                    |    64 -
 sys/log/include/log/log.h                       |   223 -
 sys/log/pkg.yml                                 |    41 -
 sys/log/src/log.c                               |   236 -
 sys/log/src/log_cbmem.c                         |   120 -
 sys/log/src/log_console.c                       |    75 -
 sys/log/src/log_fcb.c                           |   275 -
 sys/log/src/log_nmgr.c                          |   524 -
 sys/log/src/log_shell.c                         |   101 -
 sys/log/stub/include/log/ignore.h               |    64 +
 sys/log/stub/include/log/log.h                  |    73 +
 sys/log/stub/pkg.yml                            |    29 +
 sys/log/stub/syscfg.yml                         |    27 +
 sys/log/syscfg.yml                              |    37 -
 sys/log/test/pkg.yml                            |    30 -
 sys/log/test/src/log_test.c                     |   109 -
 sys/log/test/src/log_test.h                     |    54 -
 sys/log/test/src/testcases/log_append_fcb.c     |    33 -
 sys/log/test/src/testcases/log_flush_fcb.c      |    30 -
 sys/log/test/src/testcases/log_setup_fcb.c      |    39 -
 sys/log/test/src/testcases/log_walk_fcb.c       |    29 -
 sys/log/test/syscfg.yml                         |    22 -
 sys/mfg/pkg.yml                                 |     4 +-
 sys/reboot/pkg.yml                              |     6 +-
 sys/shell/pkg.yml                               |     4 +-
 sys/stats/full/include/stats/stats.h            |   142 +
 sys/stats/full/pkg.yml                          |    37 +
 sys/stats/full/src/stats.c                      |   390 +
 sys/stats/full/src/stats_nmgr.c                 |   185 +
 sys/stats/full/src/stats_shell.c                |   119 +
 sys/stats/full/syscfg.yml                       |    32 +
 sys/stats/include/stats/stats.h                 |   140 -
 sys/stats/pkg.yml                               |    35 -
 sys/stats/src/stats.c                           |   390 -
 sys/stats/src/stats_nmgr.c                      |   185 -
 sys/stats/src/stats_shell.c                     |   119 -
 sys/stats/stub/include/stats/stats.h            |    83 +
 sys/stats/stub/pkg.yml                          |    29 +
 sys/stats/syscfg.yml                            |    32 -
 sys/sysinit/include/sysinit/sysinit.h           |    22 +-
 sys/sysinit/pkg.yml                             |     2 +-
 sys/sysinit/src/sysinit.c                       |    15 +
 sys/sysinit/syscfg.yml                          |     4 -
 targets/unittest/pkg.yml                        |     2 +-
 targets/unittest/target.yml                     |     4 +-
 test/crash_test/pkg.yml                         |     4 +-
 test/runtest/pkg.yml                            |     4 +-
 test/testutil/include/testutil/testutil.h       |    27 +-
 test/testutil/src/case.c                        |    26 +-
 test/testutil/src/suite.c                       |     1 +
 test/testutil/src/testutil.c                    |     6 +-
 571 files changed, 53844 insertions(+), 7416 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/2681044e/apps/bletiny/src/gatt_svr.c
----------------------------------------------------------------------
diff --cc apps/bletiny/src/gatt_svr.c
index af7b00d,936546f..08a0f6c
--- a/apps/bletiny/src/gatt_svr.c
+++ b/apps/bletiny/src/gatt_svr.c
@@@ -441,7 -351,7 +351,7 @@@ gatt_svr_chr_access_sec_test(uint16_t c
   * from 128 bit vendor specific UUID.
   */
  static uint16_t
- extract_uuid16_from_pts_uuid128(const void *uuid128)
 -extract_uuid16_from_pts_uuid128(const ble_uuid_t *uuid)
++xtract_uuid16_from_pts_uuid128(const ble_uuid_t *uuid)
  {
      const uint8_t *u8ptr;
      uint16_t uuid16;
@@@ -456,7 -366,7 +366,7 @@@ static in
  gatt_svr_access_test(uint16_t conn_handle, uint16_t attr_handle,
                       struct ble_gatt_access_ctxt *ctxt,
                       void *arg)
--{
++
      uint16_t uuid16;
      int rc;
  

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/2681044e/apps/slinky/pkg.yml
----------------------------------------------------------------------
diff --cc apps/slinky/pkg.yml
index ab87296,3159cb9..52a08ef
--- a/apps/slinky/pkg.yml
+++ b/apps/slinky/pkg.yml
@@@ -33,6 -30,6 +30,8 @@@ pkg.deps
      - mgmt/newtmgr
      - mgmt/newtmgr/transport/nmgr_shell
      - kernel/os
++    - hw/sensor
++    - hw/drivers/sensors/sim
      - boot/bootutil
      - sys/shell
      - sys/config

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/2681044e/apps/slinky/src/main.c
----------------------------------------------------------------------
diff --cc apps/slinky/src/main.c
index 9a2b3ac,956ce38..27d6177
--- a/apps/slinky/src/main.c
+++ b/apps/slinky/src/main.c
@@@ -255,48 -231,8 +233,43 @@@ init_tasks(void
  
      os_task_init(&task2, "task2", task2_handler, NULL,
              TASK2_PRIO, OS_WAIT_FOREVER, pstack, TASK2_STACK_SIZE);
- 
-     pstack = malloc(sizeof(os_stack_t)*TASK3_STACK_SIZE);
-     assert(pstack);
- 
-     os_task_init(&task3, "task3", task3_handler, NULL,
-             TASK3_PRIO, OS_WAIT_FOREVER, pstack, TASK3_STACK_SIZE);
- 
-     /* Initialize eventq and designate it as the default.  Packages that need
-      * to schedule work items will piggyback on this eventq.  Example packages
-      * which do this are sys/shell and mgmt/newtmgr.
-      */
-     os_eventq_init(&slinky_evq);
-     os_eventq_dflt_set(&slinky_evq);
  }
  
 +static int
- slinky_sim_accel_init(struct os_dev *dev, void *arg)
++config_sim_sensor(void)
 +{
++    struct os_dev *dev;
 +    struct sim_accel_cfg cfg;
 +    int rc;
 +
-     rc = sim_accel_init(dev, arg);
++    dev = (struct os_dev *) os_dev_open("simaccel0", OS_TIMEOUT_NEVER, NULL);
++    assert(dev != NULL);
++
++    rc = sim_accel_init(dev, NULL);
 +    if (rc != 0) {
++        os_dev_close(dev);
 +        goto err;
 +    }
 +
 +    cfg.sac_nr_samples = 10;
 +    cfg.sac_nr_axises = 1;
 +    /* read once per sec.  API should take this value in ms. */
 +    cfg.sac_sample_itvl = OS_TICKS_PER_SEC;
 +
 +    rc = sim_accel_config((struct sim_accel *) dev, &cfg);
 +    if (rc != 0) {
++        os_dev_close(dev);
 +        goto err;
 +    }
 +
++    os_dev_close(dev);
++
 +    return (0);
 +err:
 +    return (rc);
 +}
 +
 +
  /**
   * main
   *
@@@ -345,17 -286,10 +323,14 @@@ main(int argc, char **argv
      }
  #endif
  
-     init_tasks();
- 
-     sensor_pkg_init();
- 
-     os_dev_create((struct os_dev *) &sim_accel_sensor, "simaccel0",
-             OS_DEV_INIT_KERNEL, OS_DEV_INIT_PRIMARY, slinky_sim_accel_init, NULL);
++    config_sim_sensor();
 +
-     os_start();
- 
-     /* os start should never return. If it does, this should be an error */
-     assert(0);
+     /*
+      * As the last thing, process events from default event queue.
+      */
+     while (1) {
+         os_eventq_run(os_eventq_dflt_get());
+     }
 +
-     return rc;
++    return (0);
  }

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/2681044e/hw/bsp/native/src/hal_bsp.c
----------------------------------------------------------------------
diff --cc hw/bsp/native/src/hal_bsp.c
index 5f14e1e,5f14e1e..8ef4b6a
--- a/hw/bsp/native/src/hal_bsp.c
+++ b/hw/bsp/native/src/hal_bsp.c
@@@ -30,8 -30,8 +30,11 @@@
  #include "uart_hal/uart_hal.h"
  #include "mcu/native_bsp.h"
  #include "mcu/mcu_hal.h"
++#include "sensor/sensor.h"
++#include "sim/sim_accel.h"
  
  static struct uart_dev os_bsp_uart0;
++struct sim_accel sim_accel_sensor;
  
  const struct hal_flash *
  hal_bsp_flash_dev(uint8_t id)
@@@ -51,11 -51,11 +54,21 @@@ hal_bsp_power_state(int state
      return (0);
  }
  
++static int
++slinky_sim_accel_init(struct os_dev *dev, void *arg)
++{
++    return (0);
++}
++
  void
  hal_bsp_init(void)
  {
      int rc;
  
++    rc = os_dev_create((struct os_dev *) &sim_accel_sensor, "simaccel0",
++            OS_DEV_INIT_KERNEL, OS_DEV_INIT_PRIMARY, slinky_sim_accel_init, NULL);
++    assert(rc == 0);
++
      rc = os_dev_create((struct os_dev *) &os_bsp_uart0, "uart0",
              OS_DEV_INIT_PRIMARY, 0, uart_hal_init, (void *) NULL);
      assert(rc == 0);

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/2681044e/hw/drivers/mmc/include/mmc/mmc.h
----------------------------------------------------------------------
diff --cc hw/drivers/mmc/include/mmc/mmc.h
index d65363d,4b14e27..bc60dac
--- a/hw/drivers/mmc/include/mmc/mmc.h
+++ b/hw/drivers/mmc/include/mmc/mmc.h
@@@ -21,6 -21,7 +21,10 @@@
  #define __MMC_H__
  
  #include <os/os_dev.h>
++<<<<<<< HEAD
++=======
+ #include <disk/disk.h>
++>>>>>>> develop
  
  #ifdef __cplusplus
  extern "C" {
@@@ -43,6 -44,8 +47,11 @@@
  #define MMC_ERASE_ERROR       (-11)
  #define MMC_ADDR_ERROR        (-12)
  
++<<<<<<< HEAD
++=======
+ extern struct disk_ops mmc_ops;
+ 
++>>>>>>> develop
  /**
   * Initialize the MMC driver
   *
@@@ -66,7 -69,7 +75,11 @@@ mmc_init(int spi_num, void *spi_cfg, in
   * @return 0 on success, non-zero on failure
   */
  int
++<<<<<<< HEAD
 +mmc_read(uint8_t mmc_id, uint32_t addr, void *buf, size_t len);
++=======
+ mmc_read(uint8_t mmc_id, uint32_t addr, void *buf, uint32_t len);
++>>>>>>> develop
  
  /**
   * Write data to the MMC
@@@ -79,7 -82,13 +92,17 @@@
   * @return 0 on success, non-zero on failure
   */
  int
++<<<<<<< HEAD
 +mmc_write(uint8_t mmc_id, uint32_t addr, const void *buf, size_t len);
++=======
+ mmc_write(uint8_t mmc_id, uint32_t addr, const void *buf, uint32_t len);
+ 
+ /**
+  * TODO
+  */
+ int
+ mmc_ioctl(uint8_t mmc_id, uint32_t cmd, void *arg);
++>>>>>>> develop
  
  #ifdef __cplusplus
  }

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/2681044e/hw/drivers/mmc/src/mmc.c
----------------------------------------------------------------------
diff --cc hw/drivers/mmc/src/mmc.c
index ca89434,cae8c29..1a09f34
--- a/hw/drivers/mmc/src/mmc.c
+++ b/hw/drivers/mmc/src/mmc.c
@@@ -19,9 -19,8 +19,14 @@@
  
  #include <hal/hal_spi.h>
  #include <hal/hal_gpio.h>
++<<<<<<< HEAD
 +
 +#include <mmc/mmc.h>
 +
++=======
+ #include <disk/disk.h>
+ #include <mmc/mmc.h>
++>>>>>>> develop
  #include <stdio.h>
  
  #define MIN(n, m) (((n) < (m)) ? (n) : (m))
@@@ -361,7 -360,7 +366,11 @@@ wait_busy(struct mmc_cfg *mmc
   * @return 0 on success, non-zero on failure
   */
  int
++<<<<<<< HEAD
 +mmc_read(uint8_t mmc_id, uint32_t addr, void *buf, size_t len)
++=======
+ mmc_read(uint8_t mmc_id, uint32_t addr, void *buf, uint32_t len)
++>>>>>>> develop
  {
      uint8_t cmd;
      uint8_t res;
@@@ -449,7 -448,7 +458,11 @@@ out
   * @return 0 on success, non-zero on failure
   */
  int
++<<<<<<< HEAD
 +mmc_write(uint8_t mmc_id, uint32_t addr, const void *buf, size_t len)
++=======
+ mmc_write(uint8_t mmc_id, uint32_t addr, const void *buf, uint32_t len)
++>>>>>>> develop
  {
      uint8_t cmd;
      uint8_t res;
@@@ -583,3 -582,21 +596,24 @@@ out
      hal_gpio_write(mmc->ss_pin, 1);
      return (rc);
  }
++<<<<<<< HEAD
++=======
+ 
+ /*
+  *
+  */
+ int
+ mmc_ioctl(uint8_t mmc_id, uint32_t cmd, void *arg)
+ {
+     return 0;
+ }
+ 
+ /*
+  *
+  */
+ struct disk_ops mmc_ops = {
+     .read  = &mmc_read,
+     .write = &mmc_write,
+     .ioctl = &mmc_ioctl,
+ };
++>>>>>>> develop

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/2681044e/hw/sensor/pkg.yml
----------------------------------------------------------------------
diff --cc hw/sensor/pkg.yml
index decf1c9,0000000..4fe022d
mode 100644,000000..100644
--- a/hw/sensor/pkg.yml
+++ b/hw/sensor/pkg.yml
@@@ -1,25 -1,0 +1,28 @@@
 +#
 +# Licensed to the Apache Software Foundation (ASF) under one
 +# or more contributor license agreements.  See the NOTICE file
 +# distributed with this work for additional information
 +# regarding copyright ownership.  The ASF licenses this file
 +# to you under the Apache License, Version 2.0 (the
 +# "License"); you may not use this file except in compliance
 +# with the License.  You may obtain a copy of the License at
 +#
 +#  http://www.apache.org/licenses/LICENSE-2.0
 +#
 +# Unless required by applicable law or agreed to in writing,
 +# software distributed under the License is distributed on an
 +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 +# KIND, either express or implied.  See the License for the
 +# specific language governing permissions and limitations
 +# under the License.
 +#
 +
 +pkg.name: hw/sensor
 +pkg.description: Sensor Interface
 +pkg.author: "Apache Mynewt <de...@mynewt.incubator.apache.org>"
 +pkg.homepage: "http://mynewt.apache.org/"
 +pkg.keywords:
 +
++
++pkg.init:
++    sensor_pkg_init: 501

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/2681044e/hw/sensor/src/sensor.c
----------------------------------------------------------------------
diff --cc hw/sensor/src/sensor.c
index ab4c413,0000000..897b7be
mode 100644,000000..100644
--- a/hw/sensor/src/sensor.c
+++ b/hw/sensor/src/sensor.c
@@@ -1,560 -1,0 +1,554 @@@
 +/*
 + * Licensed to the Apache Software Foundation (ASF) under one
 + * or more contributor license agreements.  See the NOTICE file
 + * distributed with this work for additional information
 + * regarding copyright ownership.  The ASF licenses this file
 + * to you under the Apache License, Version 2.0 (the
 + * "License"); you may not use this file except in compliance
 + * with the License.  You may obtain a copy of the License at
 + *
 + *  http://www.apache.org/licenses/LICENSE-2.0
 + *
 + * Unless required by applicable law or agreed to in writing,
 + * software distributed under the License is distributed on an
 + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 + * KIND, either express or implied.  See the License for the
 + * specific language governing permissions and limitations
 + * under the License.
 + */
 +
 +#include <string.h>
 +#include <errno.h>
 +#include <assert.h>
 +
 +#include "os/os.h"
 +#include "sysinit/sysinit.h"
 +
 +#include "sensor/sensor.h"
 +
 +#include "sensor_priv.h"
 +
 +struct {
 +    struct os_mutex mgr_lock;
 +
 +    struct os_callout mgr_wakeup_callout;
 +    struct os_eventq *mgr_eventq;
 +
 +    TAILQ_HEAD(, sensor) mgr_sensor_list;
 +} sensor_mgr;
 +
 +int
 +sensor_mgr_lock(void)
 +{
 +    int rc;
 +
 +    rc = os_mutex_pend(&sensor_mgr.mgr_lock, OS_TIMEOUT_NEVER);
 +    if (rc == 0 || rc == OS_NOT_STARTED) {
 +        return (0);
 +    }
 +    return (rc);
 +}
 +
 +void
 +sensor_mgr_unlock(void)
 +{
 +    (void) os_mutex_release(&sensor_mgr.mgr_lock);
 +}
 +
 +static void
 +sensor_mgr_remove(struct sensor *sensor)
 +{
 +    TAILQ_REMOVE(&sensor_mgr.mgr_sensor_list, sensor, s_next);
 +}
 +
 +static void
 +sensor_mgr_insert(struct sensor *sensor)
 +{
 +    struct sensor *cursor;
 +
 +    cursor = NULL;
 +    TAILQ_FOREACH(cursor, &sensor_mgr.mgr_sensor_list, s_next) {
 +        if (cursor->s_next_run == OS_TIMEOUT_NEVER) {
 +            break;
 +        }
 +
 +        if (OS_TIME_TICK_LT(sensor->s_next_run, cursor->s_next_run)) {
 +            break;
 +        }
 +    }
 +
 +    if (cursor) {
 +        TAILQ_INSERT_BEFORE(cursor, sensor, s_next);
 +    } else {
 +        TAILQ_INSERT_TAIL(&sensor_mgr.mgr_sensor_list, sensor, s_next);
 +    }
 +}
 +
 +/**
 + * Register the sensor with the global sensor list.   This makes the sensor
 + * searchable by other packages, who may want to look it up by type.
 + *
 + * @param The sensor to register
 + *
 + * @return 0 on success, non-zero error code on failure.
 + */
 +int
 +sensor_mgr_register(struct sensor *sensor)
 +{
 +    int rc;
 +
 +    rc = sensor_mgr_lock();
 +    if (rc != 0) {
 +        goto err;
 +    }
 +
 +    rc = sensor_lock(sensor);
 +    if (rc != 0) {
 +        goto err;
 +    }
 +
 +    sensor_mgr_insert(sensor);
 +
 +    sensor_unlock(sensor);
 +
 +    sensor_mgr_unlock();
 +
 +    return (0);
 +err:
 +    return (rc);
 +}
 +
 +
 +static os_time_t
 +sensor_mgr_poll_one(struct sensor *sensor, os_time_t now)
 +{
 +    uint32_t sensor_ticks;
 +    int rc;
 +
 +    rc = sensor_lock(sensor);
 +    if (rc != 0) {
 +        goto err;
 +    }
 +
 +    /* Sensor read results.  Every time a sensor is read, all of its
 +     * listeners are called by default.  Specify NULL as a callback,
 +     * because we just want to run all the listeners.
 +     */
 +    sensor_read(sensor, SENSOR_TYPE_ALL, NULL, NULL, OS_TIMEOUT_NEVER);
 +
 +    /* Remove the sensor from the sensor list for insertion sort. */
 +    sensor_mgr_remove(sensor);
 +
 +    /* Set next wakeup, and insertion sort the sensor back into the
 +     * list.
 +     */
 +    os_time_ms_to_ticks(sensor->s_poll_rate, &sensor_ticks);
 +    sensor->s_next_run = now + sensor_ticks;
 +
 +    /* Re-insert the sensor manager, with the new wakeup time. */
 +    sensor_mgr_insert(sensor);
 +
 +    /* Unlock the sensor to allow other access */
 +    sensor_unlock(sensor);
 +
 +    return (sensor->s_next_run);
 +err:
 +    /* Couldn't lock it.  Re-run task and spin until we get result. */
 +    return (0);
 +}
 +
 +/**
 + * Event that wakes up the sensor manager, this goes through the sensor
 + * list and polls any active sensors.
 + */
 +static void
 +sensor_mgr_wakeup_event(struct os_event *ev)
 +{
 +    struct sensor *cursor;
 +    os_time_t now;
 +    os_time_t task_next_wakeup;
 +    os_time_t next_wakeup;
 +    int rc;
 +
 +    now = os_time_get();
 +    task_next_wakeup = now + SENSOR_MGR_WAKEUP_TICKS;
 +
 +    rc = sensor_mgr_lock();
 +    if (rc != 0) {
 +        /* Schedule again in 1 tick, see if we can reacquire the lock */
 +        task_next_wakeup = now + 1;
 +        goto done;
 +    }
 +
 +     TAILQ_FOREACH(cursor, &sensor_mgr.mgr_sensor_list, s_next) {
 +        /* Sensors that are not periodic are inserted at the end of the sensor
 +         * list.
 +         */
 +        if (cursor->s_next_run == OS_TIMEOUT_NEVER) {
 +            break;
 +        }
 +
 +        /* List is sorted by what runs first.  If we reached the first element that
 +         * doesn't run, break out.
 +         */
 +        if (OS_TIME_TICK_LT(now, cursor->s_next_run)) {
 +            break;
 +        }
 +
 +        /* Sensor poll one completes the poll, updates the sensor's "next run,"
 +         * and re-inserts it into the list.  It returns the next wakeup time
 +         * for this sensor.
 +         */
 +        next_wakeup = sensor_mgr_poll_one(cursor, now);
 +
 +        /* If the next wakeup time for this sensor is before the task's next
 +         * scheduled wakeup, move that forward, so we can collect data from that
 +         * sensor
 +         */
 +        if (task_next_wakeup > next_wakeup) {
 +            task_next_wakeup = next_wakeup;
 +        }
 +    }
 +
 +done:
 +    os_callout_reset(&sensor_mgr.mgr_wakeup_callout, task_next_wakeup);
 +}
 +
 +struct os_eventq *
 +sensor_mgr_evq_get(void)
 +{
 +    os_eventq_ensure(&sensor_mgr.mgr_eventq, NULL);
 +
 +    return (sensor_mgr.mgr_eventq);
 +}
 +
 +static void
 +sensor_mgr_init(void)
 +{
 +    memset(&sensor_mgr, 0, sizeof(sensor_mgr));
 +    TAILQ_INIT(&sensor_mgr.mgr_sensor_list);
 +
 +    /**
 +     * Initialize sensor polling callout and set it to fire on boot.
 +     */
 +    os_callout_init(&sensor_mgr.mgr_wakeup_callout, sensor_mgr_evq_get(),
 +            sensor_mgr_wakeup_event, NULL);
 +    os_callout_reset(&sensor_mgr.mgr_wakeup_callout, 0);
 +
 +    os_mutex_init(&sensor_mgr.mgr_lock);
 +}
 +
 +/**
 + * The sensor manager contains a list of sensors, this function returns
 + * the next sensor in that list, for which compare_func() returns successful
 + * (one).  If prev_cursor is provided, the function starts at that point
 + * in the sensor list.
 + *
 + * @warn This function MUST be locked by sensor_mgr_lock/unlock() if the goal is
 + * to iterate through sensors (as opposed to just finding one.)  As the
 + * "prev_cursor" may be resorted in the sensor list, in between calls.
 + *
 + * @param The comparison function to use against sensors in the list.
 + * @param The argument to provide to that comparison function
 + * @param The previous sensor in the sensor manager list, in case of
 + *        iteration.  If desire is to find first matching sensor, provide a
 + *        NULL value.
 + *
 + * @return A pointer to the first sensor found from prev_cursor, or
 + *         NULL, if none found.
 + *
 + */
 +struct sensor *
 +sensor_mgr_find_next(sensor_mgr_compare_func_t compare_func, void *arg,
 +        struct sensor *prev_cursor)
 +{
 +    struct sensor *cursor;
 +    int rc;
 +
 +    cursor = NULL;
 +
 +    /* Couldn't acquire lock of sensor list, exit */
 +    rc = sensor_mgr_lock();
 +    if (rc != 0) {
 +        goto done;
 +    }
 +
 +    cursor = prev_cursor;
 +    if (cursor == NULL) {
 +        cursor = TAILQ_FIRST(&sensor_mgr.mgr_sensor_list);
 +    } else {
 +        cursor = TAILQ_NEXT(prev_cursor, s_next);
 +    }
 +
 +    while (cursor != NULL) {
 +        if (compare_func(cursor, arg)) {
 +            break;
 +        }
 +        cursor = TAILQ_NEXT(cursor, s_next);
 +    }
 +
 +    sensor_mgr_unlock();
 +
 +done:
 +    return (cursor);
 +}
 +
 +
 +
 +static int
 +sensor_mgr_match_bytype(struct sensor *sensor, void *arg)
 +{
 +    sensor_type_t *type;
 +
 +    type = (sensor_type_t *) arg;
 +
 +    /* s_types is a bitmask that contains the supported sensor types for this
 +     * sensor, and type is the bitmask we're searching for.  Compare the two,
 +     * and if there is a match, return true (1).
 +     */
 +    if ((*type & sensor->s_types) != 0) {
 +        return (1);
 +    } else {
 +        return (0);
 +    }
 +}
 +
 +/**
 + * Find the "next" sensor available for a given sensor type.
 + *
 + * If the sensor parameter, is present find the next entry from that
 + * parameter.  Otherwise, find the first matching sensor.
 + *
 + * @param The type of sensor to search for
 + * @param The cursor to search from, or NULL to start from the beginning.
 + *
 + * @return A pointer to the sensor object matching that sensor type, or NULL if
 + *         none found.
 + */
 +struct sensor *
 +sensor_mgr_find_next_bytype(sensor_type_t type, struct sensor *prev_cursor)
 +{
 +    return (sensor_mgr_find_next(sensor_mgr_match_bytype, (void *) &type,
 +                prev_cursor));
 +}
 +
 +static int
 +sensor_mgr_match_bydevname(struct sensor *sensor, void *arg)
 +{
 +    char *devname;
 +
 +    devname = (char *) arg;
 +
 +    if (!strcmp(sensor->s_dev->od_name, devname)) {
 +        return (1);
 +    }
 +
 +    return (0);
 +}
 +
 +
 +/**
 + * Search teh sensor list, and find the next sensor that correspondes
 + * to a given device name.
 + *
 + * @param The device name to search for
 + * @param The previous sensor found with this device name
 + *
 + * @return 0 on success, non-zero error code on failure
 + */
 +struct sensor *
 +sensor_mgr_find_next_bydevname(char *devname, struct sensor *prev_cursor)
 +{
 +    return (sensor_mgr_find_next(sensor_mgr_match_bydevname, devname,
 +            prev_cursor));
 +}
 +
 +/**
 + * Initialize the sensor package, called through SYSINIT.  Note, this function
 + * will assert if called directly, and _NOT_ through the sysinit package.
 + */
 +void
 +sensor_pkg_init(void)
 +{
-     /* Call directly until sysinit has the right hooks for us */
- #if 0
-     /* Ensure this is only called by sysinit */
-     SYSINIT_ASSERT_ACTIVE();
- #endif
- 
 +    sensor_mgr_init();
 +
 +#if MYNEWT_VAL(SENSOR_CLI)
 +    sensor_shell_register();
 +#endif
 +}
 +
 +
 +/**
 + * Lock access to the sensor specified by sensor.  Blocks until lock acquired.
 + *
 + * @param The sensor to lock
 + *
 + * @return 0 on success, non-zero on failure.
 + */
 +int
 +sensor_lock(struct sensor *sensor)
 +{
 +    int rc;
 +
 +    rc = os_mutex_pend(&sensor->s_lock, OS_TIMEOUT_NEVER);
 +    if (rc == 0 || rc == OS_NOT_STARTED) {
 +        return (0);
 +    }
 +    return (rc);
 +}
 +
 +/**
 + * Unlock access to the sensor specified by sensor.  Blocks until lock acquired.
 + *
 + * @param The sensor to unlock access to.
 + */
 +void
 +sensor_unlock(struct sensor *sensor)
 +{
 +    os_mutex_release(&sensor->s_lock);
 +}
 +
 +
 +/**
 + * Initialize a sensor
 + *
 + * @param The sensor to initialize
 + * @param The device to associate with this sensor.
 + *
 + * @return 0 on success, non-zero error code on failure.
 + */
 +int
 +sensor_init(struct sensor *sensor, struct os_dev *dev)
 +{
 +    int rc;
 +
 +    memset(sensor, 0, sizeof(*sensor));
 +
 +    rc = os_mutex_init(&sensor->s_lock);
 +    if (rc != 0) {
 +        goto err;
 +    }
 +    sensor->s_dev = dev;
 +
 +    return (0);
 +err:
 +    return (rc);
 +}
 +
 +
 +/**
 + * Register a sensor listener.  This allows a calling application to receive
 + * callbacks for data from a given sensor object.
 + *
 + * For more information on the type of callbacks available, see the documentation
 + * for the sensor listener structure.
 + *
 + * @param The sensor to register a listener on
 + * @param The listener to register onto the sensor
 + *
 + * @return 0 on success, non-zero error code on failure.
 + */
 +int
 +sensor_register_listener(struct sensor *sensor,
 +        struct sensor_listener *listener)
 +{
 +    int rc;
 +
 +    rc = sensor_lock(sensor);
 +    if (rc != 0) {
 +        goto err;
 +    }
 +
 +    SLIST_INSERT_HEAD(&sensor->s_listener_list, listener, sl_next);
 +
 +    sensor_unlock(sensor);
 +
 +    return (0);
 +err:
 +    return (rc);
 +}
 +
 +int
 +sensor_unregister_listener(struct sensor *sensor,
 +        struct sensor_listener *listener)
 +{
 +    int rc;
 +
 +    rc = sensor_lock(sensor);
 +    if (rc != 0) {
 +        goto err;
 +    }
 +
 +    /* Remove this entry from the list */
 +    SLIST_REMOVE(&sensor->s_listener_list, listener, sensor_listener,
 +            sl_next);
 +
 +    sensor_unlock(sensor);
 +
 +    return (0);
 +err:
 +    return (rc);
 +}
 +
 +
 +struct sensor_read_ctx {
 +    sensor_data_func_t user_func;
 +    void *user_arg;
 +};
 +
 +static int
 +sensor_read_data_func(struct sensor *sensor, void *arg, void *data)
 +{
 +    struct sensor_listener *listener;
 +    struct sensor_read_ctx *ctx;
 +
 +    /* Notify all listeners first */
 +    SLIST_FOREACH(listener, &sensor->s_listener_list, sl_next) {
 +        listener->sl_func(sensor, listener->sl_arg, data);
 +    }
 +
 +    /* Call data function */
 +    ctx = (struct sensor_read_ctx *) arg;
 +    if (ctx->user_func != NULL) {
 +        return (ctx->user_func(sensor, ctx->user_arg, data));
 +    } else {
 +        return (0);
 +    }
 +}
 +
 +/**
 + * Read the data for sensor type "type," from the sensor, "sensor" and
 + * return the result into the "value" parameter.
 + *
 + * @param The senssor to read data from
 + * @param The type of sensor data to read from the sensor
 + * @param The callback to call for data returned from that sensor
 + * @param The argument to pass to this callback.
 + * @param Timeout before aborting sensor read
 + *
 + * @return 0 on success, non-zero on failure.
 + */
 +int
 +sensor_read(struct sensor *sensor, sensor_type_t type,
 +        sensor_data_func_t data_func, void *arg, uint32_t timeout)
 +{
 +    struct sensor_read_ctx src;
 +    int rc;
 +
 +    rc = sensor_lock(sensor);
 +    if (rc != 0) {
 +        goto done;
 +    }
 +
 +    src.user_func = data_func;
 +    src.user_arg = arg;
 +
 +    rc = sensor->s_funcs->sd_read(sensor, type, sensor_read_data_func, &src,
 +            timeout);
 +
 +    sensor_unlock(sensor);
 +
 +done:
 +    return (rc);
 +}
 +

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/2681044e/net/oic/include/oic/oc_ri.h
----------------------------------------------------------------------
diff --cc net/oic/include/oic/oc_ri.h
index e58af0b,d2f0f2e..5a81c52
--- a/net/oic/include/oic/oc_ri.h
+++ b/net/oic/include/oic/oc_ri.h
@@@ -97,13 -97,13 +97,23 @@@ typedef enum 
  
  typedef struct oc_resource oc_resource_t;
  
++<<<<<<< HEAD
 +typedef struct {
 +  oc_endpoint_t *origin;
 +  oc_resource_t *resource;
 +  const char *query;
 +  int query_len;
 +  oc_response_t *response;
 +  void *packet;
++=======
+ typedef struct oc_request {
+     oc_endpoint_t *origin;
+     oc_resource_t *resource;
+     const char *query;
+     int query_len;
+     oc_response_t *response;
+     struct coap_packet_rx *packet;
++>>>>>>> develop
  } oc_request_t;
  
  typedef void (*oc_request_handler_t)(oc_request_t *, oc_interface_mask_t);
@@@ -150,9 -150,10 +160,16 @@@ int oc_ri_get_query_value(const char *q
  oc_interface_mask_t oc_ri_get_interface_mask(char *iface, int if_len);
  
  typedef struct coap_packet coap_packet_t;
++<<<<<<< HEAD
 +bool oc_ri_invoke_coap_entity_handler(coap_packet_t *request,
 +                                      coap_packet_t *response,
 +                                      int32_t *offset, oc_endpoint_t *endpoint);
++=======
+ struct coap_packet_rx;
+ bool oc_ri_invoke_coap_entity_handler(struct coap_packet_rx *request,
+                                       coap_packet_t *response, int32_t *offset,
+                                       oc_endpoint_t *endpoint);
++>>>>>>> develop
  
  #ifdef __cplusplus
  }

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/2681044e/net/oic/src/api/oc_buffer.c
----------------------------------------------------------------------
diff --cc net/oic/src/api/oc_buffer.c
index 1df8b8d,9857eaf..5a0af49
--- a/net/oic/src/api/oc_buffer.c
+++ b/net/oic/src/api/oc_buffer.c
@@@ -32,9 -32,6 +32,12 @@@
  
  #include "port/mynewt/adaptor.h"
  
++<<<<<<< HEAD
 +static struct os_mempool oc_buffers;
 +static uint8_t oc_buffer_area[OS_MEMPOOL_BYTES(1, sizeof(oc_message_t))];
 +
++=======
++>>>>>>> develop
  static struct os_mqueue oc_inq;
  static struct os_mqueue oc_outq;
  
@@@ -70,28 -50,6 +56,31 @@@ oc_allocate_mbuf(struct oc_endpoint *oe
  }
  
  void
++<<<<<<< HEAD
 +oc_message_add_ref(oc_message_t *message)
 +{
 +    if (message) {
 +        message->ref_count++;
 +    }
 +}
 +
 +void
 +oc_message_unref(oc_message_t *message)
 +{
 +    if (message) {
 +        assert(message->ref_count > 0);
 +        message->ref_count--;
 +        if (message->ref_count == 0) {
 +            os_memblock_put(&oc_buffers, message);
 +            OC_LOG_DEBUG("buffer: freed oc_message; free: %d\n",
 +              oc_buffers.mp_num_free);
 +        }
 +    }
 +}
 +
 +void
++=======
++>>>>>>> develop
  oc_recv_message(struct os_mbuf *m)
  {
      int rc;
@@@ -155,43 -112,25 +143,55 @@@ oc_buffer_rx(struct os_event *ev
  #endif
  
      while ((m = os_mqueue_get(&oc_inq)) != NULL) {
-         msg = oc_allocate_message();
-         if (!msg) {
-             goto free_msg;
-         }
          OC_LOG_DEBUG("oc_buffer_rx: ");
          OC_LOG_ENDPOINT(LOG_LEVEL_DEBUG, OC_MBUF_ENDPOINT(m));
++<<<<<<< HEAD
 +
 +        if (OS_MBUF_PKTHDR(m)->omp_len > MAX_PAYLOAD_SIZE) {
 +            STATS_INC(coap_stats, itoobig);
 +            goto free_msg;
 +        }
 +        if (os_mbuf_copydata(m, 0, OS_MBUF_PKTHDR(m)->omp_len, msg->data)) {
 +            STATS_INC(coap_stats, imem);
 +            goto free_msg;
 +        }
 +        memcpy(&msg->endpoint, OC_MBUF_ENDPOINT(m), sizeof(msg->endpoint));
 +        msg->length = OS_MBUF_PKTHDR(m)->omp_len;
 +        os_mbuf_free_chain(m);
 +        m = NULL;
++=======
++>>>>>>> develop
  
  #ifdef OC_SECURITY
+         /*
+          * XXX make sure first byte is within first mbuf
+          */
          b = m->om_data[0];
          if (b > 19 && b < 64) {
              OC_LOG_DEBUG("oc_buffer_rx: encrypted request\n");
              oc_process_post(&oc_dtls_handler, oc_events[UDP_TO_DTLS_EVENT], m);
          } else {
++<<<<<<< HEAD
 +            coap_receive(msg);
 +        }
 +#else
 +        coap_receive(msg);
 +#endif
 +free_msg:
 +        if (msg) {
 +            oc_message_unref(msg);
++=======
+             coap_receive(m);
+         }
+ #else
+         coap_receive(&m);
+ #endif
+         if (m) {
+             os_mbuf_free_chain(m);
++>>>>>>> develop
 +        }
 +        if (m) {
 +            os_mbuf_free_chain(m);
          }
      }
  }
@@@ -199,8 -138,6 +199,11 @@@
  void
  oc_buffer_init(void)
  {
++<<<<<<< HEAD
 +    os_mempool_init(&oc_buffers, 1, sizeof(oc_message_t), oc_buffer_area,
 +                    "oc_bufs");
++=======
++>>>>>>> develop
      os_mqueue_init(&oc_inq, oc_buffer_rx, NULL);
      os_mqueue_init(&oc_outq, oc_buffer_tx, NULL);
  }

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/2681044e/net/oic/src/api/oc_discovery.c
----------------------------------------------------------------------
diff --cc net/oic/src/api/oc_discovery.c
index 6427056,066764c..3c74ac8
--- a/net/oic/src/api/oc_discovery.c
+++ b/net/oic/src/api/oc_discovery.c
@@@ -136,6 -136,6 +136,7 @@@ oc_core_discovery_handler(oc_request_t 
      rt_len = oc_ri_get_query_value(req->query, req->query_len, "rt", &rt);
  
      oc_uuid_to_str(oc_core_get_device_id(0), uuid, sizeof(uuid));
++<<<<<<< HEAD
  
      switch (interface) {
      case OC_IF_LL: {
@@@ -157,6 -157,6 +158,29 @@@
  
      int response_length = oc_rep_finalize();
  
++=======
++
++    switch (interface) {
++    case OC_IF_LL: {
++        oc_rep_start_links_array();
++        matches = process_device_object(oc_rep_array(links), uuid, rt, rt_len);
++        oc_rep_end_links_array();
++    } break;
++    case OC_IF_BASELINE: {
++        oc_rep_start_root_object();
++        oc_process_baseline_interface(req->resource);
++        oc_rep_set_array(root, links);
++        matches = process_device_object(oc_rep_array(links), uuid, rt, rt_len);
++        oc_rep_close_array(root, links);
++        oc_rep_end_root_object();
++    } break;
++    default:
++        break;
++    }
++
++    int response_length = oc_rep_finalize();
++
++>>>>>>> develop
      if (matches && response_length > 0) {
          req->response->response_buffer->response_length = response_length;
          req->response->response_buffer->code = oc_status_code(OC_STATUS_OK);

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/2681044e/net/oic/src/api/oc_rep.c
----------------------------------------------------------------------
diff --cc net/oic/src/api/oc_rep.c
index 2e70582,c7022d8..1337f2e
--- a/net/oic/src/api/oc_rep.c
+++ b/net/oic/src/api/oc_rep.c
@@@ -23,7 -23,7 +23,11 @@@
  #include "port/oc_assert.h"
  #include "api/oc_priv.h"
  #include <tinycbor/cbor_mbuf_writer.h>
++<<<<<<< HEAD
 +#include <tinycbor/cbor_buf_reader.h>
++=======
+ #include <tinycbor/cbor_mbuf_reader.h>
++>>>>>>> develop
  
  #ifdef OC_CLIENT
  static struct os_mempool oc_rep_objects;
@@@ -31,11 -31,10 +35,18 @@@ static uint8_t oc_rep_objects_area[OS_M
        sizeof(oc_rep_t))];
  #endif
  
++<<<<<<< HEAD
 +static const CborEncoder g_empty;
 +static struct os_mbuf *g_outm;
 +CborEncoder g_encoder, root_map, links_array;
 +CborError g_err;
 +struct CborMbufWriter g_buf_writer;
++=======
+ static struct os_mbuf *g_outm;
+ CborEncoder g_encoder, root_map, links_array;
+ CborError g_err;
+ struct cbor_mbuf_writer g_buf_writer;
++>>>>>>> develop
  
  void
  oc_rep_new(struct os_mbuf *m)

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/2681044e/net/oic/src/api/oc_ri.c
----------------------------------------------------------------------
diff --cc net/oic/src/api/oc_ri.c
index 2f0faea,d6180a6..2266a9b
--- a/net/oic/src/api/oc_ri.c
+++ b/net/oic/src/api/oc_ri.c
@@@ -357,7 -347,7 +347,11 @@@ does_interface_support_method(oc_resour
  }
  
  bool
++<<<<<<< HEAD
 +oc_ri_invoke_coap_entity_handler(coap_packet_t *request,
++=======
+ oc_ri_invoke_coap_entity_handler(struct coap_packet_rx *request,
++>>>>>>> develop
                                   coap_packet_t *response, int32_t *offset,
                                   oc_endpoint_t *endpoint)
  {

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/2681044e/net/oic/src/api/oc_server_api.c
----------------------------------------------------------------------
diff --cc net/oic/src/api/oc_server_api.c
index f697f5c,61acdcd..94a5e93
--- a/net/oic/src/api/oc_server_api.c
+++ b/net/oic/src/api/oc_server_api.c
@@@ -216,7 -216,7 +216,11 @@@ oc_interate_query(oc_request_t *request
    return 1;
  }
  
++<<<<<<< HEAD
 +#if 0 /* XXXX fix this */
++=======
+ #if MYNEWT_VAL(OC_SEPARATE_RESPONSES)
++>>>>>>> develop
  void
  oc_indicate_separate_response(oc_request_t *request,
                                oc_separate_response_t *response)

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/2681044e/net/oic/src/messaging/coap/observe.c
----------------------------------------------------------------------
diff --cc net/oic/src/messaging/coap/observe.c
index 7bc8537,234b2da..499cdb5
--- a/net/oic/src/messaging/coap/observe.c
+++ b/net/oic/src/messaging/coap/observe.c
@@@ -293,11 -297,13 +297,16 @@@ coap_notify_observers(oc_resource_t *re
                      coap_clear_transaction(transaction);
                  }
              }
+ #if MYNEWT_VAL(OC_SEPARATE_RESPONSES)
          }
+ #endif
+     }
+     if (m) {
+         os_mbuf_free_chain(m);
      }
 +    if (m) {
 +        os_mbuf_free_chain(m);
 +    }
      return num_observers;
  }
  /*---------------------------------------------------------------------------*/

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/2681044e/net/oic/src/port/mynewt/ble_adaptor.c
----------------------------------------------------------------------
diff --cc net/oic/src/port/mynewt/ble_adaptor.c
index 8ede614,85eb1f5..6a2ed74
--- a/net/oic/src/port/mynewt/ble_adaptor.c
+++ b/net/oic/src/port/mynewt/ble_adaptor.c
@@@ -176,6 -177,7 +177,10 @@@ oc_ble_reass(struct os_mbuf *om1, uint1
            coap_tcp_msg_size(hdr, sizeof(hdr)) > pkt2->omp_len) {
              STAILQ_INSERT_TAIL(&oc_ble_reass_q, pkt2, omp_next);
          } else {
++<<<<<<< HEAD
++=======
+             STATS_INC(oc_ble_stats, iframe);
++>>>>>>> develop
              oc_recv_message(om2);
          }
      }
@@@ -283,9 -285,9 +288,15 @@@ oc_ble_frag(struct os_mbuf *m, uint16_
          STAILQ_NEXT(pkt, omp_next) = NULL;
          return 0;
      }
++<<<<<<< HEAD
 +    off = pkt->omp_len % mtu;
 +
 +    while (off > mtu) {
++=======
+ 
+     off = pkt->omp_len - (pkt->omp_len % mtu);
+     while (off >= mtu) {
++>>>>>>> develop
          n = os_msys_get_pkthdr(mtu, 0);
          if (!n) {
              goto err;
@@@ -337,7 -338,11 +347,15 @@@ oc_send_buffer_gatt(struct os_mbuf *m
      STATS_INCN(oc_ble_stats, obytes, OS_MBUF_PKTLEN(m));
  
      mtu = ble_att_mtu(conn_handle);
++<<<<<<< HEAD
 +    assert(mtu > 4);
++=======
+     if (mtu < 4) {
+         oc_ble_coap_conn_del(conn_handle);
+         os_mbuf_free_chain(m);
+         return;
+     }
++>>>>>>> develop
      mtu -= 3; /* # of bytes for ATT notification base */
  
      if (oc_ble_frag(m, mtu)) {