aboutsummaryrefslogtreecommitdiffstats
path: root/thirdparty/prime
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2018-05-07 19:59:35 +0200
committerHarald Welte <laforge@gnumonks.org>2018-05-07 19:59:35 +0200
commit3634cc8e5d3124e3cf6cf46c0f1d5385ff511426 (patch)
tree1af66e339e767fc62d588766fd8d3b26edd29e3b /thirdparty/prime
initial check-in of ASF 3.39.0
Diffstat (limited to 'thirdparty/prime')
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/app_emu.c92
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/app_emu.h62
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/app_emu_base.c974
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/app_emu_common.c173
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/app_emu_common.h188
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/main.c365
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/FreeRTOSConfig.h154
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_app_emu.h61
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_board.h105
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_buart_if.h68
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_busart_if.h68
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_clock.h108
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_example.h52
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_oss.h53
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_pplc_if.h69
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_prime.h100
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_usi.h63
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/gcc/asf.h171
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/gcc/config.mk219
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/iar/apps_prime_base_appemu.eww6
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/iar/apps_prime_base_appemu_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/iar/apps_prime_base_appemu_flash.ewp2908
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/iar/asf.h171
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/FreeRTOSConfig.h154
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_app_emu.h61
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_board.h69
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_buart_if.h68
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_busart_if.h68
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_clock.h108
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_example.h52
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_oss.h53
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_pplc_if.h69
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_prime.h61
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_usi.h63
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/gcc/asf.h171
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/gcc/config.mk219
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/iar/apps_prime_base_appemu.eww6
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/iar/apps_prime_base_appemu_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/iar/apps_prime_base_appemu_flash.ewp2890
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/iar/asf.h171
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cms16c_sam4cms_db/FreeRTOSConfig.h154
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cms16c_sam4cms_db/conf_app_emu.h61
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cms16c_sam4cms_db/conf_board.h72
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cms16c_sam4cms_db/conf_buart_if.h68
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cms16c_sam4cms_db/conf_busart_if.h68
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cms16c_sam4cms_db/conf_clock.h108
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cms16c_sam4cms_db/conf_example.h52
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cms16c_sam4cms_db/conf_oss.h53
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cms16c_sam4cms_db/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cms16c_sam4cms_db/conf_pplc_if.h69
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cms16c_sam4cms_db/conf_prime.h100
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cms16c_sam4cms_db/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cms16c_sam4cms_db/conf_usi.h63
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cms16c_sam4cms_db/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cms16c_sam4cms_db/gcc/asf.h171
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cms16c_sam4cms_db/gcc/config.mk219
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cms16c_sam4cms_db/iar/apps_prime_base_appemu.eww6
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cms16c_sam4cms_db/iar/apps_prime_base_appemu_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cms16c_sam4cms_db/iar/apps_prime_base_appemu_flash.ewp2890
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cms16c_sam4cms_db/iar/asf.h171
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/FreeRTOSConfig.h153
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/conf_app_emu.h61
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/conf_board.h67
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/conf_buart_if.h68
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/conf_busart_if.h68
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/conf_c42364a_slcdc.h67
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/conf_clock.h109
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/conf_example.h52
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/conf_oss.h53
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/conf_prime.h61
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/conf_slcdc.h51
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/conf_sleepmgr.h49
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/conf_usi.h64
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/gcc/asf.h186
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/gcc/config.mk227
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/iar/apps_prime_base_appemu.eww6
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/iar/apps_prime_base_appemu_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/iar/apps_prime_base_appemu_flash.ewp2942
-rw-r--r--thirdparty/prime/apps/prime_base_appemu/sam4cp16b_sam4cp16bmb/iar/asf.h186
-rw-r--r--thirdparty/prime/apps/prime_base_serial/main.c289
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4c16c_sam4c_ek/FreeRTOSConfig.h154
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4c16c_sam4c_ek/conf_board.h105
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4c16c_sam4c_ek/conf_buart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4c16c_sam4c_ek/conf_busart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4c16c_sam4c_ek/conf_clock.h108
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4c16c_sam4c_ek/conf_example.h51
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4c16c_sam4c_ek/conf_oss.h53
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4c16c_sam4c_ek/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4c16c_sam4c_ek/conf_pplc_if.h69
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4c16c_sam4c_ek/conf_prime.h100
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4c16c_sam4c_ek/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4c16c_sam4c_ek/conf_usi.h66
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4c16c_sam4c_ek/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4c16c_sam4c_ek/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4c16c_sam4c_ek/gcc/asf.h183
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4c16c_sam4c_ek/gcc/config.mk222
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4c16c_sam4c_ek/iar/apps_prime_base_serial.eww6
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4c16c_sam4c_ek/iar/apps_prime_base_serial_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4c16c_sam4c_ek/iar/apps_prime_base_serial_flash.ewp2931
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4c16c_sam4c_ek/iar/asf.h183
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cmp16c_sam4cmp_db/FreeRTOSConfig.h154
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cmp16c_sam4cmp_db/conf_board.h69
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cmp16c_sam4cmp_db/conf_buart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cmp16c_sam4cmp_db/conf_busart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cmp16c_sam4cmp_db/conf_clock.h108
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cmp16c_sam4cmp_db/conf_example.h51
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cmp16c_sam4cmp_db/conf_oss.h53
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cmp16c_sam4cmp_db/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cmp16c_sam4cmp_db/conf_pplc_if.h69
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cmp16c_sam4cmp_db/conf_prime.h61
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cmp16c_sam4cmp_db/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cmp16c_sam4cmp_db/conf_usi.h66
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cmp16c_sam4cmp_db/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cmp16c_sam4cmp_db/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cmp16c_sam4cmp_db/gcc/asf.h183
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cmp16c_sam4cmp_db/gcc/config.mk222
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cmp16c_sam4cmp_db/iar/apps_prime_base_serial.eww6
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cmp16c_sam4cmp_db/iar/apps_prime_base_serial_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cmp16c_sam4cmp_db/iar/apps_prime_base_serial_flash.ewp2913
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cmp16c_sam4cmp_db/iar/asf.h183
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cms16c_sam4cms_db/FreeRTOSConfig.h154
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cms16c_sam4cms_db/conf_board.h69
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cms16c_sam4cms_db/conf_buart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cms16c_sam4cms_db/conf_busart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cms16c_sam4cms_db/conf_clock.h108
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cms16c_sam4cms_db/conf_example.h51
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cms16c_sam4cms_db/conf_oss.h53
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cms16c_sam4cms_db/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cms16c_sam4cms_db/conf_pplc_if.h69
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cms16c_sam4cms_db/conf_prime.h100
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cms16c_sam4cms_db/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cms16c_sam4cms_db/conf_usi.h66
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cms16c_sam4cms_db/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cms16c_sam4cms_db/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cms16c_sam4cms_db/gcc/asf.h183
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cms16c_sam4cms_db/gcc/config.mk222
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cms16c_sam4cms_db/iar/apps_prime_base_serial.eww6
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cms16c_sam4cms_db/iar/apps_prime_base_serial_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cms16c_sam4cms_db/iar/apps_prime_base_serial_flash.ewp2913
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cms16c_sam4cms_db/iar/asf.h183
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/FreeRTOSConfig.h153
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/conf_board.h97
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/conf_buart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/conf_busart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/conf_c42364a_slcdc.h67
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/conf_clock.h109
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/conf_example.h51
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/conf_oss.h53
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/conf_prime.h61
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/conf_slcdc.h51
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/conf_sleepmgr.h49
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/conf_usi.h64
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/gcc/asf.h198
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/gcc/config.mk230
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/iar/apps_prime_base_serial.eww6
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/iar/apps_prime_base_serial_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/iar/apps_prime_base_serial_flash.ewp2965
-rw-r--r--thirdparty/prime/apps/prime_base_serial/sam4cp16b_sam4cp16bmb/iar/asf.h198
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/dlms_emu.c872
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/dlms_emu.h67
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/linker_scripts/gcc/sam4cp16b_0_flash.ld163
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/linker_scripts/iar/sam4cp16b_0_flash.icf34
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/main.c333
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4c16c_sam4c_ek/FreeRTOSConfig.h153
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4c16c_sam4c_ek/conf_board.h105
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4c16c_sam4c_ek/conf_buart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4c16c_sam4c_ek/conf_busart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4c16c_sam4c_ek/conf_clock.h108
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4c16c_sam4c_ek/conf_example.h54
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4c16c_sam4c_ek/conf_oss.h53
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4c16c_sam4c_ek/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4c16c_sam4c_ek/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4c16c_sam4c_ek/conf_prime.h61
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4c16c_sam4c_ek/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4c16c_sam4c_ek/conf_usi.h59
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4c16c_sam4c_ek/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4c16c_sam4c_ek/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4c16c_sam4c_ek/gcc/asf.h170
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4c16c_sam4c_ek/gcc/config.mk217
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4c16c_sam4c_ek/iar/apps_prime_service_dlmsemu.eww6
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4c16c_sam4c_ek/iar/apps_prime_service_dlmsemu_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4c16c_sam4c_ek/iar/apps_prime_service_dlmsemu_flash.ewp2893
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4c16c_sam4c_ek/iar/asf.h170
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cmp16c_sam4cmp_db/FreeRTOSConfig.h153
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cmp16c_sam4cmp_db/conf_board.h69
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cmp16c_sam4cmp_db/conf_buart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cmp16c_sam4cmp_db/conf_busart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cmp16c_sam4cmp_db/conf_clock.h108
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cmp16c_sam4cmp_db/conf_example.h54
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cmp16c_sam4cmp_db/conf_oss.h53
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cmp16c_sam4cmp_db/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cmp16c_sam4cmp_db/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cmp16c_sam4cmp_db/conf_prime.h61
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cmp16c_sam4cmp_db/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cmp16c_sam4cmp_db/conf_usi.h59
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cmp16c_sam4cmp_db/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cmp16c_sam4cmp_db/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cmp16c_sam4cmp_db/gcc/asf.h170
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cmp16c_sam4cmp_db/gcc/config.mk217
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cmp16c_sam4cmp_db/iar/apps_prime_service_dlmsemu.eww6
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cmp16c_sam4cmp_db/iar/apps_prime_service_dlmsemu_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cmp16c_sam4cmp_db/iar/apps_prime_service_dlmsemu_flash.ewp2875
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cmp16c_sam4cmp_db/iar/asf.h170
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cms16c_sam4cms_db/FreeRTOSConfig.h163
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cms16c_sam4cms_db/conf_board.h69
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cms16c_sam4cms_db/conf_buart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cms16c_sam4cms_db/conf_busart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cms16c_sam4cms_db/conf_clock.h108
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cms16c_sam4cms_db/conf_example.h54
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cms16c_sam4cms_db/conf_oss.h53
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cms16c_sam4cms_db/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cms16c_sam4cms_db/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cms16c_sam4cms_db/conf_prime.h61
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cms16c_sam4cms_db/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cms16c_sam4cms_db/conf_usi.h59
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cms16c_sam4cms_db/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cms16c_sam4cms_db/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cms16c_sam4cms_db/gcc/asf.h170
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cms16c_sam4cms_db/gcc/config.mk217
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cms16c_sam4cms_db/iar/apps_prime_service_dlmsemu.eww6
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cms16c_sam4cms_db/iar/apps_prime_service_dlmsemu_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cms16c_sam4cms_db/iar/apps_prime_service_dlmsemu_flash.ewp2875
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cms16c_sam4cms_db/iar/asf.h170
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/FreeRTOSConfig.h153
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/StdTypes.h121
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/conf_board.h97
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/conf_buart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/conf_busart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/conf_c42364a_slcdc.h67
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/conf_clock.h109
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/conf_example.h54
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/conf_oss.h53
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/conf_prime.h61
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/conf_slcdc.h51
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/conf_sleepmgr.h49
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/conf_usi.h59
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/gcc/asf.h185
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/gcc/config.mk225
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/iar/apps_prime_service_dlmsemu.eww6
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/iar/apps_prime_service_dlmsemu_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/iar/apps_prime_service_dlmsemu_flash.ewp2927
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu/sam4cp16b_sam4cp16bmb/iar/asf.h185
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/dlms_emu.c844
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/dlms_emu.h56
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/linker_scripts/gcc/sam4cp16b_0_flash.ld163
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/linker_scripts/iar/sam4cp16b_0_flash.icf34
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/main.c338
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4c16c_sam4c_ek/conf_board.h105
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4c16c_sam4c_ek/conf_buart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4c16c_sam4c_ek/conf_busart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4c16c_sam4c_ek/conf_clock.h108
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4c16c_sam4c_ek/conf_example.h56
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4c16c_sam4c_ek/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4c16c_sam4c_ek/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4c16c_sam4c_ek/conf_prime.h61
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4c16c_sam4c_ek/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4c16c_sam4c_ek/conf_usi.h59
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4c16c_sam4c_ek/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4c16c_sam4c_ek/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4c16c_sam4c_ek/gcc/asf.h153
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4c16c_sam4c_ek/gcc/config.mk205
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4c16c_sam4c_ek/iar/apps_prime_service_dlmsemu_uc.eww6
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4c16c_sam4c_ek/iar/apps_prime_service_dlmsemu_uc_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4c16c_sam4c_ek/iar/apps_prime_service_dlmsemu_uc_flash.ewp2775
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4c16c_sam4c_ek/iar/asf.h153
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cmp16c_sam4cmp_db/conf_board.h69
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cmp16c_sam4cmp_db/conf_buart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cmp16c_sam4cmp_db/conf_busart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cmp16c_sam4cmp_db/conf_clock.h108
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cmp16c_sam4cmp_db/conf_example.h56
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cmp16c_sam4cmp_db/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cmp16c_sam4cmp_db/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cmp16c_sam4cmp_db/conf_prime.h61
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cmp16c_sam4cmp_db/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cmp16c_sam4cmp_db/conf_usi.h59
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cmp16c_sam4cmp_db/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cmp16c_sam4cmp_db/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cmp16c_sam4cmp_db/gcc/asf.h153
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cmp16c_sam4cmp_db/gcc/config.mk205
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cmp16c_sam4cmp_db/iar/apps_prime_service_dlmsemu_uc.eww6
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cmp16c_sam4cmp_db/iar/apps_prime_service_dlmsemu_uc_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cmp16c_sam4cmp_db/iar/apps_prime_service_dlmsemu_uc_flash.ewp2757
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cmp16c_sam4cmp_db/iar/asf.h153
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cms16c_sam4cms_db/conf_board.h69
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cms16c_sam4cms_db/conf_buart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cms16c_sam4cms_db/conf_busart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cms16c_sam4cms_db/conf_clock.h108
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cms16c_sam4cms_db/conf_example.h56
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cms16c_sam4cms_db/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cms16c_sam4cms_db/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cms16c_sam4cms_db/conf_prime.h61
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cms16c_sam4cms_db/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cms16c_sam4cms_db/conf_usi.h59
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cms16c_sam4cms_db/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cms16c_sam4cms_db/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cms16c_sam4cms_db/gcc/asf.h153
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cms16c_sam4cms_db/gcc/config.mk205
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cms16c_sam4cms_db/iar/apps_prime_service_dlmsemu_uc.eww6
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cms16c_sam4cms_db/iar/apps_prime_service_dlmsemu_uc_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cms16c_sam4cms_db/iar/apps_prime_service_dlmsemu_uc_flash.ewp2757
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cms16c_sam4cms_db/iar/asf.h153
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cp16b_sam4cp16bmb/conf_board.h97
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cp16b_sam4cp16bmb/conf_buart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cp16b_sam4cp16bmb/conf_busart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cp16b_sam4cp16bmb/conf_c42364a_slcdc.h67
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cp16b_sam4cp16bmb/conf_clock.h109
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cp16b_sam4cp16bmb/conf_example.h56
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cp16b_sam4cp16bmb/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cp16b_sam4cp16bmb/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cp16b_sam4cp16bmb/conf_prime.h61
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cp16b_sam4cp16bmb/conf_slcdc.h51
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cp16b_sam4cp16bmb/conf_sleepmgr.h49
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cp16b_sam4cp16bmb/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cp16b_sam4cp16bmb/conf_usi.h59
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cp16b_sam4cp16bmb/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cp16b_sam4cp16bmb/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cp16b_sam4cp16bmb/gcc/asf.h168
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cp16b_sam4cp16bmb/gcc/config.mk213
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cp16b_sam4cp16bmb/iar/apps_prime_service_dlmsemu_uc.eww6
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cp16b_sam4cp16bmb/iar/apps_prime_service_dlmsemu_uc_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cp16b_sam4cp16bmb/iar/apps_prime_service_dlmsemu_uc_flash.ewp2809
-rw-r--r--thirdparty/prime/apps/prime_service_DLMSemu_uc/sam4cp16b_sam4cp16bmb/iar/asf.h168
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/app_emu.c92
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/app_emu.h62
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/app_emu_common.c167
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/app_emu_common.h183
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/app_emu_service.c482
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/linker_scripts/gcc/sam4cp16b_0_flash.ld163
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/linker_scripts/iar/sam4cp16b_0_flash.icf34
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/main.c363
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4c16c_sam4c_ek/FreeRTOSConfig.h153
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4c16c_sam4c_ek/conf_app_emu.h61
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4c16c_sam4c_ek/conf_board.h105
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4c16c_sam4c_ek/conf_buart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4c16c_sam4c_ek/conf_busart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4c16c_sam4c_ek/conf_clock.h108
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4c16c_sam4c_ek/conf_example.h52
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4c16c_sam4c_ek/conf_oss.h53
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4c16c_sam4c_ek/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4c16c_sam4c_ek/conf_pplc_if.h69
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4c16c_sam4c_ek/conf_prime.h61
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4c16c_sam4c_ek/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4c16c_sam4c_ek/conf_usi.h60
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4c16c_sam4c_ek/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4c16c_sam4c_ek/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4c16c_sam4c_ek/gcc/asf.h173
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4c16c_sam4c_ek/gcc/config.mk221
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4c16c_sam4c_ek/iar/apps_prime_service_appemu.eww6
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4c16c_sam4c_ek/iar/apps_prime_service_appemu_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4c16c_sam4c_ek/iar/apps_prime_service_appemu_flash.ewp2921
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4c16c_sam4c_ek/iar/asf.h173
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cmp16c_sam4cmp_db/FreeRTOSConfig.h153
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cmp16c_sam4cmp_db/conf_app_emu.h61
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cmp16c_sam4cmp_db/conf_board.h69
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cmp16c_sam4cmp_db/conf_buart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cmp16c_sam4cmp_db/conf_busart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cmp16c_sam4cmp_db/conf_clock.h108
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cmp16c_sam4cmp_db/conf_example.h52
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cmp16c_sam4cmp_db/conf_oss.h53
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cmp16c_sam4cmp_db/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cmp16c_sam4cmp_db/conf_pplc_if.h69
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cmp16c_sam4cmp_db/conf_prime.h61
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cmp16c_sam4cmp_db/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cmp16c_sam4cmp_db/conf_usi.h60
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cmp16c_sam4cmp_db/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cmp16c_sam4cmp_db/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cmp16c_sam4cmp_db/gcc/asf.h173
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cmp16c_sam4cmp_db/gcc/config.mk221
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cmp16c_sam4cmp_db/iar/apps_prime_service_appemu.eww6
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cmp16c_sam4cmp_db/iar/apps_prime_service_appemu_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cmp16c_sam4cmp_db/iar/apps_prime_service_appemu_flash.ewp2903
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cmp16c_sam4cmp_db/iar/asf.h173
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cms16c_sam4cms_db/FreeRTOSConfig.h153
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cms16c_sam4cms_db/conf_app_emu.h61
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cms16c_sam4cms_db/conf_board.h69
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cms16c_sam4cms_db/conf_buart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cms16c_sam4cms_db/conf_busart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cms16c_sam4cms_db/conf_clock.h108
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cms16c_sam4cms_db/conf_example.h52
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cms16c_sam4cms_db/conf_oss.h53
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cms16c_sam4cms_db/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cms16c_sam4cms_db/conf_pplc_if.h69
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cms16c_sam4cms_db/conf_prime.h61
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cms16c_sam4cms_db/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cms16c_sam4cms_db/conf_usi.h60
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cms16c_sam4cms_db/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cms16c_sam4cms_db/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cms16c_sam4cms_db/gcc/asf.h173
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cms16c_sam4cms_db/gcc/config.mk221
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cms16c_sam4cms_db/iar/apps_prime_service_appemu.eww6
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cms16c_sam4cms_db/iar/apps_prime_service_appemu_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cms16c_sam4cms_db/iar/apps_prime_service_appemu_flash.ewp2903
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cms16c_sam4cms_db/iar/asf.h173
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/FreeRTOSConfig.h153
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/conf_app_emu.h61
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/conf_board.h97
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/conf_buart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/conf_busart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/conf_c42364a_slcdc.h67
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/conf_clock.h109
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/conf_example.h52
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/conf_oss.h53
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/conf_prime.h61
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/conf_slcdc.h51
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/conf_sleepmgr.h49
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/conf_usi.h60
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/gcc/asf.h188
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/gcc/config.mk229
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/iar/apps_prime_service_appemu.eww6
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/iar/apps_prime_service_appemu_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/iar/apps_prime_service_appemu_flash.ewp2955
-rw-r--r--thirdparty/prime/apps/prime_service_appemu/sam4cp16b_sam4cp16bmb/iar/asf.h188
-rw-r--r--thirdparty/prime/apps/prime_service_serial/linker_scripts/gcc/atpl230amb_flash.ld159
-rw-r--r--thirdparty/prime/apps/prime_service_serial/linker_scripts/gcc/sam4cp16b_0_flash.ld163
-rw-r--r--thirdparty/prime/apps/prime_service_serial/linker_scripts/iar/atpl230amb_flash.icf34
-rw-r--r--thirdparty/prime/apps/prime_service_serial/linker_scripts/iar/sam4cp16b_0_flash.icf34
-rw-r--r--thirdparty/prime/apps/prime_service_serial/main.c361
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4c16c_sam4c_ek/FreeRTOSConfig.h154
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4c16c_sam4c_ek/conf_board.h105
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4c16c_sam4c_ek/conf_buart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4c16c_sam4c_ek/conf_busart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4c16c_sam4c_ek/conf_clock.h108
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4c16c_sam4c_ek/conf_example.h52
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4c16c_sam4c_ek/conf_oss.h53
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4c16c_sam4c_ek/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4c16c_sam4c_ek/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4c16c_sam4c_ek/conf_prime.h61
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4c16c_sam4c_ek/conf_sleepmgr.h49
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4c16c_sam4c_ek/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4c16c_sam4c_ek/conf_usi.h62
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4c16c_sam4c_ek/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4c16c_sam4c_ek/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4c16c_sam4c_ek/gcc/asf.h179
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4c16c_sam4c_ek/gcc/config.mk221
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4c16c_sam4c_ek/iar/apps_prime_service_serial.eww6
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4c16c_sam4c_ek/iar/apps_prime_service_serial_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4c16c_sam4c_ek/iar/apps_prime_service_serial_flash.ewp2925
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4c16c_sam4c_ek/iar/asf.h179
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cmp16c_sam4cmp_db/FreeRTOSConfig.h154
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cmp16c_sam4cmp_db/conf_board.h69
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cmp16c_sam4cmp_db/conf_buart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cmp16c_sam4cmp_db/conf_busart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cmp16c_sam4cmp_db/conf_clock.h108
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cmp16c_sam4cmp_db/conf_example.h52
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cmp16c_sam4cmp_db/conf_oss.h53
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cmp16c_sam4cmp_db/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cmp16c_sam4cmp_db/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cmp16c_sam4cmp_db/conf_prime.h61
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cmp16c_sam4cmp_db/conf_sleepmgr.h49
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cmp16c_sam4cmp_db/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cmp16c_sam4cmp_db/conf_usi.h62
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cmp16c_sam4cmp_db/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cmp16c_sam4cmp_db/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cmp16c_sam4cmp_db/gcc/asf.h179
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cmp16c_sam4cmp_db/gcc/config.mk221
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cmp16c_sam4cmp_db/iar/apps_prime_service_serial.eww6
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cmp16c_sam4cmp_db/iar/apps_prime_service_serial_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cmp16c_sam4cmp_db/iar/apps_prime_service_serial_flash.ewp2907
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cmp16c_sam4cmp_db/iar/asf.h179
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cms16c_sam4cms_db/FreeRTOSConfig.h154
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cms16c_sam4cms_db/conf_board.h69
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cms16c_sam4cms_db/conf_buart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cms16c_sam4cms_db/conf_busart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cms16c_sam4cms_db/conf_clock.h108
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cms16c_sam4cms_db/conf_example.h52
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cms16c_sam4cms_db/conf_oss.h53
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cms16c_sam4cms_db/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cms16c_sam4cms_db/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cms16c_sam4cms_db/conf_prime.h61
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cms16c_sam4cms_db/conf_sleepmgr.h49
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cms16c_sam4cms_db/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cms16c_sam4cms_db/conf_usi.h62
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cms16c_sam4cms_db/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cms16c_sam4cms_db/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cms16c_sam4cms_db/gcc/asf.h179
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cms16c_sam4cms_db/gcc/config.mk221
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cms16c_sam4cms_db/iar/apps_prime_service_serial.eww6
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cms16c_sam4cms_db/iar/apps_prime_service_serial_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cms16c_sam4cms_db/iar/apps_prime_service_serial_flash.ewp2907
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cms16c_sam4cms_db/iar/asf.h179
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/FreeRTOSConfig.h154
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/conf_board.h97
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/conf_buart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/conf_busart_if.h64
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/conf_c42364a_slcdc.h67
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/conf_clock.h109
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/conf_example.h52
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/conf_oss.h53
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/conf_phy.h50
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/conf_prime.h61
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/conf_slcdc.h51
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/conf_sleepmgr.h49
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/conf_usi.h62
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/gcc/Makefile52
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/gcc/asf.h194
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/gcc/config.mk229
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/iar/apps_prime_service_serial.eww6
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/iar/apps_prime_service_serial_flash.ewd1655
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/iar/apps_prime_service_serial_flash.ewp2956
-rw-r--r--thirdparty/prime/apps/prime_service_serial/sam4cp16b_sam4cp16bmb/iar/asf.h194
-rw-r--r--thirdparty/prime/license.txt31
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/boot_regions_sam4c16c_0.h133
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/boot_regions_sam4cmp16c_0.h133
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/boot_regions_sam4cms16c_0.h133
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/boot_regions_sam4cp16b_0.h133
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/bootloader.c320
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/linker_scripts/gcc/atpl230amb_flash.ld159
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/linker_scripts/gcc/sam4c16c_0_flash.ld163
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/linker_scripts/gcc/sam4cmp16c_0_flash.ld163
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/linker_scripts/gcc/sam4cms16c_0_flash.ld163
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/linker_scripts/gcc/sam4cp16b_0_flash.ld163
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/linker_scripts/iar/atpl230amb_flash.icf34
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/linker_scripts/iar/sam4c16c_0_flash.icf34
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/linker_scripts/iar/sam4cmp16c_0_flash.icf34
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/linker_scripts/iar/sam4cms16c_0_flash.icf34
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/linker_scripts/iar/sam4cp16b_0_flash.icf34
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/module_config/conf_version.h45
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4c16c_sam4c_ek/conf_board.h105
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4c16c_sam4c_ek/conf_clock.h108
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4c16c_sam4c_ek/conf_sleepmgr.h49
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4c16c_sam4c_ek/conf_version.h45
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4c16c_sam4c_ek/iar/addons_bootloader.eww6
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4c16c_sam4c_ek/iar/addons_bootloader_flash.ewd1655
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4c16c_sam4c_ek/iar/addons_bootloader_flash.ewp2344
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4c16c_sam4c_ek/iar/asf.h87
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cmp16c_sam4cmpdb/conf_board.h72
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cmp16c_sam4cmpdb/conf_clock.h108
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cmp16c_sam4cmpdb/conf_sleepmgr.h49
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cmp16c_sam4cmpdb/conf_version.h45
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cmp16c_sam4cmpdb/iar/addons_bootloader.eww6
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cmp16c_sam4cmpdb/iar/addons_bootloader_flash.ewd1655
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cmp16c_sam4cmpdb/iar/addons_bootloader_flash.ewp2326
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cmp16c_sam4cmpdb/iar/asf.h87
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cms16c_sam4cmsdb/conf_board.h72
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cms16c_sam4cmsdb/conf_clock.h108
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cms16c_sam4cmsdb/conf_sleepmgr.h49
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cms16c_sam4cmsdb/conf_version.h45
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cms16c_sam4cmsdb/iar/addons_bootloader.eww6
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cms16c_sam4cmsdb/iar/addons_bootloader_flash.ewd1655
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cms16c_sam4cmsdb/iar/addons_bootloader_flash.ewp2326
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cms16c_sam4cmsdb/iar/asf.h87
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cp16b_sam4cp16bmb/conf_board.h97
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cp16b_sam4cp16bmb/conf_clock.h109
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cp16b_sam4cp16bmb/conf_sleepmgr.h49
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cp16b_sam4cp16bmb/conf_version.h45
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cp16b_sam4cp16bmb/iar/addons_bootloader.eww6
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cp16b_sam4cp16bmb/iar/addons_bootloader_flash.ewd1655
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cp16b_sam4cp16bmb/iar/addons_bootloader_flash.ewp2312
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/bootloader/sam4cp16b_sam4cp16bmb/iar/asf.h90
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/serial_if/doxygen/thirdparty.prime.mac_1_3.addons.mac_serial_if/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/serial_if/doxygen/thirdparty.prime.mac_1_3.addons.mac_serial_if/doxygen_module_mainpage.h58
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/serial_if/doxygen/thirdparty.prime.mac_1_3.addons.mlme_serial_if/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/serial_if/doxygen/thirdparty.prime.mac_1_3.addons.mlme_serial_if/doxygen_module_mainpage.h58
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/serial_if/doxygen/thirdparty.prime.mac_1_3.addons.plme_serial_if/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/serial_if/doxygen/thirdparty.prime.mac_1_3.addons.plme_serial_if/doxygen_module_mainpage.h58
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/serial_if/doxygen/thirdparty.prime.mac_1_3.addons.snf_serial_if/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/serial_if/doxygen/thirdparty.prime.mac_1_3.addons.snf_serial_if/doxygen_module_mainpage.h58
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/serial_if/serial_if_mac.c1273
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/serial_if/serial_if_mac.h82
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/serial_if/serial_if_mlme.c919
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/serial_if/serial_if_mlme.h82
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/serial_if/serial_if_plme.c337
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/serial_if/serial_if_plme.h82
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/serial_if/serial_if_sniffer.c370
-rw-r--r--thirdparty/prime/mac/mac_1_3/addons/serial_if/serial_if_sniffer.h84
-rw-r--r--thirdparty/prime/mac/mac_1_3/doxygen/thirdparty.prime.mac_1_3_base/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/mac/mac_1_3/doxygen/thirdparty.prime.mac_1_3_base/doxygen_module_mainpage.h58
-rw-r--r--thirdparty/prime/mac/mac_1_3/doxygen/thirdparty.prime.mac_1_3_service/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/mac/mac_1_3/doxygen/thirdparty.prime.mac_1_3_service/doxygen_module_mainpage.h58
-rw-r--r--thirdparty/prime/mac/mac_1_3/include/bmngt.h395
-rw-r--r--thirdparty/prime/mac/mac_1_3/include/mngl.h273
-rw-r--r--thirdparty/prime/mac/mac_1_3/include/prime.h817
-rw-r--r--thirdparty/prime/mac/mac_1_3/libs/gcc/libsam4c-mac13-bn-gcc.abin0 -> 409948 bytes
-rw-r--r--thirdparty/prime/mac/mac_1_3/libs/gcc/libsam4c-mac13-sn-gcc.abin0 -> 343012 bytes
-rw-r--r--thirdparty/prime/mac/mac_1_3/libs/iar/libsam4c-mac13-bn-iar.abin0 -> 836864 bytes
-rw-r--r--thirdparty/prime/mac/mac_1_3/libs/iar/libsam4c-mac13-sn-iar.abin0 -> 754364 bytes
-rw-r--r--thirdparty/prime/mac/mac_1_3/module_config/conf_mac.c102
-rw-r--r--thirdparty/prime/mac/mac_1_3/module_config/conf_mac.h58
-rw-r--r--thirdparty/prime/mac/mac_1_3/module_config/conf_prime.h61
-rw-r--r--thirdparty/prime/mac/mac_1_3/source/PrimeVersion.c58
-rw-r--r--thirdparty/prime/oss/doxygen/thirdparty.prime.oss/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/oss/doxygen/thirdparty.prime.oss/doxygen_module_mainpage.h58
-rw-r--r--thirdparty/prime/oss/module_config/conf_oss.h54
-rw-r--r--thirdparty/prime/oss/oss_if.c201
-rw-r--r--thirdparty/prime/oss/oss_if.h109
-rw-r--r--thirdparty/prime/pal/atpl230_primemac13/doxygen/thirdparty.prime.pal.atpl230_primemac13/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/pal/atpl230_primemac13/doxygen/thirdparty.prime.pal.atpl230_primemac13/doxygen_module_mainpage.h58
-rw-r--r--thirdparty/prime/pal/atpl230_primemac13/include/pal.h375
-rw-r--r--thirdparty/prime/pal/atpl230_primemac13/module_config/conf_pal.h62
-rw-r--r--thirdparty/prime/pal/atpl230_primemac13/source/pal.c1004
-rw-r--r--thirdparty/prime/pal/doxygen/thirdparty.prime.pal_atpl230_primemac13/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/pal/doxygen/thirdparty.prime.pal_atpl230_primemac13/doxygen_module_mainpage.h58
-rw-r--r--thirdparty/prime/phy/atpl230/addons/serial_if/serial_if.c563
-rw-r--r--thirdparty/prime/phy/atpl230/addons/serial_if/serial_if.h127
-rw-r--r--thirdparty/prime/phy/atpl230/addons/sniffer_if/sniffer_if.c345
-rw-r--r--thirdparty/prime/phy/atpl230/addons/sniffer_if/sniffer_if.h128
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/phy_sniffer_tool.c233
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_board.h105
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_buart_if.h63
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_busart_if.h63
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_clock.h108
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_phy.h50
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_usi.h58
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/gcc/Makefile52
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/gcc/asf.h133
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/gcc/config.mk185
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/iar/apps_phy_sniffer_tool.eww6
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/iar/apps_phy_sniffer_tool_flash.ewd1655
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/iar/apps_phy_sniffer_tool_flash.ewp2604
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/iar/asf.h133
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_board.h69
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_buart_if.h63
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_busart_if.h63
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_clock.h108
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_phy.h50
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_usi.h58
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/gcc/Makefile52
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/gcc/asf.h133
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/gcc/config.mk185
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/iar/apps_phy_sniffer_tool.eww6
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/iar/apps_phy_sniffer_tool_flash.ewd1655
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/iar/apps_phy_sniffer_tool_flash.ewp2586
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/iar/asf.h133
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cms16c_sam4cms_db/conf_board.h69
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cms16c_sam4cms_db/conf_buart_if.h63
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cms16c_sam4cms_db/conf_busart_if.h63
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cms16c_sam4cms_db/conf_clock.h108
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cms16c_sam4cms_db/conf_phy.h50
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cms16c_sam4cms_db/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cms16c_sam4cms_db/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cms16c_sam4cms_db/conf_usi.h58
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cms16c_sam4cms_db/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cms16c_sam4cms_db/gcc/Makefile52
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cms16c_sam4cms_db/gcc/asf.h133
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cms16c_sam4cms_db/gcc/config.mk185
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cms16c_sam4cms_db/iar/apps_phy_sniffer_tool.eww6
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cms16c_sam4cms_db/iar/apps_phy_sniffer_tool_flash.ewd1655
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cms16c_sam4cms_db/iar/apps_phy_sniffer_tool_flash.ewp2586
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cms16c_sam4cms_db/iar/asf.h133
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cp16b_sam4cp16bmb/conf_board.h97
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cp16b_sam4cp16bmb/conf_buart_if.h63
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cp16b_sam4cp16bmb/conf_busart_if.h63
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cp16b_sam4cp16bmb/conf_c42364a_slcdc.h67
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cp16b_sam4cp16bmb/conf_clock.h109
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cp16b_sam4cp16bmb/conf_phy.h50
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cp16b_sam4cp16bmb/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cp16b_sam4cp16bmb/conf_slcdc.h51
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cp16b_sam4cp16bmb/conf_sleepmgr.h49
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cp16b_sam4cp16bmb/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cp16b_sam4cp16bmb/conf_usi.h58
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cp16b_sam4cp16bmb/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cp16b_sam4cp16bmb/gcc/Makefile52
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cp16b_sam4cp16bmb/gcc/asf.h145
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cp16b_sam4cp16bmb/gcc/config.mk191
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cp16b_sam4cp16bmb/iar/apps_phy_sniffer_tool.eww6
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cp16b_sam4cp16bmb/iar/apps_phy_sniffer_tool_flash.ewd1655
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cp16b_sam4cp16bmb/iar/apps_phy_sniffer_tool_flash.ewp2625
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cp16b_sam4cp16bmb/iar/asf.h145
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4sd32c_atpl230amb/conf_board.h97
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4sd32c_atpl230amb/conf_buart_if.h63
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4sd32c_atpl230amb/conf_busart_if.h63
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4sd32c_atpl230amb/conf_clock.h101
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4sd32c_atpl230amb/conf_phy.h50
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4sd32c_atpl230amb/conf_pplc_if.h94
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4sd32c_atpl230amb/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4sd32c_atpl230amb/conf_usi.h58
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4sd32c_atpl230amb/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4sd32c_atpl230amb/gcc/Makefile52
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4sd32c_atpl230amb/gcc/asf.h136
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4sd32c_atpl230amb/gcc/config.mk186
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4sd32c_atpl230amb/iar/apps_phy_sniffer_tool.eww6
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4sd32c_atpl230amb/iar/apps_phy_sniffer_tool_flash.ewd1655
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4sd32c_atpl230amb/iar/apps_phy_sniffer_tool_flash.ewp2635
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4sd32c_atpl230amb/iar/asf.h136
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/phy_tester_tool.c235
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4c16c_sam4c_ek/conf_board.h105
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4c16c_sam4c_ek/conf_buart_if.h63
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4c16c_sam4c_ek/conf_busart_if.h63
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4c16c_sam4c_ek/conf_clock.h108
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4c16c_sam4c_ek/conf_phy.h50
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4c16c_sam4c_ek/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4c16c_sam4c_ek/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4c16c_sam4c_ek/conf_usi.h58
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4c16c_sam4c_ek/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4c16c_sam4c_ek/gcc/Makefile52
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4c16c_sam4c_ek/gcc/asf.h133
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4c16c_sam4c_ek/gcc/config.mk185
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4c16c_sam4c_ek/iar/apps_phy_tester_tool.eww6
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4c16c_sam4c_ek/iar/apps_phy_tester_tool_flash.ewd1655
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4c16c_sam4c_ek/iar/apps_phy_tester_tool_flash.ewp2604
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4c16c_sam4c_ek/iar/asf.h133
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cmp16c_sam4cmp_db/conf_board.h69
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cmp16c_sam4cmp_db/conf_buart_if.h63
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cmp16c_sam4cmp_db/conf_busart_if.h63
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cmp16c_sam4cmp_db/conf_clock.h108
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cmp16c_sam4cmp_db/conf_phy.h50
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cmp16c_sam4cmp_db/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cmp16c_sam4cmp_db/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cmp16c_sam4cmp_db/conf_usi.h58
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cmp16c_sam4cmp_db/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cmp16c_sam4cmp_db/gcc/Makefile52
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cmp16c_sam4cmp_db/gcc/asf.h133
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cmp16c_sam4cmp_db/gcc/config.mk185
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cmp16c_sam4cmp_db/iar/apps_phy_tester_tool.eww6
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cmp16c_sam4cmp_db/iar/apps_phy_tester_tool_flash.ewd1655
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cmp16c_sam4cmp_db/iar/apps_phy_tester_tool_flash.ewp2586
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cmp16c_sam4cmp_db/iar/asf.h133
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cms16c_sam4cms_db/conf_board.h69
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cms16c_sam4cms_db/conf_buart_if.h63
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cms16c_sam4cms_db/conf_busart_if.h63
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cms16c_sam4cms_db/conf_clock.h108
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cms16c_sam4cms_db/conf_phy.h50
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cms16c_sam4cms_db/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cms16c_sam4cms_db/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cms16c_sam4cms_db/conf_usi.h58
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cms16c_sam4cms_db/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cms16c_sam4cms_db/gcc/Makefile52
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cms16c_sam4cms_db/gcc/asf.h133
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cms16c_sam4cms_db/gcc/config.mk185
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cms16c_sam4cms_db/iar/apps_phy_tester_tool.eww6
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cms16c_sam4cms_db/iar/apps_phy_tester_tool_flash.ewd1655
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cms16c_sam4cms_db/iar/apps_phy_tester_tool_flash.ewp2586
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cms16c_sam4cms_db/iar/asf.h133
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cp16b_sam4cp16bmb/conf_board.h97
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cp16b_sam4cp16bmb/conf_buart_if.h63
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cp16b_sam4cp16bmb/conf_busart_if.h63
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cp16b_sam4cp16bmb/conf_c42364a_slcdc.h67
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cp16b_sam4cp16bmb/conf_clock.h109
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cp16b_sam4cp16bmb/conf_phy.h50
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cp16b_sam4cp16bmb/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cp16b_sam4cp16bmb/conf_slcdc.h51
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cp16b_sam4cp16bmb/conf_sleepmgr.h49
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cp16b_sam4cp16bmb/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cp16b_sam4cp16bmb/conf_usi.h58
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cp16b_sam4cp16bmb/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cp16b_sam4cp16bmb/gcc/Makefile52
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cp16b_sam4cp16bmb/gcc/asf.h145
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cp16b_sam4cp16bmb/gcc/config.mk191
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cp16b_sam4cp16bmb/iar/apps_phy_tester_tool.eww6
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cp16b_sam4cp16bmb/iar/apps_phy_tester_tool_flash.ewd1655
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cp16b_sam4cp16bmb/iar/apps_phy_tester_tool_flash.ewp2625
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4cp16b_sam4cp16bmb/iar/asf.h145
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4sd32c_atpl230amb/conf_board.h97
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4sd32c_atpl230amb/conf_buart_if.h63
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4sd32c_atpl230amb/conf_busart_if.h63
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4sd32c_atpl230amb/conf_clock.h101
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4sd32c_atpl230amb/conf_phy.h50
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4sd32c_atpl230amb/conf_pplc_if.h94
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4sd32c_atpl230amb/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4sd32c_atpl230amb/conf_usi.h58
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4sd32c_atpl230amb/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4sd32c_atpl230amb/gcc/Makefile52
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4sd32c_atpl230amb/gcc/asf.h136
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4sd32c_atpl230amb/gcc/config.mk186
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4sd32c_atpl230amb/iar/apps_phy_tester_tool.eww6
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4sd32c_atpl230amb/iar/apps_phy_tester_tool_flash.ewd1655
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4sd32c_atpl230amb/iar/apps_phy_tester_tool_flash.ewp2635
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tester_tool/sam4sd32c_atpl230amb/iar/asf.h136
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/phy_embedded_app.c301
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/phy_embedded_app.h89
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/phy_tx_test_console.c1296
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4c16c_sam4c_ek/FreeRTOSConfig.h154
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4c16c_sam4c_ek/conf_board.h105
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4c16c_sam4c_ek/conf_clock.h108
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4c16c_sam4c_ek/conf_example.h50
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4c16c_sam4c_ek/conf_phy.h50
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4c16c_sam4c_ek/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4c16c_sam4c_ek/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4c16c_sam4c_ek/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4c16c_sam4c_ek/gcc/Makefile52
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4c16c_sam4c_ek/gcc/asf.h147
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4c16c_sam4c_ek/gcc/config.mk197
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4c16c_sam4c_ek/iar/apps_phy_tx_test_console.eww6
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4c16c_sam4c_ek/iar/apps_phy_tx_test_console_flash.ewd1655
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4c16c_sam4c_ek/iar/apps_phy_tx_test_console_flash.ewp2713
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4c16c_sam4c_ek/iar/asf.h147
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cmp16c_sam4cmp_db/FreeRTOSConfig.h154
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cmp16c_sam4cmp_db/conf_board.h69
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cmp16c_sam4cmp_db/conf_clock.h108
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cmp16c_sam4cmp_db/conf_example.h50
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cmp16c_sam4cmp_db/conf_phy.h50
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cmp16c_sam4cmp_db/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cmp16c_sam4cmp_db/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cmp16c_sam4cmp_db/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cmp16c_sam4cmp_db/gcc/Makefile52
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cmp16c_sam4cmp_db/gcc/asf.h147
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cmp16c_sam4cmp_db/gcc/config.mk197
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cmp16c_sam4cmp_db/iar/apps_phy_tx_test_console.eww6
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cmp16c_sam4cmp_db/iar/apps_phy_tx_test_console_flash.ewd1655
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cmp16c_sam4cmp_db/iar/apps_phy_tx_test_console_flash.ewp2695
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cmp16c_sam4cmp_db/iar/asf.h147
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cms16c_sam4cms_db/FreeRTOSConfig.h154
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cms16c_sam4cms_db/conf_board.h69
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cms16c_sam4cms_db/conf_clock.h108
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cms16c_sam4cms_db/conf_example.h50
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cms16c_sam4cms_db/conf_phy.h50
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cms16c_sam4cms_db/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cms16c_sam4cms_db/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cms16c_sam4cms_db/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cms16c_sam4cms_db/gcc/Makefile52
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cms16c_sam4cms_db/gcc/asf.h147
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cms16c_sam4cms_db/gcc/config.mk197
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cms16c_sam4cms_db/iar/apps_phy_tx_test_console.eww6
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cms16c_sam4cms_db/iar/apps_phy_tx_test_console_flash.ewd1655
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cms16c_sam4cms_db/iar/apps_phy_tx_test_console_flash.ewp2695
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cms16c_sam4cms_db/iar/asf.h147
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cp16b_sam4cp16bmb/FreeRTOSConfig.h153
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cp16b_sam4cp16bmb/conf_board.h97
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cp16b_sam4cp16bmb/conf_clock.h109
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cp16b_sam4cp16bmb/conf_example.h50
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cp16b_sam4cp16bmb/conf_phy.h50
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cp16b_sam4cp16bmb/conf_pplc_if.h95
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cp16b_sam4cp16bmb/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cp16b_sam4cp16bmb/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cp16b_sam4cp16bmb/gcc/Makefile52
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cp16b_sam4cp16bmb/gcc/asf.h150
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cp16b_sam4cp16bmb/gcc/config.mk199
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cp16b_sam4cp16bmb/iar/apps_phy_tx_test_console.eww6
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cp16b_sam4cp16bmb/iar/apps_phy_tx_test_console_flash.ewd1655
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cp16b_sam4cp16bmb/iar/apps_phy_tx_test_console_flash.ewp2681
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4cp16b_sam4cp16bmb/iar/asf.h150
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4sd32c_atpl230amb/FreeRTOSConfig.h153
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4sd32c_atpl230amb/conf_board.h97
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4sd32c_atpl230amb/conf_clock.h101
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4sd32c_atpl230amb/conf_example.h50
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4sd32c_atpl230amb/conf_phy.h50
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4sd32c_atpl230amb/conf_pplc_if.h94
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4sd32c_atpl230amb/conf_uart_serial.h56
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4sd32c_atpl230amb/doxygen/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4sd32c_atpl230amb/gcc/Makefile52
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4sd32c_atpl230amb/gcc/asf.h150
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4sd32c_atpl230amb/gcc/config.mk198
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4sd32c_atpl230amb/iar/apps_phy_tx_test_console.eww6
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4sd32c_atpl230amb/iar/apps_phy_tx_test_console_flash.ewd1655
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4sd32c_atpl230amb/iar/apps_phy_tx_test_console_flash.ewp2744
-rw-r--r--thirdparty/prime/phy/atpl230/apps/phy_tx_test_console/sam4sd32c_atpl230amb/iar/asf.h150
-rw-r--r--thirdparty/prime/phy/atpl230/coupling_config/conf_atpl230.c501
-rw-r--r--thirdparty/prime/phy/atpl230/coupling_config/conf_atpl230.h113
-rw-r--r--thirdparty/prime/phy/atpl230/doxygen/thirdparty.prime.phy.atpl230/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/phy/atpl230/doxygen/thirdparty.prime.phy.atpl230/doxygen_module_mainpage.h58
-rw-r--r--thirdparty/prime/phy/atpl230/include/atpl230.h999
-rw-r--r--thirdparty/prime/phy/atpl230/include/atpl230_iir_filter.h73
-rw-r--r--thirdparty/prime/phy/atpl230/include/atpl230_reg.h809
-rw-r--r--thirdparty/prime/phy/atpl230/include/atpl230_version.h77
-rw-r--r--thirdparty/prime/phy/atpl230/module_config/conf_phy.h50
-rw-r--r--thirdparty/prime/phy/atpl230/source/atpl230.c2482
-rw-r--r--thirdparty/prime/phy/atpl230/source/atpl230_iir_filter.c284
-rw-r--r--thirdparty/prime/sscs/sscs-4-32/addons/serial_if/serial_432_if.c505
-rw-r--r--thirdparty/prime/sscs/sscs-4-32/addons/serial_if/serial_432_if.h81
-rw-r--r--thirdparty/prime/sscs/sscs-4-32/doxygen/thirdparty.prime.sscs_4_32_base/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/sscs/sscs-4-32/doxygen/thirdparty.prime.sscs_4_32_base/doxygen_module_mainpage.h58
-rw-r--r--thirdparty/prime/sscs/sscs-4-32/doxygen/thirdparty.prime.sscs_4_32_service/doxyfile.doxygen1645
-rw-r--r--thirdparty/prime/sscs/sscs-4-32/doxygen/thirdparty.prime.sscs_4_32_service/doxygen_module_mainpage.h58
-rw-r--r--thirdparty/prime/sscs/sscs-4-32/include/dl432.h145
-rw-r--r--thirdparty/prime/sscs/sscs-4-32/include/sscs432.h173
-rw-r--r--thirdparty/prime/sscs/sscs-4-32/libs/gcc/libsam4c-sscs432-bn-gcc.abin0 -> 19716 bytes
-rw-r--r--thirdparty/prime/sscs/sscs-4-32/libs/gcc/libsam4c-sscs432-sn-gcc.abin0 -> 18424 bytes
-rw-r--r--thirdparty/prime/sscs/sscs-4-32/libs/iar/libsam4c-sscs432-bn-iar.abin0 -> 37582 bytes
-rw-r--r--thirdparty/prime/sscs/sscs-4-32/libs/iar/libsam4c-sscs432-sn-iar.abin0 -> 33994 bytes
894 files changed, 350995 insertions, 0 deletions
diff --git a/thirdparty/prime/apps/prime_base_appemu/app_emu.c b/thirdparty/prime/apps/prime_base_appemu/app_emu.c
new file mode 100644
index 00000000..7c60251a
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/app_emu.c
@@ -0,0 +1,92 @@
+/**
+ * \file
+ *
+ * \brief Metering Application Emulator
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#include <string.h>
+#include <stdio.h>
+
+/* Application includes */
+#include "app_emu.h"
+#include "app_emu_common.h"
+
+#include "asf.h"
+
+/* Tasks handlers */
+xTaskHandle xAppEmuHnd;
+
+/**
+ * \brief Periodic task to process App EMU.
+ *
+ */
+static void _prv_process_app_emu(void *pvParameters)
+{
+ static portTickType xLastWakeTime;
+ static portTickType xPeriod;
+
+ UNUSED(pvParameters);
+ /* Start AppEmu */
+ app_emu_start();
+
+ xPeriod = APPEMU_TIMER_RATE;
+ xLastWakeTime = xTaskGetTickCount();
+ for (;;) {
+ vTaskDelayUntil(&xLastWakeTime, xPeriod);
+
+ taskENTER_CRITICAL();
+ app_emu_process();
+ app_emu_update_10ms();
+ taskEXIT_CRITICAL();
+ }
+}
+
+/**
+ * \brief Initialization task to process App EMU.
+ *
+ */
+void vAppEmuInitTask(void)
+{
+ /* Create new task to AppEmu Application */
+ xTaskCreate(_prv_process_app_emu,
+ (const signed char *const)"AppEmuTask",
+ TASK_APPEMU_LAYER_STACK, NULL, TASK_APPEMU_LAYER_PRIO,
+ &xAppEmuHnd);
+}
diff --git a/thirdparty/prime/apps/prime_base_appemu/app_emu.h b/thirdparty/prime/apps/prime_base_appemu/app_emu.h
new file mode 100644
index 00000000..0c9d5bea
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/app_emu.h
@@ -0,0 +1,62 @@
+/**
+ * \file
+ *
+ * \brief Metering Application Emulator
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef APPEMU_H_
+#define APPEMU_H_
+
+#include "FreeRTOS.h"
+#include "task.h"
+#include "prime.h"
+
+/* Tasks priorities */
+#define TASK_APPEMU_LAYER_PRIO (tskIDLE_PRIORITY + 1)
+
+/* Stack definitions */
+#define TASK_APPEMU_LAYER_STACK (configMINIMAL_STACK_SIZE * 4)
+
+/* Main Task Period */
+#define APPEMU_TIMER_RATE (10 / portTICK_RATE_MS)
+
+void vAppEmuInitTask(void);
+
+#endif /* APPEMU_H_ */
diff --git a/thirdparty/prime/apps/prime_base_appemu/app_emu_base.c b/thirdparty/prime/apps/prime_base_appemu/app_emu_base.c
new file mode 100644
index 00000000..9158809f
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/app_emu_base.c
@@ -0,0 +1,974 @@
+/**
+ * \file
+ *
+ * \brief Metering Application Emulator for Base Node
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ *
+ */
+
+/* System includes */
+#include <stdio.h>
+#include <string.h>
+
+/* Prime includes */
+#include "asf.h"
+
+/* Application includes */
+#include "app_emu_common.h"
+#include "conf_app_emu.h"
+
+extern uint32_t ul_tens_of_ms;
+
+/* *** Declarations ************************************************************
+ **/
+/* Tasks priorities */
+#define TASK_APPEMU_LAYER_PRIO (tskIDLE_PRIORITY + 1)
+
+/* Stack definitions */
+#define TASK_APPEMU_LAYER_STACK (configMINIMAL_STACK_SIZE * 4)
+
+/* Main Task Period */
+#define APPEMU_TIMER_RATE (5 / portTICK_RATE_MS)
+
+/* Update Timer Period */
+#define UPDATE_APPEMU_TIMER_RATE (1 / portTICK_RATE_MS)
+
+#define MAX_TBL_NODE_NUM 64
+
+#define IDCHAR_BASE '5'
+#define IDCHAR_SERVICE '6'
+#define IDCHAR_CON_BASE '7'
+#define IDCHAR_CON_SERVICE '8'
+
+/* Modulation scheme of the payload: Differential BPSK */
+#define PROTOCOL_DBPSK 0x00
+/* Modulation scheme of the payload: Differential QPSK */
+#define PROTOCOL_DQPSK 0x01
+/* Modulation scheme of the payload: Differential 8PSK */
+#define PROTOCOL_D8PSK 0x02
+
+/* Modulation scheme of the payload: Differential BPSK with Convolutional Coding */
+#define PROTOCOL_DBPSK_VTB 0x04
+
+/* Modulation scheme of the payload: Differential QPSK with Convolutional Coding */
+#define PROTOCOL_DQPSK_VTB 0x05
+
+/* Modulation scheme of the payload: Differential 8PSK with Convolutional Coding */
+#define PROTOCOL_D8PSK_VTB 0x06
+
+/* Time from the last connection detected to start test */
+#define TIMETO_START_TEST 500L /* 75 seconds in 10ms. */
+#define TIMETO_REG_CHEK 100 /* 1 second in 10ms. */
+
+/* Value of the Register Devices list */
+#define MLME_LIST_REG_DEVICES 0x50
+/* Values of communications */
+#define MLME_LIST_PHY_COMM 0x57
+/* Maximum test defined */
+#define NUM_TEST 10 /* Tecnalia 20130502 */
+/* Retries for a test */
+#define NUM_RETRIES 3
+
+#define VTB(A) (A & 0x04)
+#define MOD(A) (A & 0x03)
+
+#define _getTimeMs() (ul_tens_of_ms * 10)
+
+/* State of machine state _get_registered_nodes */
+enum {
+ MLME_SEND_REQUEST,
+ MLME_WAIT_ANSWER
+};
+
+/* State of appemu_Process */
+enum {
+ APPEMU_WAIT_NEW_CONNECTIONS,
+ APPEMU_GET_NODES_REGISTERED,
+ APPEMU_WAITTO_START_TEST,
+
+ /* All test states must be listed under APPEMU_START_TEST (to reject
+ * connections during test) */
+ APPEMU_START_TEST,
+ APPEMU_WAIT_RECEIVED_TXCODING,
+ APPEMU_BUILD_MESSAGE_TEST,
+ APPEMU_SEND_MESSAGE_TEST,
+ APPEMU_WAIT_CONFIRM_MESSAGE_TEST,
+ APPEMU_WAIT_RECEIVE_MESSAGE_TEST,
+ APPEMU_RETRY_MESSAGE_TEST,
+ APPEMU_END_TEST_NODE,
+ APPEMU_DISCONNECT_NODES
+};
+
+/* *** Static Variables ********************************************************
+ **/
+
+/* Definition of the stored fields required by appEmu */
+typedef struct {
+ uint16_t us_handler; /* Handler of the connection */
+ uint8_t puc_mac_addr[PRIME_MAC_LENGTH]; /* Mac address of the connected node */
+ uint32_t ul_nid; /* NID of the node */
+ uint8_t puc_serial[SERIAL_SIZE + 1]; /* String with the serial number */
+ uint32_t ul_start_time_test; /* Ini of the test in Hundred of miliseconds, since base node is started */
+ uint32_t pul_round_trip[NUM_TEST]; /* Time from a petition is done until the answer is received */
+ uint8_t puc_success_attempt[NUM_TEST]; /* Number of successfully attempt */
+ uint8_t uc_rx_coding; /* Reception scheme */
+ uint8_t uc_tx_coding; /* Transmission scheme */
+ uint8_t uc_app_emu_coding; /* Transmission mode */
+} test_node;
+
+/* Definition of the test */
+typedef struct {
+ uint8_t uc_test_number; /* Step of the test, to fill up the message */
+ uint16_t us_bytes_sent; /* Bytes sent by the Base Node */
+ uint16_t us_bytes_expected; /* Bytes expected in the answer */
+} test_info;
+
+typedef struct {
+ uint8_t uc_n_attempts;
+ uint32_t ul_round_trip_time;
+} type_result;
+
+typedef struct {
+ uint32_t ul_nid;
+ uint8_t puc_serial[SERIAL_SIZE + 1];
+ uint32_t ul_start_time;
+ type_result step_result[N_LENGTHS_TEST];
+} type_report;
+
+typedef struct {
+ uint8_t puc_serial[SERIAL_SIZE + 1];
+} type_meter_serial;
+
+/* Test battery to execute */
+static test_info p_conf_test [NUM_TEST + 1] = {
+ {2, 24, 36},
+ {3, 24, 31},
+ {4, 75, 138},
+ {4, 16, 52},
+ {5, 17, 17},
+ {5, 29, 29},
+ {5, 65, 65},
+ {5, 137, 137},
+ {5, 209, 209},
+ {5, 281, 281},
+ /* End of table */
+ {0xff, 0, 0}
+};
+
+/* Array with the test node */
+test_node p_node[MAX_TBL_NODE_NUM];
+/* State of the proccess _get_registered_nodes */
+static uint8_t uc_get_nodes_st;
+/* State of the proccess _info_tx_coding */
+static uint8_t uc_info_tx_coding_st;
+/* State of the proccess appemu_Process */
+static uint8_t uc_app_emu_st;
+/* Pointer to the new command */
+static MacSapCallBack *p_counter_new_cmd;
+/* Temporal storage for the last command extracted */
+static MacSapCallBack tmp_new_cmd;
+/* Number of connections opened */
+static uint16_t us__num_connections;
+/* Number of nodes register in the base node */
+static uint16_t us__num_nodes_registered;
+/* Device under test */
+static uint16_t us__dut;
+/* Number of test en execution */
+static uint16_t us__numTest;
+/* Number of attempt for the current test */
+static uint8_t uc__num_attempt;
+/* String where the time is stored */
+static char pc_time_stamp[TIMESTAMP_SIZE + 1];
+/* Var where the payload is built */
+static uint8_t puc_request[MAX_COUNTER_DATA_SIZE + 1];
+/* Boolean to get registered nodes */
+static Bool b_check_reg;
+
+extern uint32_t ul_time_app_emu;
+extern uint32_t ul_mili_seconds;
+
+static uint8_t _most_robust_scheme_mode(uint8_t uc_sch1, uint8_t uc_sch2);
+
+void appemu_init(void);
+
+/* ************************************************************************** */
+
+/** @brief give us the time in hundreds of Miliseconds, take into acount
+* if the counter has been reset
+* @param ul_end_time
+* @param ul_ini_time
+*
+* @return Real value in tenths of seconds
+*
+**************************************************************************/
+
+static uint32_t _get_round_trip(uint32_t ul_end_time, uint32_t ul_ini_time)
+{
+ uint32_t ul_result;
+
+ if (ul_end_time < ul_ini_time) {
+ ul_result = ul_end_time + (0xffffffff - ul_ini_time);
+ } else {
+ ul_result = ul_end_time - ul_ini_time;
+ }
+
+ return ul_result;
+}
+
+/* ************************************************************************** */
+
+/** @brief This function updates the var us__num_nodes_registered
+ * calling the MLME interface
+ **************************************************************************/
+static void _update_nid(MlmeRegDevice *p_dev)
+{
+ uint8_t i;
+
+ for (i = 0; i < us__num_connections; i++) {
+ if (memcmp(&p_node[i].puc_mac_addr[0], &p_dev->mac[0], PRIME_MAC_LENGTH) == 0) {
+ /* Update NID */
+ p_node[i].ul_nid = ((uint32_t)p_dev->sid & 0x000000ff) << 14;
+ p_node[i].ul_nid |= ((uint32_t)p_dev->lnid & 0x00003fff);
+ }
+ }
+}
+
+/* ************************************************************************** */
+
+/** @brief This function updates the var uc_tx_coding and uc_rx_coding
+ * from structure Nodes
+ * @param pr_comm pointer to MlmePhyCommDevice
+ **************************************************************************/
+static void _update_tx_rx_coding(MlmePhyCommDevice *pr_comm)
+{
+ uint8_t i;
+
+ for (i = 0; i < us__num_connections; i++) {
+ if (memcmp(&p_node[i].puc_mac_addr[0], &pr_comm->eui48[0], PRIME_MAC_LENGTH) == 0) {
+ /* Update uc_tx_coding */
+ p_node[i].uc_tx_coding = pr_comm->txCodingMod;
+ p_node[i].uc_rx_coding = pr_comm->rxCodingMod;
+ }
+ }
+}
+
+/* ************************************************************************** */
+
+/** @brief This function updates the var uc_tx_coding and uc_rx_coding
+ * from structure Nodes
+ **************************************************************************/
+static void _fill_tx_rx_coding_undirect_nodes(void)
+{
+ uint8_t i;
+
+ for (i = 0; i < us__num_connections; i++) {
+ if (p_node[i].uc_rx_coding == 0) {
+ /* Update uc_tx_coding */
+ p_node[i].uc_tx_coding = PROTOCOL_DBPSK_VTB;
+ p_node[i].uc_rx_coding = PROTOCOL_DBPSK_VTB;
+ }
+ }
+}
+
+/* ************************************************************************** */
+
+/** @brief it choose the most robust mode to transmit to node
+ **************************************************************************/
+static void _choose_app_emu_coding(void)
+{
+ uint8_t i;
+
+ for (i = 0; i < us__num_connections; i++) {
+ p_node[i].uc_app_emu_coding = _most_robust_scheme_mode(p_node[i].uc_rx_coding,
+ p_node[i].uc_tx_coding);
+#ifdef APPEMU_DEBUG
+ printf("%s\tModeAppEmu:%hu\n", p_node[i].puc_serial,
+ (uint16_t)p_node[i].uc_app_emu_coding);
+#endif
+ }
+}
+
+/* ************************************************************************** */
+
+/** @brief Prints the shcemes for all the nodes, ONLY in debug mode
+ **************************************************************************/
+#ifdef _CS_DEBUG_
+static void _print_all_schemes(void)
+{
+ uint8_t i;
+
+ for (i = 0; i < us__num_connections; i++) {
+#ifdef APPEMU_DEBUG
+ printf("%s\trxCoding:%u\ttxCoding:%u\n", p_node[i].puc_serial,
+ (uint16_t)p_node[i].uc_rx_coding,
+ (uint16_t)p_node[i].uc_tx_coding);
+#endif
+ }
+}
+
+#endif
+
+/* ************************************************************************** */
+
+/** @brief This function updates the var us__num_nodes_registered
+ *
+ * @return 1 when it finishes
+ * 0 In other case
+ *
+ * This function updates the us__num_nodes_registered calling the MLME
+ * interface
+ **************************************************************************/
+
+static int _get_registered_nodes(void)
+{
+ MlmeListGetRegDevices list;
+ int i;
+ int result = 0;
+
+ switch (uc_get_nodes_st) {
+ case MLME_SEND_REQUEST:
+#ifdef APPEMU_DEBUG
+ printf("Getting MLME_LIST_REG_DEVICES\n");
+#endif
+ if (prime_MLME_LIST_GET_request(MLME_LIST_REG_DEVICES) == 0) {
+ us__num_nodes_registered = 0;
+ uc_get_nodes_st = MLME_WAIT_ANSWER;
+ }
+
+ break;
+
+ case MLME_WAIT_ANSWER:
+ if (prime_MLME_callback((uint8_t *)&list)) {
+ /* Check that is a valid answer */
+ if ((list.cmd == PRIME_MLME_LIST_GET_CONFIRM) &&
+ (list.pibAttrib == MLME_LIST_REG_DEVICES)) {
+ for (i = 0; i < list.numItems; i++) {
+ /* Updates the NID for the connected nodes */
+ _update_nid(&list.dev[i]);
+ }
+ us__num_nodes_registered += list.numItems;
+ }
+
+ /* Next time we start againg in MLMEGET_SEND_REQUEST or
+ * retry now */
+ if (list.isLast) {
+#ifdef APPEMU_DEBUG
+ printf("End list get MLME_LIST_REG_DEVICES\n");
+#endif
+ uc_get_nodes_st = MLME_SEND_REQUEST;
+ if (list.result == PRIME_MLME_RESULT_SUCCESS) {
+ result = 1;
+ }
+ }
+ }
+
+ break;
+ }
+ return result;
+}
+
+/* ************************************************************************** */
+
+/** @brief This function updates the var us__num_nodes_registered
+ *
+ * @return 1 when it finishes
+ * 0 In other case
+ *
+ * This function updates the us__num_nodes_registered calling the MLME
+ * interface
+ **************************************************************************/
+
+static int _info_tx_coding(void)
+{
+ MlmeListGetPhyCommTable list;
+ int i;
+
+ int result = 0;
+
+ switch (uc_info_tx_coding_st) {
+ case MLME_SEND_REQUEST:
+#ifdef APPEMU_DEBUG
+ printf("Getting MLME_LIST_PHY_COMM\n");
+#endif
+ if (prime_MLME_LIST_GET_request(MLME_LIST_PHY_COMM) == 0) {
+ us__num_nodes_registered = 0;
+ uc_info_tx_coding_st = MLME_WAIT_ANSWER;
+ }
+
+ break;
+
+ case MLME_WAIT_ANSWER:
+ if (prime_MLME_callback((uint8_t *)&list)) {
+ /* Check that is a valid answer */
+ if ((list.cmd == PRIME_MLME_LIST_GET_CONFIRM) &&
+ (list.pibAttrib == MLME_LIST_PHY_COMM)) {
+ for (i = 0; i < list.numItems; i++) {
+ /* Updates the NID for the connected nodes */
+ _update_tx_rx_coding(&list.dev[i]);
+ }
+ us__num_nodes_registered += list.numItems;
+ }
+
+ /* Next time we start againg in MLMEGET_SEND_REQUEST or
+ * retry now */
+ if (list.isLast) {
+#ifdef APPEMU_DEBUG
+ printf("End list get MLME_LIST_PHY_COMM\n");
+#endif
+ uc_info_tx_coding_st = MLME_SEND_REQUEST;
+ /* Fill up the rest of nodes */
+ _fill_tx_rx_coding_undirect_nodes();
+ _choose_app_emu_coding();
+#ifdef _CS_DEBUG_
+ _print_all_schemes();
+#endif
+ result = 1;
+ }
+ }
+
+ break;
+ }
+ return result;
+}
+
+/* ************************************************************************** */
+
+/** @brief It decides if a new incomming connection has to be aceppted or
+ * rejected
+ *
+ * @param p_cmd pointer to the incomming message
+ *
+ * It is based in two criteria, first, if the node has already an open
+ * connection
+ * Second if the test has already started. In these two cases the connection is
+ * rejected. It will be aceppted in other case
+ **************************************************************************/
+
+static void _check_new_connections(MacSapCallBack *p_cmd)
+{
+ uint16_t i;
+
+ for (i = 0; i < us__num_connections; i++) {
+ if (memcmp(&p_node[i].puc_mac_addr[0], &p_cmd->macAddr[0], PRIME_MAC_LENGTH) == 0) {
+ break;
+ }
+ }
+
+ /* There was a connection previously open or we are in the middle of
+ * test */
+ if (uc_app_emu_st >= APPEMU_START_TEST) {
+ if (i < us__num_connections) {
+ p_node[i].us_handler = CON_HANDLER_INIT_VALUE;
+ p_node[i].puc_serial[0] = '\0';
+ p_node[i].ul_start_time_test = 0;
+ }
+
+#ifdef APPEMU_DEBUG
+ printf("Rejecting connection with node %hu\n", i + 1);
+#endif
+ prime_MAC_ESTABLISH_response(p_cmd->handler, PRIME_MACSAP_RESULT_REJECT, NULL, 0);
+ } else {
+#ifdef APPEMU_DEBUG
+ printf("Accepting connection with node %hu\n", i + 1);
+#endif
+ prime_MAC_ESTABLISH_response(p_cmd->handler, PRIME_MACSAP_RESULT_ACCEPT, NULL, 0);
+ p_node[i].us_handler = p_cmd->handler;
+ memcpy(&p_node[i].puc_serial[0], &p_cmd->buf[0], p_cmd->bufLength);
+ memcpy(&p_node[i].puc_mac_addr[0], &p_cmd->macAddr[0], PRIME_MAC_LENGTH);
+ /* Only increment connections if it is a new connection */
+ if (i == us__num_connections) {
+ us__num_connections++;
+ }
+ }
+}
+
+/* ************************************************************************** */
+
+/** @brief Sends the results of the tests in the node dut
+ *
+ * @param us_dut Device under Test
+ **************************************************************************/
+static void _send_result_node(uint16_t us_dut)
+{
+ uint8_t i;
+ static uint8_t msg[1024];
+
+#ifdef __GNUC__
+ sprintf((char *)msg, "%08lx,%s,%lu \n",
+ p_node[us_dut].ul_nid,
+ p_node[us_dut].puc_serial,
+ p_node[us_dut].ul_start_time_test);
+#endif
+#ifdef __ICCARM__
+ sprintf((char *)msg, "%08x,%s,%u \n",
+ p_node[us_dut].ul_nid,
+ p_node[us_dut].puc_serial,
+ p_node[us_dut].ul_start_time_test);
+#endif
+
+ for (i = 0; i < NUM_TEST; i++) {
+#ifdef __GNUC__
+ sprintf((char *)&msg[ strlen((char *)msg)], ",%hu,%lu \n",
+ (uint16_t)p_node[us_dut].puc_success_attempt[i],
+ p_node[us_dut].pul_round_trip[i]);
+#endif
+#ifdef __ICCARM__
+ sprintf((char *)&msg[ strlen((char *)msg)], ",%hu,%u \n",
+ (uint16_t)p_node[us_dut].puc_success_attempt[i],
+ p_node[us_dut].pul_round_trip[i]);
+#endif
+ }
+ sprintf((char *)&msg[strlen((char *)msg)], "%c%c \n", 10, 13);
+
+ printf("%s", msg);
+}
+
+/* ************************************************************************** */
+
+/** @brief Most robust Scheme module between the two given
+ *
+ * @param uc_sch1 modulation scheme 1
+ * @param uc_sch2 modulation scheme 2
+ *
+ * @return Most robust Scheme module between the two given
+ **************************************************************************/
+static uint8_t _most_robust_scheme_mode(uint8_t uc_sch1, uint8_t uc_sch2)
+{
+ uint8_t mostRobustMode;
+
+ if (VTB(uc_sch1) != VTB(uc_sch2)) {
+ if (VTB(uc_sch1)) {
+ mostRobustMode = uc_sch1;
+ } else {
+ mostRobustMode = uc_sch2;
+ }
+ } else {
+ if (uc_sch1 < uc_sch2) {
+ mostRobustMode = uc_sch1;
+ } else {
+ mostRobustMode = uc_sch2;
+ }
+ }
+
+ return mostRobustMode;
+}
+
+/* ************************************************************************** */
+
+/** @brief Get length of the transmission
+ *
+ * @param us_dut
+ * @param pus_num_test
+ * @param pus_len_rx
+ *
+ * @return transmission length
+ *
+ **************************************************************************/
+static uint16_t _get_length_transmission(uint16_t us_dut,
+ uint16_t *pus_num_test, uint16_t *pus_len_rx)
+{
+ uint16_t us_len_tx;
+
+ if (p_conf_test[*pus_num_test].uc_test_number < 5) {
+ us_len_tx = p_conf_test[*pus_num_test].us_bytes_sent;
+ *pus_len_rx = p_conf_test[*pus_num_test].us_bytes_expected;
+ } else { /* Test Number == 5, adapt transmission and reception */
+ if ((MOD(p_node[us_dut].uc_app_emu_coding) == PROTOCOL_D8PSK) &&
+ (p_conf_test[*pus_num_test].us_bytes_expected == 17)) {
+ *pus_num_test = *pus_num_test + 1;
+ }
+
+ if (VTB(p_node[us_dut].uc_app_emu_coding)) {
+ us_len_tx = p_conf_test[*pus_num_test].us_bytes_sent;
+ } else {
+ us_len_tx = (p_conf_test[*pus_num_test].us_bytes_sent + 1);
+ }
+
+ *pus_len_rx = us_len_tx;
+ }
+
+ return us_len_tx;
+}
+
+/* ************************************************************************** */
+
+/** @brief End test with current node
+ *
+ * Check if dut is the last one and then change state machine to disconnect
+ * all nodes
+ **************************************************************************/
+static void _end_dut(void)
+{
+ if (++us__dut >= us__num_connections) {
+#ifdef APPEMU_DEBUG
+ printf("Disconnecting %i nodes\n", us__num_connections);
+#endif
+ us__dut = 0;
+ uc_app_emu_st = APPEMU_DISCONNECT_NODES;
+ } else {
+ uc_app_emu_st = APPEMU_START_TEST;
+ }
+}
+
+/* *** Public Functions ******************************************************
+ **/
+/* ************************************************************************** */
+
+/** @brief Init application emulation
+ *
+ * This function initializes the application
+ **************************************************************************/
+
+void appemu_init(void)
+{
+ uint8_t mac[6];
+
+ mac[0] = 0x00;
+ mac[1] = 0x01;
+ mac[2] = 0x02;
+ mac[3] = 0x03;
+ mac[4] = 0x04;
+ mac[5] = 0x05;
+ app_emu_init_random(mac);
+}
+
+/* ************************************************************************** */
+
+/** @brief Start application emulation
+ *
+ * This function initializes variables for application
+ **************************************************************************/
+
+void app_emu_start()
+{
+ uint16_t i;
+
+ /* Init appemu Vars */
+ uc_get_nodes_st = MLME_SEND_REQUEST;
+ uc_info_tx_coding_st = MLME_SEND_REQUEST;
+ uc_app_emu_st = APPEMU_WAIT_NEW_CONNECTIONS;
+ us__num_connections = 0;
+ us__num_nodes_registered = 0;
+ b_check_reg = false;
+
+ for (i = 0; i < MAX_TBL_NODE_NUM; i++) {
+ p_node[i].us_handler = CON_HANDLER_INIT_VALUE;
+ p_node[i].puc_mac_addr[0] = '\0';
+ p_node[i].ul_nid = 0;
+ p_node[i].puc_serial[0] = '\0';
+ p_node[i].ul_start_time_test = 0;
+ memset(p_node[i].pul_round_trip, 0, NUM_TEST);
+ memset(p_node[i].puc_success_attempt, 0, NUM_TEST);
+ p_node[i].uc_rx_coding = PROTOCOL_DBPSK_VTB;
+ p_node[i].uc_tx_coding = PROTOCOL_DBPSK_VTB;
+ p_node[i].uc_app_emu_coding = PROTOCOL_DBPSK_VTB;
+ }
+}
+
+/* ************************************************************************** */
+
+/** @brief app Emu main proccess
+ *
+ *
+ **************************************************************************/
+void app_emu_process()
+{
+ Bool b_new_command = false;
+
+ static uint16_t us_length_transmission;
+ static uint16_t us_length_reception;
+
+ /* Reception of Mac primitives */
+ if (prime_MAC_callback(&tmp_new_cmd, GENERIC_CALLBACK_HANDLER, GENERIC_CALLBACK_TYPE)) {
+ p_counter_new_cmd = &tmp_new_cmd;
+ b_new_command = true;
+ /* New connection checking if there is new nodw or not */
+ switch (p_counter_new_cmd->command) {
+ case PRIME_MACSAP_ESTABLISH_INDICATION:
+#ifdef APPEMU_DEBUG
+ printf("<- ESTABLISH_indication()\n");
+#endif
+ _check_new_connections(p_counter_new_cmd);
+ b_check_reg = true;
+ b_new_command = false;
+ break;
+
+ case PRIME_MACSAP_RELEASE_INDICATION:
+ if (p_counter_new_cmd->answer == PRIME_MACSAP_RESULT_ERROR) {
+#ifdef APPEMU_DEBUG
+ printf( "APPEMU abnormally aborted with node %hu\n", us__dut);
+#endif
+ _end_dut();
+ } else {
+ prime_MAC_RELEASE_response(p_counter_new_cmd->handler, PRIME_MACSAP_RESULT_ACCEPT);
+ }
+
+ break;
+
+ case PRIME_MACSAP_RELEASE_CONFIRM:
+#ifdef APPEMU_DEBUG
+ printf("Release confirm %hu with node %hu\n",
+ (uint16_t)p_counter_new_cmd->errorType,
+ us__dut);
+#endif
+ if (p_counter_new_cmd->errorType != PRIME_MACSAP_ERROR_TIMEOUT) {
+#ifdef APPEMU_DEBUG
+ printf("APPEMU closed with node %hu\n", us__dut);
+#endif
+ }
+
+ break;
+ }
+ }
+
+ if (b_check_reg) {
+ if (_get_registered_nodes()) {
+ b_check_reg = false;
+ }
+ }
+
+ switch (uc_app_emu_st) {
+ case APPEMU_WAIT_NEW_CONNECTIONS:
+ if (us__num_connections) {
+ ul_time_app_emu = TIMETO_START_TEST;
+ uc_app_emu_st = APPEMU_WAITTO_START_TEST;
+ }
+
+ break;
+
+ case APPEMU_WAITTO_START_TEST:
+ if (!ul_time_app_emu) {
+ us__dut = 0;
+ uc_app_emu_st = APPEMU_START_TEST;
+ }
+
+ break;
+
+ case APPEMU_START_TEST:
+#ifdef APPEMU_DEBUG
+ printf("---INIT TEST : %i nodes connected---\n", us__num_connections);
+ printf("Getting information for transmission Schemes\n");
+#endif
+ uc_app_emu_st = APPEMU_WAIT_RECEIVED_TXCODING;
+ break;
+
+ case APPEMU_WAIT_RECEIVED_TXCODING:
+ if (_info_tx_coding()) {
+ us__numTest = 0;
+ p_node[us__dut].ul_start_time_test = _getTimeMs();
+ uc_app_emu_st = APPEMU_BUILD_MESSAGE_TEST;
+ }
+
+ break;
+
+ case APPEMU_BUILD_MESSAGE_TEST:
+ uc__num_attempt = 1;
+ app_emu_build_timestamp(pc_time_stamp);
+ us_length_transmission = _get_length_transmission(us__dut, &us__numTest, &us_length_reception);
+ app_emu_fill_string((char *)puc_request, us_length_transmission, DW_MSG,
+ p_conf_test[us__numTest].uc_test_number, pc_time_stamp);
+ uc_app_emu_st = APPEMU_SEND_MESSAGE_TEST;
+ ul_time_app_emu = 0;
+ break;
+
+ case APPEMU_SEND_MESSAGE_TEST:
+ if (p_node[us__dut].us_handler == CON_HANDLER_INIT_VALUE) {
+ _end_dut();
+ } else {
+#ifdef APPEMU_DEBUG
+ printf("-> Sending data to node %hu...\n", us__dut + 1);
+#endif
+ prime_MAC_DATA_request(p_node[us__dut].us_handler, puc_request, us_length_transmission, 1);
+#ifdef APPEMU_DEBUG
+ printf("%s: Test:%i\tAttempt:%i\tSent:%i\t\n",
+ p_node[us__dut].puc_serial,
+ (uint16_t)us__numTest,
+ (uint16_t)uc__num_attempt,
+ (uint16_t)p_conf_test[us__numTest].us_bytes_sent);
+#endif
+ p_node[us__dut].pul_round_trip[us__numTest] = _getTimeMs();
+ p_node[us__dut].puc_success_attempt[us__numTest] = uc__num_attempt;
+ uc_app_emu_st = APPEMU_WAIT_CONFIRM_MESSAGE_TEST;
+ ul_time_app_emu = TIME_REPEAT;
+ }
+
+ break;
+
+ case APPEMU_WAIT_CONFIRM_MESSAGE_TEST:
+ if (b_new_command) {
+ b_new_command = false;
+ if (p_counter_new_cmd->command == PRIME_MACSAP_DATA_CONFIRM) {
+ if (p_counter_new_cmd->answer == PRIME_MACSAP_RESULT_SUCCESS) {
+ uc_app_emu_st = APPEMU_WAIT_RECEIVE_MESSAGE_TEST;
+ } else {
+ switch (p_counter_new_cmd->errorType) {
+ case PRIME_MACSAP_ERROR_TIMEOUT:
+#ifdef APPEMU_DEBUG
+ printf("Timeout. Retrying page...\n");
+#endif
+ uc_app_emu_st = APPEMU_RETRY_MESSAGE_TEST;
+ break;
+
+ case PRIME_MACSAP_ERROR_TX_BUSY:
+ case PRIME_MACSAP_ERROR_NO_ACKED:
+#ifdef APPEMU_DEBUG
+ printf("ARQ transmission error %hu. Retrying packet...\n",
+ (uint16_t)p_counter_new_cmd->errorType);
+#endif
+ uc_app_emu_st = APPEMU_RETRY_MESSAGE_TEST;
+ break;
+
+ case PRIME_MACSAP_ERROR_INVALID_HANDLER:
+#ifdef APPEMU_DEBUG
+ printf("Warning: Invalid Handler %hu %hu\n",
+ p_counter_new_cmd->handler, (uint16_t)p_counter_new_cmd->type);
+#endif
+ if (p_counter_new_cmd->handler == p_node[us__dut].us_handler) {
+ _end_dut();
+ } else {
+ uc_app_emu_st = APPEMU_RETRY_MESSAGE_TEST;
+ }
+
+ break;
+
+ case PRIME_MACSAP_ERROR_NOT_REGISTERED:
+ default:
+#ifdef APPEMU_DEBUG
+ printf("ErrorType %hu\n",
+ (uint16_t)(p_counter_new_cmd->errorType));
+#endif
+ _end_dut();
+ break;
+ }
+ }
+ }
+ }
+
+ if (!ul_time_app_emu) {
+ uc_app_emu_st = APPEMU_RETRY_MESSAGE_TEST;
+ }
+
+ break;
+
+ case APPEMU_WAIT_RECEIVE_MESSAGE_TEST:
+ if (b_new_command) {
+ b_new_command = false;
+ if ((p_counter_new_cmd->command == PRIME_MACSAP_DATA_INDICATION) &&
+ (p_counter_new_cmd->handler == p_node[us__dut].us_handler)) {
+ /* It is the expected message */
+ if (p_counter_new_cmd->bufLength == us_length_reception) {
+ /* Good message, Next Test */
+ p_node[us__dut].pul_round_trip[us__numTest] = _get_round_trip(_getTimeMs(), p_node[us__dut].pul_round_trip[us__numTest]);
+
+ /* check it is not the last test of the node */
+#ifdef APPEMU_DEBUG
+ printf( "<- Received data from node %hu ... OK\n", us__dut + 1);
+ printf("Received:%i\n", p_conf_test[us__numTest].us_bytes_expected);
+#endif
+ if (p_conf_test[++us__numTest].uc_test_number != 0xFF) {
+ uc_app_emu_st = APPEMU_BUILD_MESSAGE_TEST;
+ } else {
+ uc_app_emu_st = APPEMU_END_TEST_NODE;
+ }
+ } else {
+ /* Bad message, Retry */
+ uc_app_emu_st = APPEMU_RETRY_MESSAGE_TEST;
+#ifdef APPEMU_DEBUG
+ printf( "<- Received data from node %hu ... FAIL\n", us__dut + 1);
+#endif
+ }
+ }
+ }
+
+ if (!ul_time_app_emu) {
+ uc_app_emu_st = APPEMU_RETRY_MESSAGE_TEST;
+ }
+
+ break;
+
+ case APPEMU_RETRY_MESSAGE_TEST:
+#ifdef APPEMU_DEBUG
+ printf("Received:FAIL\n");
+#endif
+ if (uc__num_attempt++ < NUM_RETRIES) {
+ uc_app_emu_st = APPEMU_SEND_MESSAGE_TEST;
+ } else {
+ /* Test Fail, next test */
+#ifdef APPEMU_DEBUG
+ printf("---TEST FAILED---\n");
+#endif
+ p_node[us__dut].pul_round_trip[us__numTest] = 0;
+ p_node[us__dut].puc_success_attempt[us__numTest] = 0;
+
+ /* check it is not the last test of the node */
+ if (p_conf_test[++us__numTest].uc_test_number != 0xFF) {
+ uc_app_emu_st = APPEMU_BUILD_MESSAGE_TEST;
+ } else {
+ uc_app_emu_st = APPEMU_END_TEST_NODE;
+ }
+ }
+
+ break;
+
+ case APPEMU_END_TEST_NODE:
+ /* Send through serial line test results */
+#ifdef APPEMU_DEBUG
+ printf("TEST RESULT [%s]:\n", p_node[us__dut].puc_serial);
+#endif
+ _send_result_node(us__dut);
+ _end_dut();
+ break;
+
+ case APPEMU_DISCONNECT_NODES:
+#ifdef APPEMU_DEBUG
+ printf("Closing connection with node %hu\n", us__dut + 1);
+#endif
+ prime_MAC_RELEASE_request(p_node[us__dut].us_handler);
+ p_node[us__dut].us_handler = CON_HANDLER_INIT_VALUE;
+ p_node[us__dut].puc_serial[0] = '\0';
+ p_node[us__dut].ul_start_time_test = 0;
+ if (++us__dut >= us__num_connections) {
+#ifdef APPEMU_DEBUG
+ printf("All nodes disconnected: Restart\n");
+#endif
+ us__num_connections = 0;
+ uc_app_emu_st = APPEMU_WAIT_NEW_CONNECTIONS;
+ }
+
+ break;
+ }
+}
diff --git a/thirdparty/prime/apps/prime_base_appemu/app_emu_common.c b/thirdparty/prime/apps/prime_base_appemu/app_emu_common.c
new file mode 100644
index 00000000..10dd8024
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/app_emu_common.c
@@ -0,0 +1,173 @@
+/**
+ * \file
+ *
+ * \brief Metering Application Emulator for all node types
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+/* System includes */
+#include <stdio.h>
+#include <string.h>
+
+/* CS includes */
+#include "app_emu_common.h"
+
+#include "compiler.h"
+
+#define MULTIPLIER 0x015a4e35L
+#define INCREMENT 1
+
+static long l_app_emu_seed; /* /< Randomize seed */
+static uint32_t ul_hundreds_of_ms = 0;
+uint32_t ul_tens_of_ms = 0;
+
+uint32_t ul_time_app_emu;
+
+
+/** @brief Build the time stamp in the buffer requested
+ *
+ * @param pc_timestamp Pointer to the current timestamp
+ *
+ * This function builds the time stamp included in requests as the number
+ * of seconds passed since the 00:00 PM.
+ **/
+void app_emu_build_timestamp(char *pc_timestamp)
+{
+#ifdef __GNUC__
+ sprintf(pc_timestamp, "%06lu", ul_hundreds_of_ms);
+#endif
+#ifdef __ICCARM__
+ sprintf(pc_timestamp, "%06u", ul_hundreds_of_ms);
+#endif
+
+ return;
+}
+
+/** @brief Fill a string with data
+ *
+ * @param String Pointer to the buffer to write data
+ * @param Size Data size to fill
+ * @param DownUp Boolean to indicate if packet is uplink / downlink
+ * @param Step Number of step in application
+ * @param TimeStamp Time stamp with the current instant
+ *
+ * This function prepares the data for the packet to be sent and fills it
+ * with ascii characters
+ **/
+
+void app_emu_fill_string(char *pc_str, uint16_t us_size, uint8_t uc_down_up,
+ uint16_t us_step, char *pc_timestamp)
+{
+ uint16_t i;
+ char c_asc = 'A';
+ char pc_down_up_str[] = {"UP"};
+
+ /* Build the main string to be transmitted */
+ if (uc_down_up) {
+ sprintf(pc_down_up_str, "UP");
+ } else {
+ sprintf(pc_down_up_str, "DW");
+ }
+
+ sprintf(pc_str, "%s%s%d%s", pc_down_up_str,
+ PROVIDER, (uint16_t)us_step, pc_timestamp);
+
+ /* Fill it with ascii characters */
+ for (i = (uint16_t)strlen(pc_str); i < us_size; i++) {
+ pc_str[i] = c_asc;
+
+ if (c_asc == 'Z') {
+ c_asc = 'A';
+ } else {
+ c_asc++;
+ }
+ }
+ pc_str[us_size] = '\0';
+}
+
+/** @brief Update timers 1 ms
+ *
+ * This function update application timers
+ **/
+
+void app_emu_update_10ms(void)
+{
+ if (ul_time_app_emu) {
+ ul_time_app_emu--;
+ }
+
+ if (ul_tens_of_ms++ == 10) {
+ ul_hundreds_of_ms++;
+ }
+}
+
+
+/** @brief initializes random number generator
+ *
+ * @param puc_mac Pointer to the MAC address
+ *
+ **/
+
+void app_emu_init_random(const uint8_t *puc_mac)
+{
+ uint8_t i;
+
+ l_app_emu_seed = 0;
+
+ for (i = 0; i < 6; i++) {
+ l_app_emu_seed += (uint16_t)puc_mac[i];
+ }
+ l_app_emu_seed <<= 2;
+}
+
+/** @brief random number generator
+ *
+ * @return the random number
+ *
+ * rand uses a multiplicative congruential random number generator with period
+ * 2^32 to return successive pseudo-
+ * random numbers in the range from 0 to 2^15 - 1.
+ * The generator is reinitialized by calling srand with an argument value of 1.
+ * It can be set to a new starting point by
+ * calling srand with a given seed number.
+ **/
+
+int app_emu_random(void)
+{
+ l_app_emu_seed = MULTIPLIER * l_app_emu_seed + INCREMENT;
+ return((int)((uint32_t)l_app_emu_seed >> 16) & 0x7fff);
+}
diff --git a/thirdparty/prime/apps/prime_base_appemu/app_emu_common.h b/thirdparty/prime/apps/prime_base_appemu/app_emu_common.h
new file mode 100644
index 00000000..34e27fda
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/app_emu_common.h
@@ -0,0 +1,188 @@
+/**
+ * \file
+ *
+ * \brief Metering Application Emulator for all node types
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ *
+ */
+#ifndef APP_EMU_COMMON_H
+#define APP_EMU_COMMON_H
+
+#include "compiler.h"
+
+/* *** Declarations ***********************************************************
+ **/
+
+#define PROVIDER "ATM"
+#define PROVIDER2 "A"
+
+#define APP_ID "APPLICATION EMULATION"
+#define APP_VERSION_STR "5.0"
+
+#define TIME_STEP 30 /* in 10ms. */
+#define TIME_REPEAT 200 /* in 10ms. */
+
+#define MAX_COUNTER_DATA_SIZE PPDU_LENGTH_6_SIZE
+#define TIMESTAMP_OFFSET 6
+#define TIMESTAMP_SIZE 6
+#define TIMESTAMP_END 11
+#define STEP_TIMEOUT 2
+
+#define DW_MSG 0
+#define UP_MSG 1
+
+#define STEP_0 0
+#define STEP_1 1
+#define STEP_20 2
+#define STEP_21 3
+#define STEP_30 4
+#define STEP_31 5
+#define STEP_40 6
+#define STEP_41 7
+#define STEP_42 8
+#define STEP_43 9
+#define STEP_50 10
+#define STEP_51 11
+#define STEP_60 12
+
+#define LAST_STEP STEP_60
+
+/*
+** Step 1: Initial Connection
+*/
+#define SERIAL_SIZE 9
+
+/*
+** Step 2: System Time Read
+*/
+#define TIME_REQUEST_SIZE 24
+#define TIME_RESPONSE_SIZE 36
+
+/*
+** Step 3: Energy Register Read
+*/
+#define ENERGY_REQUEST_SIZE 24
+#define ENERGY_RESPONSE_SIZE 31
+
+/*
+** Step 4: Accumulated Information Read
+*/
+#define INFO_REQUEST1_SIZE 75
+#define INFO_RESPONSE1_SIZE 138
+#define INFO_REQUEST2_SIZE 16
+#define INFO_RESPONSE2_SIZE 52
+
+/*
+** Step 5: PPDU Length testing
+*/
+#define PPDU_LENGTH_0_SIZE 18
+#define PPDU_LENGTH_1_SIZE 30
+#define PPDU_LENGTH_2_SIZE 66
+#define PPDU_LENGTH_3_SIZE 138
+#define PPDU_LENGTH_4_SIZE 210
+#define PPDU_LENGTH_5_SIZE 282
+#define PPDU_LENGTH_6_SIZE 354
+
+#define N_LENGTHS_TEST 46
+
+/*
+** Simplified version of the messages
+*/
+#define MSG_SIZE 9
+
+/* DATA Request and Indication Scheme Field Constant Definition */
+#define DBPSK 0
+#define DQPSK 1
+#define D8PSK 2
+#define DBPSK_PLUS_CONV 4
+#define DQPSK_PLUS_CONV 5
+#define D8PSK_PLUS_CONV 6
+
+#define CON_HANDLER_INIT_VALUE 0xFFFF
+
+#define TOTAL_NODES_REG 1
+
+#define RX_DATA_SCHEME DBPSK_PLUS_CONV
+
+#define FU_TYPE 251
+#define CON_TYPE 250
+#define CS432_TYPE 3
+
+/* *** Types **************************************************************** */
+
+struct meter_node {
+ uint16_t us_handler;
+ uint8_t uc_serial[SERIAL_SIZE + 1];
+ uint8_t uc_step;
+ uint8_t uc_data[MAX_COUNTER_DATA_SIZE];
+ uint16_t us_data_length;
+ char c_timestamp[TIMESTAMP_SIZE + 1];
+ uint8_t uc_timeout;
+ uint8_t uc_pending;
+};
+
+struct _tm {
+ uint32_t ul_tm_hour;
+ uint32_t ul_tm_min;
+ uint32_t ul_tm_sec;
+};
+
+/* *** Public Variables ******************************************************
+ **/
+
+#define time_set(t) {TempInt1 = t; }
+#define time_wait(t) {TempInt1 = t; while (TempInt1) }
+#define time_overflow() (TempInt1 == 0)
+
+#define CON_TIME_OUT (temp_int_con == 0)
+
+/*****************************************************************************
+** Prototypes for Common Functions **
+*****************************************************************************/
+
+void app_emu_build_timestamp(char *pc_timestamp);
+void app_emu_fill_string(char *c_string, uint16_t us_size, uint8_t uc_down_up,
+ uint16_t us_step, char *c_timestamp);
+void app_emu_update_10ms(void);
+
+void app_emu_start(void);
+void app_emu_process(void);
+
+void app_emu_init_random(const uint8_t *puc_mac);
+int app_emu_random(void);
+
+#endif
diff --git a/thirdparty/prime/apps/prime_base_appemu/main.c b/thirdparty/prime/apps/prime_base_appemu/main.c
new file mode 100644
index 00000000..d212c6e5
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/main.c
@@ -0,0 +1,365 @@
+/**
+ * \file
+ *
+ * \brief Metering Application Emulator (APPEMU) for ATMEL PRIME v1.3 Base Node
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+/**
+ * \mainpage ATMEL PRIME Metering Application Emulator (APPEMU) for Base Node
+ *
+ * \section Purpose
+ *
+ * This application provides the base node with metering emulation
+ * capabilities.
+ *
+ * \section Requirements
+ *
+ * This package should be used with SAM4CP16BMB board, on which there is
+ * dedicated PLC hardware.
+ *
+ * \section Description
+ *
+ * This application will configure the PRIME stack and its serial interface to
+ * use PHY, MAC and IEC_432 layers as Base Node. It will also implement a
+ * metering application emulator that will interact with the respective
+ * APPEMU-equipped base node.
+ *
+ * \section Usage
+ *
+ * -# Build the program and download it into the evaluation board. Please
+ * refer to the
+ * <a href="http://www.atmel.com/dyn/resources/prod_documents/6421B.pdf">
+ * SAM-BA User Guide</a> or the
+ * <a href="http://www.atmel.com/dyn/resources/prod_documents/doc6310.pdf">
+ * GNU-Based Software Development</a>
+ * application note depending on the solutions that users choose.
+ * \endcode
+ * -# The application will start PRIME standard as Base Node mode.
+ * -# The application is configured to serialize several protocols with
+ * these settings:
+ * - Uart0 Serial port
+ * - 115200 bauds
+ * - TX buffer: 1024 bytes, Rx buffer: 1024 bytes
+ * - Serialized protocols in use:
+ * - Prime Management
+ * - Prime MLME
+ * - Prime PLME
+ * - Prime IEC-432
+ *
+ */
+
+/* Atmel library includes. */
+#include "asf.h"
+
+/* Atmel boards includes. */
+#include "board.h"
+
+/* Configuration includes. */
+#include "conf_example.h"
+
+/* AppEmu includes */
+#include "app_emu.h"
+#include "conf_app_emu.h"
+
+#define STRING_EOL "\r"
+#define STRING_HEADER \
+ "-- ATMEL Prime Base Node Metering Application Emulator --\r\n" \
+ "-- "BOARD_NAME " --\r\n" \
+ "-- Compiled: "__DATE__ " "__TIME__ " --"STRING_EOL
+
+/* FreeRTOS utils */
+void vApplicationIdleHook( void );
+void vApplicationMallocFailedHook( void );
+void vApplicationStackOverflowHook( xTaskHandle pxTask,
+ signed char *pcTaskName );
+void vApplicationTickHook( void );
+
+/*-----------------------------------------------------------*/
+void vApplicationMallocFailedHook( void )
+{
+ /* vApplicationMallocFailedHook() will only be called if
+ * configUSE_MALLOC_FAILED_HOOK is set to 1 in FreeRTOSConfig.h. It is
+ * a hook function that will get called if a call to pvPortMalloc() fails.
+ * pvPortMalloc() is called internally by the kernel whenever a task,
+ * queue,timer or semaphore is created. It is also called by various parts of
+ * the demo application. If heap_1.c or heap_2.c are used, then the size of
+ * the heap available to pvPortMalloc() is defined by configTOTAL_HEAP_SIZE
+ * in FreeRTOSConfig.h, and the xPortGetFreeHeapSize() API function can be
+ * used to query the size of free heap space that remains (although it does
+ * not provide information on how the remaining heap might be fragmented).
+ * */
+ taskDISABLE_INTERRUPTS();
+ for (;;) {
+ while (1) {
+ }
+ }
+}
+
+/*-----------------------------------------------------------*/
+void vApplicationIdleHook( void )
+{
+ /* vApplicationIdleHook() will only be called if configUSE_IDLE_HOOK is
+ * set to 1 in FreeRTOSConfig.h. It will be called on each iteration of the
+ * idle task. It is essential that code added to this hook function never
+ * attempts to block in any way (for example, call xQueueReceive() with a block
+ * time specified, or call vTaskDelay()). If the application makes use of
+ * the vTaskDelete() API function (as this demo application does) then it is
+ * also important that vApplicationIdleHook() is permitted to return to its
+ * calling function, because it is the responsibility of the idle task to clean
+ * up memory allocated by the kernel to any task that has since been
+ * deleted. */
+}
+
+/*-----------------------------------------------------------*/
+void vApplicationStackOverflowHook( xTaskHandle pxTask,
+ signed char *pcTaskName )
+{
+ (void)pcTaskName;
+ (void)pxTask;
+
+ /* Run time stack overflow checking is performed if
+ * configCHECK_FOR_STACK_OVERFLOW is defined to 1 or 2. This hook
+ * function is called if a stack overflow is detected. */
+ taskDISABLE_INTERRUPTS();
+ for (;;) {
+ while (1) {
+ }
+ }
+}
+
+/*-----------------------------------------------------------*/
+void vApplicationTickHook( void )
+{
+ /* This function will be called by each tick interrupt if
+ * configUSE_TICK_HOOK is set to 1 in FreeRTOSConfig.h. User code can
+ * be added here, but the tick hook is called from an interrupt context, so
+ * code must not attempt to block, and only the interrupt safe FreeRTOS
+ * API functions can be used (those that end in FromISR()). */
+}
+
+/**
+ * \brief Configure the hardware.
+ */
+static void prvSetupHardware(void)
+{
+#ifdef EXAMPLE_LCD_SIGNALLING_ENABLE
+ status_code_t status;
+#endif
+
+ /* ASF function to setup clocking. */
+ sysclk_init();
+
+ /* Ensure all priority bits are assigned as preemption priority bits. */
+ NVIC_SetPriorityGrouping(__NVIC_PRIO_BITS);
+
+ /* Atmel library function to setup for the evaluation kit being used. */
+ board_init();
+
+ /* PLC HAL service initialization */
+ hal_init();
+ hal_start();
+
+#ifdef EXAMPLE_LCD_SIGNALLING_ENABLE
+ /* Initialize the C42364A LCD glass component. */
+ status = c42364a_init();
+ if (status != STATUS_OK) {
+ puts("-- LCD Initialization fails! --\r\n");
+ while (1) {
+ }
+ }
+
+ c42364a_set_contrast(15);
+ c42364a_clear_all();
+ c42364a_show_icon(C42364A_ICON_ATMEL);
+ c42364a_show_icon(C42364A_ICON_WLESS);
+ c42364a_show_text((const uint8_t *)"BASE ");
+#endif
+ /* Init pin of APPEMU enable */
+ ioport_set_pin_dir(PIN_APPEMU_GPIO, IOPORT_DIR_INPUT);
+}
+
+#ifdef EXAMPLE_LCD_SIGNALLING_ENABLE
+
+/**
+ * \internal
+ * \brief Function to blink a symbol or led.
+ * \note Please see conf_oss file in order to configure the signalling.
+ *
+ */
+static uint8_t _blink_symbol(uint8_t icon_com, uint8_t icon_seg, uint8_t status)
+{
+ if (!status) {
+ c42364a_show_icon(icon_com, icon_seg);
+ return true;
+ } else {
+ c42364a_clear_icon(icon_com, icon_seg);
+ return false;
+ }
+}
+
+#endif
+
+/**
+ * \internal
+ * \brief Periodic task to provide visual feedback that the system status.
+ * \note Please see conf_oss file in order to configure the signalling.
+ *
+ */
+#ifdef EXAMPLE_LCD_SIGNALLING_ENABLE
+extern uint8_t macPLCState;
+extern uint8_t connection432State;
+extern uint8_t certificationState;
+static uint8_t uc_blink_status;
+#endif
+static void _prime_signalling(xTimerHandle pxTimer)
+{
+ UNUSED(pxTimer);
+#if BOARD == SAM4CMP_DB
+ LED_Toggle(LED4);
+#elif BOARD == SAM4CMS_DB
+ LED_Toggle(LED4);
+#elif BOARD == SAM4C_EK
+ LED_Toggle(LED0);
+#else
+ LED_Toggle(LED0);
+#endif
+
+#ifdef EXAMPLE_LCD_SIGNALLING_ENABLE
+ if (certificationState == 1) {
+ c42364a_show_text((const uint8_t *)"PHYCER");
+ } else {
+ switch (macPLCState) {
+ case 0: /* DISCONNECTED */
+ uc_blink_status = _blink_symbol(C42364A_ICON_WLESS,
+ uc_blink_status);
+ c42364a_show_text((const uint8_t *)"BN DIS");
+ break;
+
+ case 1: /* DETECTION */
+ uc_blink_status = _blink_symbol(C42364A_ICON_WLESS,
+ uc_blink_status);
+ c42364a_show_text((const uint8_t *)"BN BCN");
+ break;
+
+ case 2: /* REGISTERING */
+ uc_blink_status = _blink_symbol(C42364A_ICON_WLESS,
+ uc_blink_status);
+ c42364a_show_text((const uint8_t *)"BN REQ");
+ break;
+
+ case 3: /* OPERATIVE */
+ c42364a_show_icon(C42364A_ICON_WLESS);
+ if (connection432State) {
+ c42364a_show_text((const uint8_t *)"BN CON");
+ } else {
+ c42364a_show_text((const uint8_t *)"BN REG");
+ }
+
+ break;
+
+ default:
+ break;
+ }
+ }
+#endif
+}
+
+/**
+ * Configure UART console.
+ */
+/* [main_console_configure] */
+static void configure_dbg_console(void)
+{
+ const usart_serial_options_t uart_serial_options = {
+ .baudrate = CONF_UART_BAUDRATE,
+ .paritytype = CONF_UART_PARITY
+ };
+
+ /* Configure console UART. */
+ sysclk_enable_peripheral_clock(CONF_UART_ID);
+ stdio_serial_init(CONF_UART, &uart_serial_options);
+}
+
+/**
+ * \brief Main code entry point.
+ */
+int main( void )
+{
+ xTimerHandle xMonitorTimer;
+
+ /* Prepare the hardware */
+ prvSetupHardware();
+
+ /* Init Prime Stack */
+ vPrimeStackInitTask();
+
+ /* Configure console */
+ configure_dbg_console();
+ puts(STRING_HEADER);
+
+ /* Debug port for AppEmu */
+ if (!pio_get(PIN_APPEMU_PIO, PIN_APPEMU_TYPE, PIN_APPEMU_MASK)) {
+ /* Init AppEmu Application */
+ vAppEmuInitTask();
+ }
+
+ /* Create timer to monitor tasks execution */
+ xMonitorTimer = xTimerCreate(
+ (const signed char *const)"Monitor timer",
+ SIGNALLING_TIMER_RATE,
+ pdTRUE,
+ NULL,
+ _prime_signalling
+ );
+ configASSERT(xMonitorTimer);
+ xTimerStart(xMonitorTimer, SIGNALLING_TIMER_RATE);
+
+ /* Start the tasks and timer running. */
+ vTaskStartScheduler();
+
+ /* If all is well, the scheduler will now be running, and the following
+ * line will never be reached. If the following line does execute, then
+ * there was insufficient FreeRTOS heap memory available for the idle
+ * and/or
+ * timer tasks to be created. See the memory management section on the
+ * FreeRTOS web site for more details. */
+ for (;;) {
+ }
+}
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/FreeRTOSConfig.h b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/FreeRTOSConfig.h
new file mode 100644
index 00000000..ca39ee85
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/FreeRTOSConfig.h
@@ -0,0 +1,154 @@
+/**
+ *
+ * \file
+ *
+ * \brief Generic FreeRTOS peripheral control functions
+ *
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+
+#ifndef FREERTOS_CONFIG_H
+#define FREERTOS_CONFIG_H
+
+/*-----------------------------------------------------------
+ * Application specific definitions.
+ *
+ * These definitions should be adjusted for your particular hardware and
+ * application requirements.
+ *
+ * THESE PARAMETERS ARE DESCRIBED WITHIN THE 'CONFIGURATION' SECTION OF THE
+ * FreeRTOS API DOCUMENTATION AVAILABLE ON THE FreeRTOS.org WEB SITE.
+ *
+ * See http://www.freertos.org/a00110.html.
+ *----------------------------------------------------------*/
+
+#if defined (__GNUC__) || defined (__ICCARM__)
+#include <stdint.h>
+#endif
+
+//#define configUSE_PORT_OPTIMISED_TASK_SELECTION 1
+#define configUSE_TICKLESS_IDLE 0
+#define configUSE_PREEMPTION 0
+#define configUSE_IDLE_HOOK 0
+#define configUSE_TICK_HOOK 0
+#define configCPU_CLOCK_HZ ( sysclk_get_cpu_hz() )
+#define configTICK_RATE_HZ ( ( portTickType ) 1000 )
+#define configMAX_PRIORITIES ( ( unsigned portBASE_TYPE ) 5 )
+#define configMINIMAL_STACK_SIZE ( ( unsigned short ) 130 )
+#define configTOTAL_HEAP_SIZE ( ( size_t ) 15000 )
+#define configMAX_TASK_NAME_LEN ( 16 )
+#define configUSE_TRACE_FACILITY 0
+#define configUSE_16_BIT_TICKS 0
+#define configIDLE_SHOULD_YIELD 1
+#define configUSE_MUTEXES 1
+#define configQUEUE_REGISTRY_SIZE 12
+#define configCHECK_FOR_STACK_OVERFLOW 0
+#define configUSE_RECURSIVE_MUTEXES 1
+#define configUSE_MALLOC_FAILED_HOOK 0
+#define configUSE_APPLICATION_TASK_TAG 0
+#define configUSE_COUNTING_SEMAPHORES 1
+
+/* Co-routine definitions. */
+#define configUSE_CO_ROUTINES 0
+#define configMAX_CO_ROUTINE_PRIORITIES ( 2 )
+
+/* Software timer definitions. */
+#define configUSE_TIMERS 1
+#define configTIMER_TASK_PRIORITY ( configMAX_PRIORITIES - 1 )
+#define configTIMER_QUEUE_LENGTH 5
+#define configTIMER_TASK_STACK_DEPTH ( configMINIMAL_STACK_SIZE * 3 )
+
+/* Set the following definitions to 1 to include the API function, or zero
+to exclude the API function. */
+#define INCLUDE_vTaskPrioritySet 1
+#define INCLUDE_uxTaskPriorityGet 1
+#define INCLUDE_vTaskDelete 1
+#define INCLUDE_vTaskCleanUpResources 1
+#define INCLUDE_vTaskSuspend 1
+#define INCLUDE_vTaskDelayUntil 1
+#define INCLUDE_vTaskDelay 1
+#define INCLUDE_eTaskStateGet 1
+
+#define INCLUDE_uxTaskGetStackHighWaterMark 1
+
+/* FreeRTOS+CLI definitions. */
+
+/* Dimensions a buffer into which command outputs can be written. The buffer
+can be declared in the CLI code itself, to allow multiple command consoles to
+share the same buffer. For example, an application may allow access to the
+command interpreter by UART and by Ethernet. Sharing a buffer is done purely
+to save RAM. Note, however, that the command console itself is not re-entrant,
+so only one command interpreter interface can be used at any one time. For
+that reason, no attempt at providing mutual exclusion to the buffer is
+attempted. */
+#define configCOMMAND_INT_MAX_OUTPUT_SIZE 400
+
+
+/* Cortex-M specific definitions. */
+
+#ifdef __NVIC_PRIO_BITS
+ /* __BVIC_PRIO_BITS will be specified when CMSIS is being used. */
+ #define configPRIO_BITS __NVIC_PRIO_BITS
+#else
+ #define configPRIO_BITS 4 /* 15 priority levels */
+#endif
+
+/* The lowest interrupt priority that can be used in a call to a "set priority"
+function. */
+#define configLIBRARY_LOWEST_INTERRUPT_PRIORITY 0x0f
+
+/* The highest interrupt priority that can be used by any interrupt service
+routine that makes calls to interrupt safe FreeRTOS API functions. DO NOT CALL
+INTERRUPT SAFE FREERTOS API FUNCTIONS FROM ANY INTERRUPT THAT HAS A HIGHER
+PRIORITY THAN THIS! (higher priorities are lower numeric values. */
+#define configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY 10
+
+/* Interrupt priorities used by the kernel port layer itself. These are generic
+to all Cortex-M ports, and do not rely on any particular library functions. */
+#define configKERNEL_INTERRUPT_PRIORITY ( configLIBRARY_LOWEST_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) )
+#define configMAX_SYSCALL_INTERRUPT_PRIORITY ( configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) )
+
+/* Normal assert() semantics without relying on the provision of an assert.h
+header file. */
+#define configASSERT( x ) //if( ( x ) == 0 ) { taskDISABLE_INTERRUPTS(); for( ;; ) __asm volatile( "NOP" ); }
+#define INCLUDE_MODULE_TEST 0
+
+//#include "trcHooks.h"
+
+#endif /* FREERTOS_CONFIG_H */
+
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_app_emu.h b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_app_emu.h
new file mode 100644
index 00000000..69393be0
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_app_emu.h
@@ -0,0 +1,61 @@
+/**
+ * \file
+ *
+ * \brief Example configuration for the Metering Application Emulator
+ *
+ * Copyright (C) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_APP_EMU_H
+#define CONF_APP_EMU_H
+
+/* Enable debug printouts */
+#define APPEMU_DEBUG
+
+/* APPEMU: ON/OFF JUMPER CONFIG */
+#define PIN_APPEMU_GPIO (PIO_PC3_IDX)
+#define PIN_APPEMU_FLAGS (PIO_INPUT)
+#define PIN_APPEMU {PIO_PC3, PIOC, ID_PIOC, PIO_INPUT, PIO_DEBOUNCE | \
+ PIO_PULLUP}
+#define PIN_APPEMU_MASK PIO_PC3
+#define PIN_APPEMU_PIO PIOC
+#define PIN_APPEMU_ID ID_PIOC
+#define PIN_APPEMU_TYPE PIO_INPUT
+#define PIN_APPEMU_ATTR PIO_DEBOUNCE | PIO_PULLUP
+
+#endif /* CONF_APP_EMU_H */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_board.h b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_board.h
new file mode 100644
index 00000000..faecd715
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_board.h
@@ -0,0 +1,105 @@
+/**
+ * \file
+ *
+ * \brief SAM4C-EK board configuration.
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_BOARD_H_INCLUDED
+#define CONF_BOARD_H_INCLUDED
+
+/* Keep watchdog at board initialization (not disable it) */
+//#define CONF_BOARD_KEEP_WATCHDOG_AT_INIT
+
+/* Configure UART0 pins */
+#define CONF_BOARD_UART_CONSOLE
+#define CONF_BOARD_UART0
+
+/* Configure LCD backlight */
+//#define CONF_BOARD_UART_CONSOLE
+
+/* Configure PWM LED0 pin */
+//#define CONF_BOARD_PWM_LED0
+
+/* Configure PWM LED1 pin */
+//#define CONF_BOARD_PWM_LED1
+
+/* Configure PWM LED2 pin */
+//#define CONF_BOARD_PWM_LED2
+
+/* Configure SPI0 pins */
+#define CONF_BOARD_SPI0
+#define CONF_BOARD_SPI0_NPCS0
+
+/* Configure SPI1 pins */
+//#define CONF_BOARD_SPI1
+//#define CONF_BOARD_SPI0_NPCS1
+
+/* Configure TWI0 pins */
+//#define CONF_BOARD_TWI0
+
+/* Configure TWI0 pins for AT30TSE */
+//#define CONF_BOARD_AT30TSE
+
+/* Configure TWI1 pins */
+//#define CONF_BOARD_TWI1
+
+/* Configure USART pins */
+//#define CONF_BOARD_USART_RXD
+//#define CONF_BOARD_USART_TXD
+//#define CONF_BOARD_USART_CTS
+//#define CONF_BOARD_USART_RTS
+//#define CONF_BOARD_USART_SCK
+
+/* Configure IrDA transceiver shutdown pin */
+//#define CONF_BOARD_TFDU4300_SD
+
+/* Configure RS485 transceiver RE pin */
+//#define CONF_BOARD_ADM3485_RE
+
+/* Configure ISO7816 card reset pin */
+//#define CONF_BOARD_ISO7816_RST
+
+/* Configure ISO7816 interface TXD & SCK pin */
+//#define CONF_BOARD_ISO7816
+
+/* Configure ADC pins */
+//#define CONF_BOARD_ADC
+
+#endif /* CONF_BOARD_H_INCLUDED */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_buart_if.h b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_buart_if.h
new file mode 100644
index 00000000..313c7000
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_buart_if.h
@@ -0,0 +1,68 @@
+/**
+ * \file
+ *
+ * \brief PLC UART Buffered configuration file.
+ *
+ * This file contains basic functions for the SAM BUFFERED UART, with support
+ * for all
+ * modes, settings and clock speeds.
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_BUART_IF_H_INCLUDED
+#define CONF_BUART_IF_H_INCLUDED
+
+/** Timers Configuration */
+#define ID_TC_UART ID_TC5
+#define TC_UART TC1
+#define TC_UART_CHN 2
+#define TC_UART_Handler TC5_Handler
+
+/* Max. Number of UARTS */
+#define NUMUARTS 1
+
+/** Configuration Size Buffers */
+#define RX_UART_BUF0_SIZE 1024
+#define TX_UART_BUF0_SIZE 1024
+#if (NUMUARTS > 1)
+#define RX_UART_BUF1_SIZE 1024
+#define TX_UART_BUF1_SIZE 1024
+#endif
+
+#endif /* CONF_BUART_IF_H_INCLUDED */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_busart_if.h b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_busart_if.h
new file mode 100644
index 00000000..3575f582
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_busart_if.h
@@ -0,0 +1,68 @@
+/**
+ * \file
+ *
+ * \brief PLC USART Buffered configuration file.
+ *
+ * This file contains basic functions for the SAM BUFFERED USART, with support
+ * for all
+ * modes, settings and clock speeds.
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_BUSART_IF_H_INCLUDED
+#define CONF_BUSART_IF_H_INCLUDED
+
+/** Timers Configuration */
+#define ID_TC_USART ID_TC4
+#define TC_USART TC1
+#define TC_USART_CHN 1
+#define TC_USART_Handler TC4_Handler
+
+/* Max. Number of USARTS */
+#define NUMUSARTS 1
+
+/** Configuration Size Buffers */
+#define RX_USART_BUF0_SIZE 128
+#define TX_USART_BUF0_SIZE 128
+#if (NUMUSARTS > 1)
+#define RX_USART_BUF1_SIZE 128
+#define TX_USART_BUF1_SIZE 128
+#endif
+
+#endif /* CONF_BUSART_IF_H_INCLUDED */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_clock.h b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_clock.h
new file mode 100644
index 00000000..bd03dc41
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_clock.h
@@ -0,0 +1,108 @@
+/**
+ * \file
+ *
+ * \brief SAM4C clock configuration.
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_CLOCK_H_INCLUDED
+#define CONF_CLOCK_H_INCLUDED
+
+// ===== System Clock (MCK) Source Options
+//#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_SLCK_RC
+//#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_SLCK_XTAL
+//#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_SLCK_BYPASS
+//#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_MAINCK_4M_RC
+//#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_MAINCK_8M_RC
+//#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_MAINCK_12M_RC
+//#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_MAINCK_XTAL
+//#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_MAINCK_BYPASS
+//#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_PLLACK
+#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_PLLBCK
+
+// ===== System Clock (MCK) Prescaler Options (Fmck = Fsys / (SYSCLK_PRES))
+#define CONFIG_SYSCLK_PRES SYSCLK_PRES_1
+//#define CONFIG_SYSCLK_PRES SYSCLK_PRES_2
+//#define CONFIG_SYSCLK_PRES SYSCLK_PRES_4
+//#define CONFIG_SYSCLK_PRES SYSCLK_PRES_8
+//#define CONFIG_SYSCLK_PRES SYSCLK_PRES_16
+//#define CONFIG_SYSCLK_PRES SYSCLK_PRES_32
+//#define CONFIG_SYSCLK_PRES SYSCLK_PRES_64
+//#define CONFIG_SYSCLK_PRES SYSCLK_PRES_3
+
+// ===== PLL0 (A) Options (8.192M = (32.768K * 250) / 1)
+//#define CONFIG_PLL0_SOURCE PLLA_SRC_SLCK_32K_XTAL
+
+// ===== PLL1 (B) Options (Fpll = (Fclk * PLL_mul) / PLL_div)
+// Use mul and div effective values here.
+#define CONFIG_PLL1_SOURCE PLLB_SRC_MAINCK_XTAL
+#define CONFIG_PLL1_MUL (240000000UL / BOARD_FREQ_MAINCK_XTAL)
+#define CONFIG_PLL1_DIV 2
+
+// ===== Coprocessor System Clock (CPMCK) Options
+// Fcpmck = Fcpclk_source / CPCLK_PRES
+
+// Note:
+// CONFIG_CPCLK_ENABLE MUST be defined if using peripherals on bus matrix 1.
+#define CONFIG_CPCLK_ENABLE
+
+// Coprocessor System Clock Source Options
+//#define CONFIG_CPCLK_SOURCE CPCLK_SRC_SLCK
+//#define CONFIG_CPCLK_SOURCE CPCLK_SRC_MAINCK
+//#define CONFIG_CPCLK_SOURCE CPCLK_SRC_PLLACK
+//#define CONFIG_CPCLK_SOURCE CPCLK_SRC_PLLBCK
+#define CONFIG_CPCLK_SOURCE CPCLK_SRC_MCK
+
+// Coprocessor System Clock Prescaler Options (CPCLK_PRES may be 1 to 16).
+#define CONFIG_CPCLK_PRES 1
+
+// ===== Main processor frequency (MCK)
+// - XTAL frequency: 8MHz
+// - System clock source: PLLB
+// - System clock prescaler: 1 (divided by 1)
+// - PLLB source: XTAL
+// - PLLB output: XTAL * 30 / 2
+// - System clock: 8 * 30 / 2 / 1 = 120MHz
+//
+// ===== Coprocessor frequency (CPMCK)
+// - Coprocessor system clock source: MCK
+// - Coprocessor system clock prescaler: 1 (divided by 1)
+// - Coprocessor system clock: 120MHz / 1 = 120MHz
+
+#endif /* CONF_CLOCK_H_INCLUDED */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_example.h b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_example.h
new file mode 100644
index 00000000..2cd53fb7
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_example.h
@@ -0,0 +1,52 @@
+/**
+ * \file
+ *
+ * \brief Example configuration for ATMEL PRIME v1.3 Service Node
+ *
+ * Copyright (C) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_EXAMPLE_H
+#define CONF_EXAMPLE_H
+
+/* Enable LCD signalling */
+/* #define EXAMPLE_LCD_SIGNALLING_ENABLE */
+/* Signalling Indication Period */
+#define SIGNALLING_TIMER_RATE (250 / portTICK_RATE_MS)
+
+#endif /* CONF_EXAMPLE_H */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_oss.h b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_oss.h
new file mode 100644
index 00000000..ddb3f508
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_oss.h
@@ -0,0 +1,53 @@
+/**
+ * \file
+ *
+ * \brief OSS Layer Configuration.
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_OSS_H_INCLUDE
+#define CONF_OSS_H_INCLUDE
+
+/* Disable PRM capability */
+#define OSS_PRIME_DISABLE_PRM
+
+/* Enable embedded sniffer serialization */
+/* #define OSS_PRIME_ENABLE_EMB_SNIFFER */
+
+#endif /* CONF_OSS_H_INCLUDE */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_phy.h b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_phy.h
new file mode 100644
index 00000000..7a292363
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_phy.h
@@ -0,0 +1,50 @@
+/**
+ * \file
+ *
+ * \brief PHY Layer Configuration.
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_PHY_H_INCLUDE
+#define CONF_PHY_H_INCLUDE
+
+/* Select Coupling Board Configuration (see values in atpl230.h) */
+#define BOARD_COUPLING ATPLCOUP000_v2
+
+#endif /* CONF_PHY_H_INCLUDE */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_pplc_if.h b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_pplc_if.h
new file mode 100644
index 00000000..0b700f06
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_pplc_if.h
@@ -0,0 +1,69 @@
+/**
+ * \file
+ *
+ * \brief PPLC interface Configuration.
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_PPLC_IF_H_INCLUDE
+#define CONF_PPLC_IF_H_INCLUDE
+
+#include "board.h"
+
+/* Select the SPI module that PPLC is connected to */
+#define PPLC_SPI_MODULE SPI0
+
+/* Chip select used by PPLC internal peripheral */
+#define PPLC_CS 0
+
+/* Interruption pin used by PPLC internal peripheral */
+#define PPLC_INT_GPIO (PIO_PA12_IDX)
+#define PPLC_INT_FLAGS (IOPORT_MODE_DEBOUNCE)
+#define PPLC_INT_SENSE (IOPORT_SENSE_FALLING)
+
+#define PPLC_INT {PIO_PA12, PIOB, ID_PIOB, PIO_INPUT, \
+ PIO_DEBOUNCE | PIO_IT_FALL_EDGE}
+#define PPLC_INT_MASK PIO_PA12
+#define PPLC_INT_PIO PIOB
+#define PPLC_INT_ID ID_PIOB
+#define PPLC_INT_TYPE PIO_INPUT
+#define PPLC_INT_ATTR (PIO_DEBOUNCE | PIO_IT_FALL_EDGE)
+#define PPLC_INT_IRQn PIOB_IRQn
+
+#endif /* CONF_PPLC_IF_H_INCLUDE */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_prime.h b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_prime.h
new file mode 100644
index 00000000..a53cd739
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_prime.h
@@ -0,0 +1,100 @@
+/**
+ * \file
+ *
+ * \brief PRIME configuration file.
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_PRIME_H_INCLUDED
+#define CONF_PRIME_H_INCLUDED
+
+#include "compiler.h"
+#include "conf_usi.h"
+
+/* PRIME MODE */
+#define PRIME_BASE
+
+/* Firmware Information */
+#define PRIME_FW_VENDOR "ATMEL"
+#define PRIME_FW_MODEL "SAM4CEK/000"
+#define PRIME_FW_VERSION "01.03.08.01"
+
+/* Prime PIB firmware information */
+#define PRIME_PIB_VENDOR 0x0000
+#define PRIME_PIB_MODEL 0x3430
+#define PRIME_PIB_VERSION_LEN 8
+#define PRIME_PIB_VERSION "01030801"
+
+/* Not Minimum SNR value */
+/* #define NOT_USE_MINIMUM_SNR_VALID */
+
+/* MAC Capabilities */
+/* #define NODE_CAPABLE_CFP */
+#define NODE_CAPABLE_PRM
+#define NODE_CAPABLE_ARQ
+#define NODE_CAPABLE_DIR_SW
+
+/* Firmware Upgrade Protocol */
+#define CFG_BASEMNG BASEMNG_DISABLE
+
+#ifdef USE_MNGP_PRIME_PORT
+ #define MNGLAYER_USE_SERIAL_PROFILE
+#endif
+
+#ifdef USE_PROTOCOL_MAC_PRIME_PORT
+ #define MAC_USI_SERIALIZATION
+#endif
+
+#ifdef USE_PROTOCOL_MLME_PRIME_PORT
+ #define MLME_USI_SERIALIZATION
+#endif
+
+#ifdef USE_PROTOCOL_PLME_PRIME_PORT
+ #define PLME_USI_SERIALIZATION
+#endif
+
+#ifdef USE_PROTOCOL_432_PRIME_PORT
+ #define SSCS432_USI_SERIALIZATION
+#endif
+
+#ifdef USE_PROTOCOL_SNIF_PRIME_PORT
+ #define SNIFFER_USI_SERIALIZATION
+#endif
+
+#endif /* CONF_PRIME_H_INCLUDED */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_uart_serial.h b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_uart_serial.h
new file mode 100644
index 00000000..bb9c6a93
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_uart_serial.h
@@ -0,0 +1,56 @@
+/**
+ * \file
+ *
+ * \brief Serial UART service configuration.
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_UART_SERIAL_H_INCLUDED
+#define CONF_UART_SERIAL_H_INCLUDED
+
+/** Console Interface */
+#define CONF_UART CONSOLE_UART
+/** Console Interface ID */
+#define CONF_UART_ID CONSOLE_UART_ID
+/** Baudrate setting */
+#define CONF_UART_BAUDRATE 115200UL
+/** Parity setting */
+#define CONF_UART_PARITY UART_MR_PAR_NO
+
+#endif /* CONF_UART_SERIAL_H_INCLUDED */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_usi.h b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_usi.h
new file mode 100644
index 00000000..3ee594cd
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/conf_usi.h
@@ -0,0 +1,63 @@
+/**
+ * \file
+ *
+ * \brief USI Layer Configuration
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_USI_H_INCLUDED
+#define CONF_USI_H_INCLUDED
+
+#include "conf_buart_if.h"
+#include "conf_busart_if.h"
+
+/* Port Communications configuration */
+#define NUM_PORTS 1
+#define PORT_0 CONF_PORT(UART_TYPE, 0, 115200, TX_UART_BUF0_SIZE, \
+ RX_UART_BUF0_SIZE)
+
+/* USI protocols configuration. Enable/Disable protocols */
+#define NUM_PROTOCOLS 5
+#define USE_MNGP_PRIME_PORT 0
+#define USE_PROTOCOL_432_PRIME_PORT 0
+#define USE_PROTOCOL_MLME_PRIME_PORT 0
+#define USE_PROTOCOL_PLME_PRIME_PORT 0
+#define USE_PROTOCOL_BASEMNG_PORT 0
+
+#endif /* CONF_USI_H_INCLUDED */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/gcc/Makefile b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/gcc/Makefile
new file mode 100644
index 00000000..ae3f617b
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/gcc/Makefile
@@ -0,0 +1,52 @@
+# List of available make goals:
+#
+# all Default target, builds the project
+# clean Clean up the project
+# rebuild Rebuild the project
+#
+#
+# doc Build the documentation
+# cleandoc Clean up the documentation
+# rebuilddoc Rebuild the documentation
+#
+# Copyright (c) 2011 Atmel Corporation. All rights reserved.
+#
+# \asf_license_start
+#
+# \page License
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are met:
+#
+# 1. Redistributions of source code must retain the above copyright notice,
+# this list of conditions and the following disclaimer.
+#
+# 2. Redistributions in binary form must reproduce the above copyright notice,
+# this list of conditions and the following disclaimer in the documentation
+# and/or other materials provided with the distribution.
+#
+# 3. The name of Atmel may not be used to endorse or promote products derived
+# from this software without specific prior written permission.
+#
+# 4. This software may only be redistributed and used in connection with an
+# Atmel microcontroller product.
+#
+# THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+# EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+# POSSIBILITY OF SUCH DAMAGE.
+#
+# \asf_license_stop
+#
+
+# Include the common Makefile, which will also include the project specific
+# config.mk file.
+MAKEFILE_PATH = ../../../../../../sam/utils/make/Makefile.sam.in
+include $(MAKEFILE_PATH)
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/gcc/asf.h b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/gcc/asf.h
new file mode 100644
index 00000000..69d7c19b
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/gcc/asf.h
@@ -0,0 +1,171 @@
+/**
+ * \file
+ *
+ * \brief Autogenerated API include file for the Atmel Software Framework (ASF)
+ *
+ * Copyright (c) 2012 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef ASF_H
+#define ASF_H
+
+/*
+ * This file includes all API header files for the selected drivers from ASF.
+ * Note: There might be duplicate includes required by more than one driver.
+ *
+ * The file is automatically generated and will be re-written when
+ * running the ASF driver selector tool. Any changes will be discarded.
+ */
+
+// From module: Common SAM compiler driver
+#include <compiler.h>
+#include <status_codes.h>
+
+// From module: EEFC - Enhanced Embedded Flash Controller
+#include <efc.h>
+
+// From module: Flash - SAM Flash Service API
+#include <flash_efc.h>
+
+// From module: FreeRTOS mini Real-Time Kernel
+#include <FreeRTOS.h>
+#include <FreeRTOS_CLI.h>
+#include <StackMacros.h>
+#include <croutine.h>
+#include <list.h>
+#include <mpu_wrappers.h>
+#include <portable.h>
+#include <projdefs.h>
+#include <queue.h>
+#include <semphr.h>
+#include <task.h>
+#include <timers.h>
+
+// From module: GPBR - General Purpose Backup Register
+#include <gpbr.h>
+
+// From module: Generic board support
+#include <board.h>
+
+// From module: IOPORT - General purpose I/O service
+#include <ioport.h>
+
+// From module: Interrupt management - SAM implementation
+#include <interrupt.h>
+
+// From module: PDC - Peripheral DMA Controller Example
+#include <pdc.h>
+
+// From module: PIO - Parallel Input/Output Controller
+#include <pio.h>
+
+// From module: PLC Buffered PDC Uart Service Interface
+#include <buart_if.h>
+
+// From module: PLC Buffered PDC Usart Service Interface
+#include <busart_if.h>
+
+// From module: PLC PRIME CRC calculation service
+#include <pcrc.h>
+
+// From module: PLC Physical Layer Interface
+#include <atpl230.h>
+#include <atpl230_reg.h>
+
+// From module: PLC Universal Serial Interface
+#include <usi.h>
+
+// From module: PMC - Power Management Controller
+#include <pmc.h>
+#include <sleep.h>
+
+// From module: PRIME Hardware Abstraction Layer
+#include <hal.h>
+
+// From module: PRIME IEC 61334-4-32 Convergence Layer
+#include <dl432.h>
+#include <sscs432.h>
+
+// From module: PRIME MAC Layer
+#include <bmngt.h>
+#include <mngl.h>
+#include <prime.h>
+
+// From module: PRIME Operative System Support (OSS)
+#include <oss_if.h>
+
+// From module: Part identification macros
+#include <parts.h>
+
+// From module: Physical Abstraction Layer (PAL) interface - ATPL230 and PRIME MAC 1.3
+#include <pal.h>
+
+// From module: Proxy Power Line Communication (PLC) Controller Interface - ATPL230 implementation
+#include <pplc_if.h>
+
+// From module: SAM4C EK LED support enabled
+#include <led.h>
+
+// From module: SPI - Serial Peripheral Interface
+#include <spi.h>
+
+// From module: Standard serial I/O (stdio) - SAM implementation
+#include <stdio_serial.h>
+
+// From module: System Clock Control - SAM4C implementation
+#include <sysclk.h>
+
+// From module: TC - Timer Counter
+#include <tc.h>
+
+// From module: UART - Univ. Async Rec/Trans
+#include <uart.h>
+
+// From module: USART - Serial interface - SAM implementation for devices with both UART and USART
+#include <serial.h>
+
+// From module: USART - Univ. Syn Async Rec/Trans
+#include <usart.h>
+
+// From module: WDT - Watchdog Timer
+#include <wdt.h>
+
+// From module: pio_handler support enabled
+#include <pio_handler.h>
+
+#endif // ASF_H
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/gcc/config.mk b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/gcc/config.mk
new file mode 100644
index 00000000..afb991f9
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/gcc/config.mk
@@ -0,0 +1,219 @@
+#
+# Copyright (c) 2011 Atmel Corporation. All rights reserved.
+#
+# \asf_license_start
+#
+# \page License
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are met:
+#
+# 1. Redistributions of source code must retain the above copyright notice,
+# this list of conditions and the following disclaimer.
+#
+# 2. Redistributions in binary form must reproduce the above copyright notice,
+# this list of conditions and the following disclaimer in the documentation
+# and/or other materials provided with the distribution.
+#
+# 3. The name of Atmel may not be used to endorse or promote products derived
+# from this software without specific prior written permission.
+#
+# 4. This software may only be redistributed and used in connection with an
+# Atmel microcontroller product.
+#
+# THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+# EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+# POSSIBILITY OF SUCH DAMAGE.
+#
+# \asf_license_stop
+#
+
+# Path to top level ASF directory relative to this project directory.
+PRJ_PATH = ../../../../../..
+
+# Target CPU architecture: cortex-m3, cortex-m4
+ARCH = cortex-m4
+
+# Target part: none, sam3n4 or sam4l4aa
+PART = sam4c16c:0
+
+# Application target name. Given with suffix .a for library and .elf for a
+# standalone application.
+TARGET_FLASH = apps_prime_base_appemu_flash.elf
+TARGET_SRAM = apps_prime_base_appemu_sram.elf
+
+# List of C source files.
+CSRCS = \
+ common/services/clock/sam4c/sysclk.c \
+ common/services/serial/usart_serial.c \
+ common/utils/interrupt/interrupt_sam_nvic.c \
+ common/utils/stdio/read.c \
+ common/utils/stdio/write.c \
+ sam/boards/sam4c_ek/init.c \
+ sam/drivers/efc/efc.c \
+ sam/drivers/gpbr/gpbr.c \
+ sam/drivers/pdc/pdc.c \
+ sam/drivers/pio/pio.c \
+ sam/drivers/pio/pio_handler.c \
+ sam/drivers/pmc/pmc.c \
+ sam/drivers/pmc/sleep.c \
+ sam/drivers/spi/spi.c \
+ sam/drivers/tc/tc.c \
+ sam/drivers/uart/uart.c \
+ sam/drivers/usart/usart.c \
+ sam/drivers/wdt/wdt.c \
+ sam/services/flash_efc/flash_efc.c \
+ sam/services/plc/buart_if/buart_if.c \
+ sam/services/plc/busart_if/busart_if.c \
+ sam/services/plc/hal/prime/hal.c \
+ sam/services/plc/pcrc/pcrc.c \
+ sam/services/plc/pplc_if/atpl230/pplc_if.c \
+ sam/services/plc/usi/usi.c \
+ sam/utils/cmsis/sam4c/source/templates/gcc/startup_sam4c.c \
+ sam/utils/cmsis/sam4c/source/templates/system_sam4c.c \
+ sam/utils/syscalls/gcc/syscalls.c \
+ thirdparty/freertos/freertos-7.3.0/source/FreeRTOS_CLI.c \
+ thirdparty/freertos/freertos-7.3.0/source/list.c \
+ thirdparty/freertos/freertos-7.3.0/source/portable/gcc/sam/port.c \
+ thirdparty/freertos/freertos-7.3.0/source/portable/memmang/heap_4.c \
+ thirdparty/freertos/freertos-7.3.0/source/queue.c \
+ thirdparty/freertos/freertos-7.3.0/source/tasks.c \
+ thirdparty/freertos/freertos-7.3.0/source/timers.c \
+ thirdparty/prime/apps/prime_base_appemu/app_emu.c \
+ thirdparty/prime/apps/prime_base_appemu/app_emu_base.c \
+ thirdparty/prime/apps/prime_base_appemu/app_emu_common.c \
+ thirdparty/prime/apps/prime_base_appemu/main.c \
+ thirdparty/prime/mac/mac_1_3/module_config/conf_mac.c \
+ thirdparty/prime/mac/mac_1_3/source/PrimeVersion.c \
+ thirdparty/prime/oss/oss_if.c \
+ thirdparty/prime/pal/atpl230_primemac13/source/pal.c \
+ thirdparty/prime/phy/atpl230/coupling_config/conf_atpl230.c \
+ thirdparty/prime/phy/atpl230/source/atpl230.c \
+ thirdparty/prime/phy/atpl230/source/atpl230_iir_filter.c
+
+# List of assembler source files.
+ASSRCS =
+
+# List of include paths.
+INC_PATH = \
+ common/boards \
+ common/services/clock \
+ common/services/ioport \
+ common/services/serial \
+ common/services/serial/sam_uart \
+ common/utils \
+ common/utils/stdio/stdio_serial \
+ sam/boards \
+ sam/boards/sam4c_ek \
+ sam/drivers/efc \
+ sam/drivers/gpbr \
+ sam/drivers/pdc \
+ sam/drivers/pdc/pdc_uart_example \
+ sam/drivers/pio \
+ sam/drivers/pmc \
+ sam/drivers/spi \
+ sam/drivers/tc \
+ sam/drivers/uart \
+ sam/drivers/usart \
+ sam/drivers/wdt \
+ sam/services/flash_efc \
+ sam/services/plc/buart_if \
+ sam/services/plc/busart_if \
+ sam/services/plc/hal/prime \
+ sam/services/plc/pcrc \
+ sam/services/plc/pplc_if/atpl230 \
+ sam/services/plc/usi \
+ sam/utils \
+ sam/utils/cmsis/sam4c/include \
+ sam/utils/cmsis/sam4c/source/templates \
+ sam/utils/header_files \
+ sam/utils/preprocessor \
+ thirdparty/CMSIS/Include \
+ thirdparty/CMSIS/Lib/GCC \
+ thirdparty/freertos/freertos-7.3.0/source/include \
+ thirdparty/freertos/freertos-7.3.0/source/portable/gcc/sam \
+ thirdparty/prime/apps/prime_base_appemu \
+ thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek \
+ thirdparty/prime/mac/mac_1_3/addons/bootloader \
+ thirdparty/prime/mac/mac_1_3/include \
+ thirdparty/prime/mac/mac_1_3/module_config \
+ thirdparty/prime/oss \
+ thirdparty/prime/pal/atpl230_primemac13/include \
+ thirdparty/prime/pal/atpl230_primemac13/module_config \
+ thirdparty/prime/phy/atpl230/coupling_config \
+ thirdparty/prime/phy/atpl230/include \
+ thirdparty/prime/sscs/sscs-4-32/include \
+ thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/gcc
+
+# Additional search paths for libraries.
+LIB_PATH = \
+ thirdparty/CMSIS/Lib/GCC \
+ thirdparty/prime/mac/mac_1_3/libs/gcc \
+ thirdparty/prime/sscs/sscs-4-32/libs/gcc
+
+# List of libraries to use during linking.
+LIBS = \
+ arm_cortexM4l_math \
+ sam4c-mac13-bn-gcc \
+ sam4c-sscs432-bn-gcc \
+ m
+
+# Path relative to top level directory pointing to a linker script.
+LINKER_SCRIPT_FLASH = sam/utils/linker_scripts/sam4c/gcc/sam4c16c_0_flash.ld
+LINKER_SCRIPT_SRAM = sam/utils/linker_scripts/sam4c/gcc/sam4c16c_0_sram.ld
+
+# Path relative to top level directory pointing to a linker script.
+DEBUG_SCRIPT_FLASH = sam/boards/sam4c_ek/debug_scripts/gcc/sam4c_ek_flash_0.gdb
+DEBUG_SCRIPT_SRAM = sam/boards/sam4c_ek/debug_scripts/gcc/sam4c_ek_sram_0.gdb
+
+# Project type parameter: all, sram or flash
+PROJECT_TYPE = flash
+
+# Additional options for debugging. By default the common Makefile.in will
+# add -g3.
+DBGFLAGS =
+
+# Application optimization used during compilation and linking:
+# -O0, -O1, -O2, -O3 or -Os
+OPTIMIZATION = -O1
+
+# Extra flags to use when archiving.
+ARFLAGS =
+
+# Extra flags to use when assembling.
+ASFLAGS =
+
+# Extra flags to use when compiling.
+CFLAGS =
+
+# Extra flags to use when preprocessing.
+#
+# Preprocessor symbol definitions
+# To add a definition use the format "-D name[=definition]".
+# To cancel a definition use the format "-U name".
+#
+# The most relevant symbols to define for the preprocessor are:
+# BOARD Target board in use, see boards/board.h for a list.
+# EXT_BOARD Optional extension board in use, see boards/board.h for a list.
+CPPFLAGS = \
+ -D ARM_MATH_CM4=true \
+ -D BOARD=SAM4C_EK \
+ -D __FREERTOS__ \
+ -D __SAM4C16C_0__ \
+ -D printf=iprintf \
+ -D scanf=iscanf
+
+# Extra flags to use when linking
+LDFLAGS = \
+
+# Pre- and post-build commands
+PREBUILD_CMD =
+POSTBUILD_CMD = \ No newline at end of file
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/iar/apps_prime_base_appemu.eww b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/iar/apps_prime_base_appemu.eww
new file mode 100644
index 00000000..e718a986
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/iar/apps_prime_base_appemu.eww
@@ -0,0 +1,6 @@
+<workspace>
+ <batchBuild></batchBuild>
+ <project>
+ <path>$WS_DIR$\apps_prime_base_appemu_flash.ewp</path>
+ </project>
+</workspace>
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/iar/apps_prime_base_appemu_flash.ewd b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/iar/apps_prime_base_appemu_flash.ewd
new file mode 100644
index 00000000..6d0e05ca
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/iar/apps_prime_base_appemu_flash.ewd
@@ -0,0 +1,1655 @@
+<project>
+ <fileVersion>2</fileVersion>
+ <configuration>
+ <name>Debug</name>
+ <toolchain>
+ <name>ARM</name>
+ </toolchain>
+ <debug>1</debug>
+ <settings>
+ <name>C-SPY</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>22</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>1</debug>
+ <option>
+ <name>CInput</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CEndian</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CProcessor</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>OCVariant</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>MacOverride</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>MacFile</name>
+ <state>$PROJ_DIR$\../../../../../../sam/boards/sam4c_ek/debug_scripts/iar/sam4c_ek_flash_0.mac</state>
+ </option>
+ <option>
+ <name>MemOverride</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>MemFile</name>
+ <state>$TOOLKIT_DIR$\CONFIG\debugger\Atmel\ATSAM4C16C_0.ddf</state>
+ </option>
+ <option>
+ <name>RunToEnable</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>RunToName</name>
+ <state>main</state>
+ </option>
+ <option>
+ <name>CExtraOptionsCheck</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CExtraOptions</name>
+ <state></state>
+ </option>
+ <option>
+ <name>CFpuProcessor</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>OCDDFArgumentProducer</name>
+ <state></state>
+ </option>
+ <option>
+ <name>OCDownloadSuppressDownload</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCDownloadVerifyAll</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>OCProductVersion</name>
+ <state>6.10.5.52324</state>
+ </option>
+ <option>
+ <name>OCDynDriverList</name>
+ <state>JLINK_ID</state>
+ </option>
+ <option>
+ <name>OCLastSavedByProductVersion</name>
+ <state>6.10.5.52324</state>
+ </option>
+ <option>
+ <name>OCDownloadAttachToProgram</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>UseFlashLoader</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CLowLevel</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>OCBE8Slave</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>MacFile2</name>
+ <state></state>
+ </option>
+ <option>
+ <name>CDevice</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>FlashLoadersV3</name>
+ <state>$TOOLKIT_DIR$\config\flashloader\Atmel\sam4c16c\sam4c16c-flash.board</state>
+ </option>
+ <option>
+ <name>OCImagesSuppressCheck1</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCImagesPath1</name>
+ <state></state>
+ </option>
+ <option>
+ <name>OCImagesSuppressCheck2</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCImagesPath2</name>
+ <state></state>
+ </option>
+ <option>
+ <name>OCImagesSuppressCheck3</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCImagesPath3</name>
+ <state></state>
+ </option>
+ <option>
+ <name>OverrideDefFlashBoard</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCImagesOffset1</name>
+ <state></state>
+ </option>
+ <option>
+ <name>OCImagesOffset2</name>
+ <state></state>
+ </option>
+ <option>
+ <name>OCImagesOffset3</name>
+ <state></state>
+ </option>
+ <option>
+ <name>OCImagesUse1</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCImagesUse2</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCImagesUse3</name>
+ <state>0</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>ARMSIM_ID</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>1</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>1</debug>
+ <option>
+ <name>OCSimDriverInfo</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>OCSimEnablePSP</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCSimPspOverrideConfig</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCSimPspConfigFile</name>
+ <state></state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>ANGEL_ID</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>0</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>1</debug>
+ <option>
+ <name>CCAngelHeartbeat</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CAngelCommunication</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CAngelCommBaud</name>
+ <version>0</version>
+ <state>3</state>
+ </option>
+ <option>
+ <name>CAngelCommPort</name>
+ <version>0</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>ANGELTCPIP</name>
+ <state>aaa.bbb.ccc.ddd</state>
+ </option>
+ <option>
+ <name>DoAngelLogfile</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AngelLogFile</name>
+ <state>$PROJ_DIR$\cspycomm.log</state>
+ </option>
+ <option>
+ <name>OCDriverInfo</name>
+ <state>1</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>GDBSERVER_ID</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>0</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>1</debug>
+ <option>
+ <name>OCDriverInfo</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>TCPIP</name>
+ <state>aaa.bbb.ccc.ddd</state>
+ </option>
+ <option>
+ <name>DoLogfile</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>LogFile</name>
+ <state>$PROJ_DIR$\cspycomm.log</state>
+ </option>
+ <option>
+ <name>CCJTagBreakpointRadio</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJTagDoUpdateBreakpoints</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJTagUpdateBreakpoints</name>
+ <state>_call_main</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>IARROM_ID</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>1</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>1</debug>
+ <option>
+ <name>CRomLogFileCheck</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CRomLogFileEditB</name>
+ <state>$PROJ_DIR$\cspycomm.log</state>
+ </option>
+ <option>
+ <name>CRomCommPort</name>
+ <version>0</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CRomCommBaud</name>
+ <version>0</version>
+ <state>7</state>
+ </option>
+ <option>
+ <name>OCDriverInfo</name>
+ <state>1</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>JLINK_ID</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>12</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>1</debug>
+ <option>
+ <name>JLinkSpeed</name>
+ <state>32</state>
+ </option>
+ <option>
+ <name>CCJLinkDoLogfile</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJLinkLogFile</name>
+ <state>$PROJ_DIR$\cspycomm.log</state>
+ </option>
+ <option>
+ <name>CCJLinkHWResetDelay</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCDriverInfo</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>JLinkInitialSpeed</name>
+ <state>32</state>
+ </option>
+ <option>
+ <name>CCDoJlinkMultiTarget</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCScanChainNonARMDevices</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJLinkMultiTarget</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJLinkIRLength</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJLinkCommRadio</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJLinkTCPIP</name>
+ <state>aaa.bbb.ccc.ddd</state>
+ </option>
+ <option>
+ <name>CCJLinkSpeedRadioV2</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCUSBDevice</name>
+ <version>1</version>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CCRDICatchReset</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchUndef</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchSWI</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchData</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchPrefetch</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchIRQ</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchFIQ</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJLinkBreakpointRadio</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJLinkDoUpdateBreakpoints</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJLinkUpdateBreakpoints</name>
+ <state>_call_main</state>
+ </option>
+ <option>
+ <name>CCJLinkInterfaceRadio</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCJLinkAttachSlave</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CCJLinkResetList</name>
+ <version>5</version>
+ <state>7</state>
+ </option>
+ <option>
+ <name>CCJLinkInterfaceCmdLine</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCCatchCORERESET</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCCatchMMERR</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCCatchNOCPERR</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCCatchCHRERR</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCCatchSTATERR</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCCatchBUSERR</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCCatchINTERR</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCCatchHARDERR</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCCatchDummy</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCJLinkScriptFile</name>
+ <state>1</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>LMIFTDI_ID</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>2</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>1</debug>
+ <option>
+ <name>OCDriverInfo</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>LmiftdiSpeed</name>
+ <state>500</state>
+ </option>
+ <option>
+ <name>CCLmiftdiDoLogfile</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCLmiftdiLogFile</name>
+ <state>$PROJ_DIR$\cspycomm.log</state>
+ </option>
+ <option>
+ <name>CCLmiFtdiInterfaceRadio</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCLmiFtdiInterfaceCmdLine</name>
+ <state>0</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>MACRAIGOR_ID</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>3</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>1</debug>
+ <option>
+ <name>jtag</name>
+ <version>0</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>EmuSpeed</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>TCPIP</name>
+ <state>aaa.bbb.ccc.ddd</state>
+ </option>
+ <option>
+ <name>DoLogfile</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>LogFile</name>
+ <state>$PROJ_DIR$\cspycomm.log</state>
+ </option>
+ <option>
+ <name>DoEmuMultiTarget</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>EmuMultiTarget</name>
+ <state>0@ARM7TDMI</state>
+ </option>
+ <option>
+ <name>EmuHWReset</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CEmuCommBaud</name>
+ <version>0</version>
+ <state>4</state>
+ </option>
+ <option>
+ <name>CEmuCommPort</name>
+ <version>0</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>jtago</name>
+ <version>0</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCDriverInfo</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>UnusedAddr</name>
+ <state>0x00800000</state>
+ </option>
+ <option>
+ <name>CCMacraigorHWResetDelay</name>
+ <state></state>
+ </option>
+ <option>
+ <name>CCJTagBreakpointRadio</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJTagDoUpdateBreakpoints</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJTagUpdateBreakpoints</name>
+ <state>_call_main</state>
+ </option>
+ <option>
+ <name>CCMacraigorInterfaceRadio</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCMacraigorInterfaceCmdLine</name>
+ <state>0</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>PEMICRO_ID</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>0</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>1</debug>
+ <option>
+ <name>OCDriverInfo</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>OCPEMicroAttachSlave</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CCPEMicroInterfaceList</name>
+ <version>0</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCPEMicroResetDelay</name>
+ <state></state>
+ </option>
+ <option>
+ <name>CCPEMicroJtagSpeed</name>
+ <state>#UNINITIALIZED#</state>
+ </option>
+ <option>
+ <name>CCJPEMicroShowSettings</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>DoLogfile</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>LogFile</name>
+ <state>$PROJ_DIR$\cspycomm.log</state>
+ </option>
+ <option>
+ <name>CCPEMicroUSBDevice</name>
+ <version>0</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCPEMicroSerialPort</name>
+ <version>0</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJPEMicroTCPIPAutoScanNetwork</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CCPEMicroTCPIP</name>
+ <state>10.0.0.1</state>
+ </option>
+ <option>
+ <name>CCPEMicroCommCmdLineProducer</name>
+ <state>0</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>RDI_ID</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>1</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>1</debug>
+ <option>
+ <name>CRDIDriverDll</name>
+ <state>###Uninitialized###</state>
+ </option>
+ <option>
+ <name>CRDILogFileCheck</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CRDILogFileEdit</name>
+ <state>$PROJ_DIR$\cspycomm.log</state>
+ </option>
+ <option>
+ <name>CCRDIHWReset</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchReset</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchUndef</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchSWI</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchData</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchPrefetch</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchIRQ</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchFIQ</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDIUseETM</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCDriverInfo</name>
+ <state>1</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>STLINK_ID</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>1</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>1</debug>
+ <option>
+ <name>OCDriverInfo</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CCSTLinkInterfaceRadio</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCSTLinkInterfaceCmdLine</name>
+ <state>0</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>THIRDPARTY_ID</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>0</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>1</debug>
+ <option>
+ <name>CThirdPartyDriverDll</name>
+ <state>Browse to your third-party driver</state>
+ </option>
+ <option>
+ <name>CThirdPartyLogFileCheck</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CThirdPartyLogFileEditB</name>
+ <state>$PROJ_DIR$\cspycomm.log</state>
+ </option>
+ <option>
+ <name>OCDriverInfo</name>
+ <state>1</state>
+ </option>
+ </data>
+ </settings>
+ <debuggerPlugins>
+ <plugin>
+ <file>$TOOLKIT_DIR$\plugins\rtos\CMX\CmxArmPlugin.ENU.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$TOOLKIT_DIR$\plugins\rtos\CMX\CmxTinyArmPlugin.ENU.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$TOOLKIT_DIR$\plugins\rtos\embOS\embOSPlugin.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$TOOLKIT_DIR$\plugins\rtos\MQX\MQXRtosPlugin.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$TOOLKIT_DIR$\plugins\rtos\OpenRTOS\OpenRTOSPlugin.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$TOOLKIT_DIR$\plugins\rtos\PowerPac\PowerPacRTOS.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$TOOLKIT_DIR$\plugins\rtos\Quadros\Quadros_EWB6_Plugin.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$TOOLKIT_DIR$\plugins\rtos\SafeRTOS\SafeRTOSPlugin.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$TOOLKIT_DIR$\plugins\rtos\ThreadX\ThreadXArmPlugin.ENU.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-286-KA-CSpy.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-KA-CSpy.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$EW_DIR$\common\plugins\CodeCoverage\CodeCoverage.ENU.ewplugin</file>
+ <loadFlag>1</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$EW_DIR$\common\plugins\Orti\Orti.ENU.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$EW_DIR$\common\plugins\Stack\Stack.ENU.ewplugin</file>
+ <loadFlag>1</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$EW_DIR$\common\plugins\SymList\SymList.ENU.ewplugin</file>
+ <loadFlag>1</loadFlag>
+ </plugin>
+ </debuggerPlugins>
+ </configuration>
+ <configuration>
+ <name>Release</name>
+ <toolchain>
+ <name>ARM</name>
+ </toolchain>
+ <debug>0</debug>
+ <settings>
+ <name>C-SPY</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>22</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>0</debug>
+ <option>
+ <name>CInput</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CEndian</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CProcessor</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>OCVariant</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>MacOverride</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>MacFile</name>
+ <state>$PROJ_DIR$\../../../../../../sam/boards/sam4c_ek/debug_scripts/iar/sam4c_ek_flash_0.mac</state>
+ </option>
+ <option>
+ <name>MemOverride</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>MemFile</name>
+ <state>$TOOLKIT_DIR$\CONFIG\debugger\Atmel\ATSAM4C16C_0.ddf</state>
+ </option>
+ <option>
+ <name>RunToEnable</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>RunToName</name>
+ <state>main</state>
+ </option>
+ <option>
+ <name>CExtraOptionsCheck</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CExtraOptions</name>
+ <state></state>
+ </option>
+ <option>
+ <name>CFpuProcessor</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>OCDDFArgumentProducer</name>
+ <state></state>
+ </option>
+ <option>
+ <name>OCDownloadSuppressDownload</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCDownloadVerifyAll</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>OCProductVersion</name>
+ <state>6.10.5.52324</state>
+ </option>
+ <option>
+ <name>OCDynDriverList</name>
+ <state>JLINK_ID</state>
+ </option>
+ <option>
+ <name>OCLastSavedByProductVersion</name>
+ <state></state>
+ </option>
+ <option>
+ <name>OCDownloadAttachToProgram</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>UseFlashLoader</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CLowLevel</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>OCBE8Slave</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>MacFile2</name>
+ <state></state>
+ </option>
+ <option>
+ <name>CDevice</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>FlashLoadersV3</name>
+ <state>$TOOLKIT_DIR$\config\flashloader\Atmel\sam4c16c\sam4c16c-flash.board</state>
+ </option>
+ <option>
+ <name>OCImagesSuppressCheck1</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCImagesPath1</name>
+ <state></state>
+ </option>
+ <option>
+ <name>OCImagesSuppressCheck2</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCImagesPath2</name>
+ <state></state>
+ </option>
+ <option>
+ <name>OCImagesSuppressCheck3</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCImagesPath3</name>
+ <state></state>
+ </option>
+ <option>
+ <name>OverrideDefFlashBoard</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCImagesOffset1</name>
+ <state></state>
+ </option>
+ <option>
+ <name>OCImagesOffset2</name>
+ <state></state>
+ </option>
+ <option>
+ <name>OCImagesOffset3</name>
+ <state></state>
+ </option>
+ <option>
+ <name>OCImagesUse1</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCImagesUse2</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCImagesUse3</name>
+ <state>0</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>ARMSIM_ID</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>1</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>0</debug>
+ <option>
+ <name>OCSimDriverInfo</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>OCSimEnablePSP</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCSimPspOverrideConfig</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCSimPspConfigFile</name>
+ <state></state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>ANGEL_ID</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>0</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>0</debug>
+ <option>
+ <name>CCAngelHeartbeat</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CAngelCommunication</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CAngelCommBaud</name>
+ <version>0</version>
+ <state>3</state>
+ </option>
+ <option>
+ <name>CAngelCommPort</name>
+ <version>0</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>ANGELTCPIP</name>
+ <state>aaa.bbb.ccc.ddd</state>
+ </option>
+ <option>
+ <name>DoAngelLogfile</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AngelLogFile</name>
+ <state>$PROJ_DIR$\cspycomm.log</state>
+ </option>
+ <option>
+ <name>OCDriverInfo</name>
+ <state>1</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>GDBSERVER_ID</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>0</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>0</debug>
+ <option>
+ <name>OCDriverInfo</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>TCPIP</name>
+ <state>aaa.bbb.ccc.ddd</state>
+ </option>
+ <option>
+ <name>DoLogfile</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>LogFile</name>
+ <state>$PROJ_DIR$\cspycomm.log</state>
+ </option>
+ <option>
+ <name>CCJTagBreakpointRadio</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJTagDoUpdateBreakpoints</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJTagUpdateBreakpoints</name>
+ <state>_call_main</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>IARROM_ID</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>1</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>0</debug>
+ <option>
+ <name>CRomLogFileCheck</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CRomLogFileEditB</name>
+ <state>$PROJ_DIR$\cspycomm.log</state>
+ </option>
+ <option>
+ <name>CRomCommPort</name>
+ <version>0</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CRomCommBaud</name>
+ <version>0</version>
+ <state>7</state>
+ </option>
+ <option>
+ <name>OCDriverInfo</name>
+ <state>1</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>JLINK_ID</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>12</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>0</debug>
+ <option>
+ <name>JLinkSpeed</name>
+ <state>32</state>
+ </option>
+ <option>
+ <name>CCJLinkDoLogfile</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJLinkLogFile</name>
+ <state>$PROJ_DIR$\cspycomm.log</state>
+ </option>
+ <option>
+ <name>CCJLinkHWResetDelay</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCDriverInfo</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>JLinkInitialSpeed</name>
+ <state>32</state>
+ </option>
+ <option>
+ <name>CCDoJlinkMultiTarget</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCScanChainNonARMDevices</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJLinkMultiTarget</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJLinkIRLength</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJLinkCommRadio</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJLinkTCPIP</name>
+ <state>aaa.bbb.ccc.ddd</state>
+ </option>
+ <option>
+ <name>CCJLinkSpeedRadioV2</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCUSBDevice</name>
+ <version>1</version>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CCRDICatchReset</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchUndef</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchSWI</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchData</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchPrefetch</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchIRQ</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchFIQ</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJLinkBreakpointRadio</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJLinkDoUpdateBreakpoints</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJLinkUpdateBreakpoints</name>
+ <state>_call_main</state>
+ </option>
+ <option>
+ <name>CCJLinkInterfaceRadio</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCJLinkAttachSlave</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CCJLinkResetList</name>
+ <version>5</version>
+ <state>7</state>
+ </option>
+ <option>
+ <name>CCJLinkInterfaceCmdLine</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCCatchCORERESET</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCCatchMMERR</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCCatchNOCPERR</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCCatchCHRERR</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCCatchSTATERR</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCCatchBUSERR</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCCatchINTERR</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCCatchHARDERR</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCCatchDummy</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCJLinkScriptFile</name>
+ <state>1</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>LMIFTDI_ID</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>2</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>0</debug>
+ <option>
+ <name>OCDriverInfo</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>LmiftdiSpeed</name>
+ <state>500</state>
+ </option>
+ <option>
+ <name>CCLmiftdiDoLogfile</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCLmiftdiLogFile</name>
+ <state>$PROJ_DIR$\cspycomm.log</state>
+ </option>
+ <option>
+ <name>CCLmiFtdiInterfaceRadio</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCLmiFtdiInterfaceCmdLine</name>
+ <state>0</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>MACRAIGOR_ID</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>3</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>0</debug>
+ <option>
+ <name>jtag</name>
+ <version>0</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>EmuSpeed</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>TCPIP</name>
+ <state>aaa.bbb.ccc.ddd</state>
+ </option>
+ <option>
+ <name>DoLogfile</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>LogFile</name>
+ <state>$PROJ_DIR$\cspycomm.log</state>
+ </option>
+ <option>
+ <name>DoEmuMultiTarget</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>EmuMultiTarget</name>
+ <state>0@ARM7TDMI</state>
+ </option>
+ <option>
+ <name>EmuHWReset</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CEmuCommBaud</name>
+ <version>0</version>
+ <state>4</state>
+ </option>
+ <option>
+ <name>CEmuCommPort</name>
+ <version>0</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>jtago</name>
+ <version>0</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCDriverInfo</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>UnusedAddr</name>
+ <state>0x00800000</state>
+ </option>
+ <option>
+ <name>CCMacraigorHWResetDelay</name>
+ <state></state>
+ </option>
+ <option>
+ <name>CCJTagBreakpointRadio</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJTagDoUpdateBreakpoints</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJTagUpdateBreakpoints</name>
+ <state>_call_main</state>
+ </option>
+ <option>
+ <name>CCMacraigorInterfaceRadio</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCMacraigorInterfaceCmdLine</name>
+ <state>0</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>PEMICRO_ID</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>0</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>0</debug>
+ <option>
+ <name>OCDriverInfo</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>OCPEMicroAttachSlave</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CCPEMicroInterfaceList</name>
+ <version>0</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCPEMicroResetDelay</name>
+ <state></state>
+ </option>
+ <option>
+ <name>CCPEMicroJtagSpeed</name>
+ <state>#UNINITIALIZED#</state>
+ </option>
+ <option>
+ <name>CCJPEMicroShowSettings</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>DoLogfile</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>LogFile</name>
+ <state>$PROJ_DIR$\cspycomm.log</state>
+ </option>
+ <option>
+ <name>CCPEMicroUSBDevice</name>
+ <version>0</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCPEMicroSerialPort</name>
+ <version>0</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCJPEMicroTCPIPAutoScanNetwork</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CCPEMicroTCPIP</name>
+ <state>10.0.0.1</state>
+ </option>
+ <option>
+ <name>CCPEMicroCommCmdLineProducer</name>
+ <state>0</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>RDI_ID</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>1</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>0</debug>
+ <option>
+ <name>CRDIDriverDll</name>
+ <state>###Uninitialized###</state>
+ </option>
+ <option>
+ <name>CRDILogFileCheck</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CRDILogFileEdit</name>
+ <state>$PROJ_DIR$\cspycomm.log</state>
+ </option>
+ <option>
+ <name>CCRDIHWReset</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchReset</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchUndef</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchSWI</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchData</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchPrefetch</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchIRQ</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDICatchFIQ</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCRDIUseETM</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OCDriverInfo</name>
+ <state>1</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>STLINK_ID</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>1</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>0</debug>
+ <option>
+ <name>OCDriverInfo</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CCSTLinkInterfaceRadio</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCSTLinkInterfaceCmdLine</name>
+ <state>0</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>THIRDPARTY_ID</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>0</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>0</debug>
+ <option>
+ <name>CThirdPartyDriverDll</name>
+ <state>###Uninitialized###</state>
+ </option>
+ <option>
+ <name>CThirdPartyLogFileCheck</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CThirdPartyLogFileEditB</name>
+ <state>$PROJ_DIR$\cspycomm.log</state>
+ </option>
+ <option>
+ <name>OCDriverInfo</name>
+ <state>1</state>
+ </option>
+ </data>
+ </settings>
+ <debuggerPlugins>
+ <plugin>
+ <file>$TOOLKIT_DIR$\plugins\rtos\CMX\CmxArmPlugin.ENU.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$TOOLKIT_DIR$\plugins\rtos\CMX\CmxTinyArmPlugin.ENU.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$TOOLKIT_DIR$\plugins\rtos\embOS\embOSPlugin.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$TOOLKIT_DIR$\plugins\rtos\MQX\MQXRtosPlugin.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$TOOLKIT_DIR$\plugins\rtos\OpenRTOS\OpenRTOSPlugin.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$TOOLKIT_DIR$\plugins\rtos\PowerPac\PowerPacRTOS.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$TOOLKIT_DIR$\plugins\rtos\Quadros\Quadros_EWB6_Plugin.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$TOOLKIT_DIR$\plugins\rtos\SafeRTOS\SafeRTOSPlugin.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$TOOLKIT_DIR$\plugins\rtos\ThreadX\ThreadXArmPlugin.ENU.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-286-KA-CSpy.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-KA-CSpy.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$EW_DIR$\common\plugins\CodeCoverage\CodeCoverage.ENU.ewplugin</file>
+ <loadFlag>1</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$EW_DIR$\common\plugins\Orti\Orti.ENU.ewplugin</file>
+ <loadFlag>0</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$EW_DIR$\common\plugins\Stack\Stack.ENU.ewplugin</file>
+ <loadFlag>1</loadFlag>
+ </plugin>
+ <plugin>
+ <file>$EW_DIR$\common\plugins\SymList\SymList.ENU.ewplugin</file>
+ <loadFlag>1</loadFlag>
+ </plugin>
+ </debuggerPlugins>
+ </configuration>
+</project>
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/iar/apps_prime_base_appemu_flash.ewp b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/iar/apps_prime_base_appemu_flash.ewp
new file mode 100644
index 00000000..7370bd69
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/iar/apps_prime_base_appemu_flash.ewp
@@ -0,0 +1,2908 @@
+<project>
+ <fileVersion>2</fileVersion>
+ <configuration>
+ <name>Debug</name>
+ <toolchain>
+ <name>ARM</name>
+ </toolchain>
+ <debug>1</debug>
+ <settings>
+ <name>General</name>
+ <archiveVersion>3</archiveVersion>
+ <data>
+ <version>21</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>1</debug>
+ <option>
+ <name>ExePath</name>
+ <state>Debug\Exe</state>
+ </option>
+ <option>
+ <name>ObjPath</name>
+ <state>Debug\Obj</state>
+ </option>
+ <option>
+ <name>ListPath</name>
+ <state>Debug\List</state>
+ </option>
+ <option>
+ <name>Variant</name>
+ <version>19</version>
+ <state>37</state>
+ </option>
+ <option>
+ <name>GEndianMode</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>Input variant</name>
+ <version>3</version>
+ <state>6</state>
+ </option>
+ <option>
+ <name>Input description</name>
+ <state>No specifier n, no float nor long long, no scan set, no assignment suppressing.</state>
+ </option>
+ <option>
+ <name>Output variant</name>
+ <version>2</version>
+ <state>3</state>
+ </option>
+ <option>
+ <name>Output description</name>
+ <state>No specifier a, A.</state>
+ </option>
+ <option>
+ <name>GOutputBinary</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>FPU</name>
+ <version>2</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OGCoreOrChip</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>GRuntimeLibSelect</name>
+ <version>0</version>
+ <state>2</state>
+ </option>
+ <option>
+ <name>GRuntimeLibSelectSlave</name>
+ <version>0</version>
+ <state>2</state>
+ </option>
+ <option>
+ <name>RTDescription</name>
+ <state>Use the normal configuration of the C/C++ runtime library. No locale interface, C locale, no file descriptor support, no multibytes in printf and scanf, and no hex floats in strtod.</state>
+ </option>
+ <option>
+ <name>OGProductVersion</name>
+ <state>5.10.0.159</state>
+ </option>
+ <option>
+ <name>OGLastSavedByProductVersion</name>
+ <state>6.21.1.52845</state>
+ </option>
+ <option>
+ <name>GeneralEnableMisra</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>GeneralMisraVerbose</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OGChipSelectEditMenu</name>
+ <state>ATSAM4C16C_0 Atmel ATSAM4C16C Core0</state>
+ </option>
+ <option>
+ <name>GenLowLevelInterface</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>GEndianModeBE</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>OGBufferedTerminalOutput</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>GenStdoutInterface</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>GeneralMisraRules98</name>
+ <version>0</version>
+ <state>1000111110110101101110011100111111101110011011000101110111101101100111111111111100110011111001110111001111111111111111111111111</state>
+ </option>
+ <option>
+ <name>GeneralMisraVer</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>GeneralMisraRules04</name>
+ <version>0</version>
+ <state>111101110010111111111000110111111111111111111111111110010111101111010101111111111111111111111111101111111011111001111011111011111111111111111</state>
+ </option>
+ <option>
+ <name>RTConfigPath2</name>
+ <state>$TOOLKIT_DIR$\INC\c\DLib_Config_Full.h</state>
+ </option>
+ <option>
+ <name>GFPUCoreSlave</name>
+ <version>19</version>
+ <state>37</state>
+ </option>
+ <option>
+ <name>GBECoreSlave</name>
+ <version>19</version>
+ <state>37</state>
+ </option>
+ <option>
+ <name>OGUseCmsis</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>OGUseCmsisDspLib</name>
+ <state>1</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>ICCARM</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>27</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>1</debug>
+ <option>
+ <name>CCDefines</name>
+ <state>__FREERTOS__</state>
+ <state>ARM_MATH_CM4=true</state>
+ <state>__SAM4C16C_0__</state>
+ <state>BOARD=SAM4C_EK</state>
+ </option>
+ <option>
+ <name>CCPreprocFile</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCPreprocComments</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCPreprocLine</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCListCFile</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCListCMnemonics</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCListCMessages</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCListAssFile</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCListAssSource</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCEnableRemarks</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CCDiagSuppress</name>
+ <state></state>
+ </option>
+ <option>
+ <name>CCDiagRemark</name>
+ <state></state>
+ </option>
+ <option>
+ <name>CCDiagWarning</name>
+ <state></state>
+ </option>
+ <option>
+ <name>CCDiagError</name>
+ <state></state>
+ </option>
+ <option>
+ <name>CCObjPrefix</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CCAllowList</name>
+ <version>0</version>
+ <state>1111111</state>
+ </option>
+ <option>
+ <name>CCDebugInfo</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IEndianMode</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IProcessor</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IExtraOptionsCheck</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IExtraOptions</name>
+ <state></state>
+ </option>
+ <option>
+ <name>CCLangConformance</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCSignedPlainChar</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CCRequirePrototypes</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CCMultibyteSupport</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCDiagWarnAreErr</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCCompilerRuntimeInfo</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IFpuProcessor</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>OutputFile</name>
+ <state>$FILE_BNAME$.o</state>
+ </option>
+ <option>
+ <name>CCLibConfigHeader</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>PreInclude</name>
+ <state></state>
+ </option>
+ <option>
+ <name>CompilerMisraOverride</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCIncludePath2</name>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/busart_if</state>
+ <state>$PROJ_DIR$/../../../../phy/atpl230/include</state>
+ <state>$PROJ_DIR$/../../../../../../common/boards</state>
+ <state>$PROJ_DIR$/../../../../../../sam/boards/sam4c_ek</state>
+ <state>$PROJ_DIR$/../../../../../../sam/utils/preprocessor</state>
+ <state>$PROJ_DIR$/..</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/pmc</state>
+ <state>$PROJ_DIR$/../..</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/usart</state>
+ <state>$PROJ_DIR$/../../../../sscs/sscs-4-32/include</state>
+ <state>$PROJ_DIR$/../../../../mac/mac_1_3/include</state>
+ <state>$PROJ_DIR$/../../../../../../sam/utils/header_files</state>
+ <state>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/portable/iar/sam</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/efc</state>
+ <state>$PROJ_DIR$/../../../../pal/atpl230_primemac13/module_config</state>
+ <state>$PROJ_DIR$/../../../../phy/atpl230/coupling_config</state>
+ <state>$PROJ_DIR$/../../../../mac/mac_1_3/module_config</state>
+ <state>$PROJ_DIR$/../../../../../../common/services/serial</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/gpbr</state>
+ <state>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/source/templates</state>
+ <state>$PROJ_DIR$/../../../../../../common/services/clock</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/flash_efc</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/spi</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/pdc</state>
+ <state>$PROJ_DIR$/../../../../../../common/utils</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/pplc_if/atpl230</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/wdt</state>
+ <state>$PROJ_DIR$/../../../../mac/mac_1_3/addons/bootloader</state>
+ <state>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/include</state>
+ <state>$PROJ_DIR$/../../../../../../sam/boards</state>
+ <state>$PROJ_DIR$/../../../../../../common/utils/stdio/stdio_serial</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/hal/prime</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/pdc/pdc_uart_example</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/uart</state>
+ <state>$PROJ_DIR$/../../../../../../sam/utils</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/tc</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/pcrc</state>
+ <state>$PROJ_DIR$/../../../../../../common/services/serial/sam_uart</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/buart_if</state>
+ <state>$PROJ_DIR$/../../../../oss</state>
+ <state>$PROJ_DIR$/../../../../../../common/services/ioport</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/pio</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/usi</state>
+ <state>$PROJ_DIR$/../../../../pal/atpl230_primemac13/include</state>
+ <state>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include</state>
+ <state>$PROJ_DIR$/.</state>
+ </option>
+ <option>
+ <name>CCStdIncCheck</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCCodeSection</name>
+ <state>.text</state>
+ </option>
+ <option>
+ <name>IInterwork2</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IProcessorMode2</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CCOptLevel</name>
+ <state>3</state>
+ </option>
+ <option>
+ <name>CCOptStrategy</name>
+ <version>0</version>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CCOptLevelSlave</name>
+ <state>3</state>
+ </option>
+ <option>
+ <name>CompilerMisraRules98</name>
+ <version>0</version>
+ <state>1000111110110101101110011100111111101110011011000101110111101101100111111111111100110011111001110111001111111111111111111111111</state>
+ </option>
+ <option>
+ <name>CompilerMisraRules04</name>
+ <version>0</version>
+ <state>111101110010111111111000110111111111111111111111111110010111101111010101111111111111111111111111101111111011111001111011111011111111111111111</state>
+ </option>
+ <option>
+ <name>CCPosIndRopi</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCPosIndRwpi</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCPosIndNoDynInit</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IccLang</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IccCDialect</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IccAllowVLA</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IccCppDialect</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IccExceptions</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IccRTTI</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IccStaticDestr</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IccRelaxedFpPrecision</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IccCppInlineSemantics</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IccCmsis</name>
+ <state>1</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>AARM</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>8</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>1</debug>
+ <option>
+ <name>AObjPrefix</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>AEndian</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>ACaseSensitivity</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>MacroChars</name>
+ <version>0</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AWarnEnable</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AWarnWhat</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AWarnOne</name>
+ <state></state>
+ </option>
+ <option>
+ <name>AWarnRange1</name>
+ <state></state>
+ </option>
+ <option>
+ <name>AWarnRange2</name>
+ <state></state>
+ </option>
+ <option>
+ <name>ADebug</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>AltRegisterNames</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>ADefines</name>
+ <state>__FREERTOS__</state>
+ <state>ARM_MATH_CM4=true</state>
+ <state>__SAM4C16C_0__</state>
+ <state>BOARD=SAM4C_EK</state>
+ </option>
+ <option>
+ <name>AList</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AListHeader</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>AListing</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>Includes</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>MacDefs</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>MacExps</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>MacExec</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OnlyAssed</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>MultiLine</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>PageLengthCheck</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>PageLength</name>
+ <state>80</state>
+ </option>
+ <option>
+ <name>TabSpacing</name>
+ <state>8</state>
+ </option>
+ <option>
+ <name>AXRef</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AXRefDefines</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AXRefInternal</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AXRefDual</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AProcessor</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>AFpuProcessor</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>AOutputFile</name>
+ <state>$FILE_BNAME$.o</state>
+ </option>
+ <option>
+ <name>AMultibyteSupport</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>ALimitErrorsCheck</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>ALimitErrorsEdit</name>
+ <state>100</state>
+ </option>
+ <option>
+ <name>AIgnoreStdInclude</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AUserIncludes</name>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/busart_if</state>
+ <state>$PROJ_DIR$/../../../../phy/atpl230/include</state>
+ <state>$PROJ_DIR$/../../../../../../common/boards</state>
+ <state>$PROJ_DIR$/../../../../../../sam/boards/sam4c_ek</state>
+ <state>$PROJ_DIR$/../../../../../../sam/utils/preprocessor</state>
+ <state>$PROJ_DIR$/..</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/pmc</state>
+ <state>$PROJ_DIR$/../..</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/usart</state>
+ <state>$PROJ_DIR$/../../../../sscs/sscs-4-32/include</state>
+ <state>$PROJ_DIR$/../../../../mac/mac_1_3/include</state>
+ <state>$PROJ_DIR$/../../../../../../sam/utils/header_files</state>
+ <state>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/portable/iar/sam</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/efc</state>
+ <state>$PROJ_DIR$/../../../../pal/atpl230_primemac13/module_config</state>
+ <state>$PROJ_DIR$/../../../../phy/atpl230/coupling_config</state>
+ <state>$PROJ_DIR$/../../../../mac/mac_1_3/module_config</state>
+ <state>$PROJ_DIR$/../../../../../../common/services/serial</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/gpbr</state>
+ <state>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/source/templates</state>
+ <state>$PROJ_DIR$/../../../../../../common/services/clock</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/flash_efc</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/spi</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/pdc</state>
+ <state>$PROJ_DIR$/../../../../../../common/utils</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/pplc_if/atpl230</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/wdt</state>
+ <state>$PROJ_DIR$/../../../../mac/mac_1_3/addons/bootloader</state>
+ <state>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/include</state>
+ <state>$PROJ_DIR$/../../../../../../sam/boards</state>
+ <state>$PROJ_DIR$/../../../../../../common/utils/stdio/stdio_serial</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/hal/prime</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/pdc/pdc_uart_example</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/uart</state>
+ <state>$PROJ_DIR$/../../../../../../sam/utils</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/tc</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/pcrc</state>
+ <state>$PROJ_DIR$/../../../../../../common/services/serial/sam_uart</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/buart_if</state>
+ <state>$PROJ_DIR$/../../../../oss</state>
+ <state>$PROJ_DIR$/../../../../../../common/services/ioport</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/pio</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/usi</state>
+ <state>$PROJ_DIR$/../../../../pal/atpl230_primemac13/include</state>
+ <state>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include</state>
+ <state>$PROJ_DIR$/.</state>
+ </option>
+ <option>
+ <name>AExtraOptionsCheckV2</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AExtraOptionsV2</name>
+ <state></state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>OBJCOPY</name>
+ <archiveVersion>0</archiveVersion>
+ <data>
+ <version>1</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>1</debug>
+ <option>
+ <name>OOCOutputFormat</name>
+ <version>2</version>
+ <state>2</state>
+ </option>
+ <option>
+ <name>OCOutputOverride</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>OOCOutputFile</name>
+ <state>apps_prime_base_appemu_flash.bin</state>
+ </option>
+ <option>
+ <name>OOCCommandLineProducer</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>OOCObjCopyEnable</name>
+ <state>0</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>CUSTOM</name>
+ <archiveVersion>3</archiveVersion>
+ <data>
+ <extensions></extensions>
+ <cmdline></cmdline>
+ </data>
+ </settings>
+ <settings>
+ <name>BICOMP</name>
+ <archiveVersion>0</archiveVersion>
+ <data></data>
+ </settings>
+ <settings>
+ <name>BUILDACTION</name>
+ <archiveVersion>1</archiveVersion>
+ <data>
+ <prebuild></prebuild>
+ <postbuild></postbuild>
+ </data>
+ </settings>
+ <settings>
+ <name>ILINK</name>
+ <archiveVersion>0</archiveVersion>
+ <data>
+ <version>12</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>1</debug>
+ <option>
+ <name>IlinkOutputFile</name>
+ <state>apps_prime_base_appemu_flash.out</state>
+ </option>
+ <option>
+ <name>IlinkLibIOConfig</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>XLinkMisraHandler</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkInputFileSlave</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkDebugInfoEnable</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IlinkKeepSymbols</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkRawBinaryFile</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkRawBinarySymbol</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkRawBinarySegment</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkRawBinaryAlign</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkDefines</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkConfigDefines</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkMapFile</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IlinkLogFile</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkLogInitialization</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkLogModule</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkLogSection</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkLogVeneer</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkIcfOverride</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IlinkIcfFile</name>
+ <state>$PROJ_DIR$/../../../../../../sam/utils/linker_scripts/sam4c/iar/sam4c16c_0_flash.icf</state>
+ </option>
+ <option>
+ <name>IlinkIcfFileSlave</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkEnableRemarks</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IlinkSuppressDiags</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkTreatAsRem</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkTreatAsWarn</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkTreatAsErr</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkWarningsAreErrors</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkUseExtraOptions</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IlinkExtraOptions</name>
+ </option>
+ <option>
+ <name>IlinkLowLevelInterfaceSlave</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IlinkAutoLibEnable</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IlinkAdditionalLibs</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkOverrideProgramEntryLabel</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkProgramEntryLabelSelect</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkProgramEntryLabel</name>
+ <state>__iar_program_start</state>
+ </option>
+ <option>
+ <name>DoFill</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>FillerByte</name>
+ <state>0xFF</state>
+ </option>
+ <option>
+ <name>FillerStart</name>
+ <state>0x0</state>
+ </option>
+ <option>
+ <name>FillerEnd</name>
+ <state>0x0</state>
+ </option>
+ <option>
+ <name>CrcSize</name>
+ <version>0</version>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CrcAlign</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CrcAlgo</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CrcPoly</name>
+ <state>0x11021</state>
+ </option>
+ <option>
+ <name>CrcCompl</name>
+ <version>0</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CrcBitOrder</name>
+ <version>0</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CrcInitialValue</name>
+ <state>0x0</state>
+ </option>
+ <option>
+ <name>DoCrc</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkBE8Slave</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IlinkBufferedTerminalOutput</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IlinkStdoutInterfaceSlave</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CrcFullSize</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkIElfToolPostProcess</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkLogAutoLibSelect</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkLogRedirSymbols</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkLogUnusedFragments</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkCrcReverseByteOrder</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkCrcUseAsInput</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IlinkOptInline</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkOptExceptionsAllow</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkOptExceptionsForce</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkCmsis</name>
+ <state>1</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>IARCHIVE</name>
+ <archiveVersion>0</archiveVersion>
+ <data>
+ <version>0</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>1</debug>
+ <option>
+ <name>IarchiveInputs</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IarchiveOverride</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IarchiveOutput</name>
+ <state>###Unitialized###</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>BILINK</name>
+ <archiveVersion>0</archiveVersion>
+ <data></data>
+ </settings>
+ </configuration>
+ <configuration>
+ <name>Release</name>
+ <toolchain>
+ <name>ARM</name>
+ </toolchain>
+ <debug>0</debug>
+ <settings>
+ <name>General</name>
+ <archiveVersion>3</archiveVersion>
+ <data>
+ <version>21</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>0</debug>
+ <option>
+ <name>ExePath</name>
+ <state>Release\Exe</state>
+ </option>
+ <option>
+ <name>ObjPath</name>
+ <state>Release\Obj</state>
+ </option>
+ <option>
+ <name>ListPath</name>
+ <state>Release\List</state>
+ </option>
+ <option>
+ <name>Variant</name>
+ <version>19</version>
+ <state>37</state>
+ </option>
+ <option>
+ <name>GEndianMode</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>Input variant</name>
+ <version>3</version>
+ <state>6</state>
+ </option>
+ <option>
+ <name>Input description</name>
+ <state>No specifier n, no float nor long long, no scan set, no assignment suppressing.</state>
+ </option>
+ <option>
+ <name>Output variant</name>
+ <version>2</version>
+ <state>3</state>
+ </option>
+ <option>
+ <name>Output description</name>
+ <state>No specifier a, A.</state>
+ </option>
+ <option>
+ <name>GOutputBinary</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>FPU</name>
+ <version>2</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OGCoreOrChip</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>GRuntimeLibSelect</name>
+ <version>0</version>
+ <state>2</state>
+ </option>
+ <option>
+ <name>GRuntimeLibSelectSlave</name>
+ <version>0</version>
+ <state>2</state>
+ </option>
+ <option>
+ <name>RTDescription</name>
+ <state>Use the normal configuration of the C/C++ runtime library. No locale interface, C locale, no file descriptor support, no multibytes in printf and scanf, and no hex floats in strtod.</state>
+ </option>
+ <option>
+ <name>OGProductVersion</name>
+ <state>5.10.0.159</state>
+ </option>
+ <option>
+ <name>OGLastSavedByProductVersion</name>
+ <state>6.21.1.52845</state>
+ </option>
+ <option>
+ <name>GeneralEnableMisra</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>GeneralMisraVerbose</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OGChipSelectEditMenu</name>
+ <state>ATSAM4C16C_0 Atmel ATSAM4C16C Core0</state>
+ </option>
+ <option>
+ <name>GenLowLevelInterface</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>GEndianModeBE</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>OGBufferedTerminalOutput</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>GenStdoutInterface</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>GeneralMisraRules98</name>
+ <version>0</version>
+ <state>1000111110110101101110011100111111101110011011000101110111101101100111111111111100110011111001110111001111111111111111111111111</state>
+ </option>
+ <option>
+ <name>GeneralMisraVer</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>GeneralMisraRules04</name>
+ <version>0</version>
+ <state>111101110010111111111000110111111111111111111111111110010111101111010101111111111111111111111111101111111011111001111011111011111111111111111</state>
+ </option>
+ <option>
+ <name>RTConfigPath2</name>
+ <state>$TOOLKIT_DIR$\INC\c\DLib_Config_Full.h</state>
+ </option>
+ <option>
+ <name>GFPUCoreSlave</name>
+ <version>19</version>
+ <state>37</state>
+ </option>
+ <option>
+ <name>GBECoreSlave</name>
+ <version>19</version>
+ <state>37</state>
+ </option>
+ <option>
+ <name>OGUseCmsis</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>OGUseCmsisDspLib</name>
+ <state>1</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>ICCARM</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>27</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>0</debug>
+ <option>
+ <name>CCDefines</name>
+ <state>__FREERTOS__</state>
+ <state>ARM_MATH_CM4=true</state>
+ <state>__SAM4C16C_0__</state>
+ <state>BOARD=SAM4C_EK</state>
+ </option>
+ <option>
+ <name>CCPreprocFile</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCPreprocComments</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCPreprocLine</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCListCFile</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCListCMnemonics</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCListCMessages</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCListAssFile</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCListAssSource</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCEnableRemarks</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CCDiagSuppress</name>
+ <state></state>
+ </option>
+ <option>
+ <name>CCDiagRemark</name>
+ <state></state>
+ </option>
+ <option>
+ <name>CCDiagWarning</name>
+ <state></state>
+ </option>
+ <option>
+ <name>CCDiagError</name>
+ <state></state>
+ </option>
+ <option>
+ <name>CCObjPrefix</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CCAllowList</name>
+ <version>0</version>
+ <state>1111111</state>
+ </option>
+ <option>
+ <name>CCDebugInfo</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IEndianMode</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IProcessor</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IExtraOptionsCheck</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IExtraOptions</name>
+ <state></state>
+ </option>
+ <option>
+ <name>CCLangConformance</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCSignedPlainChar</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CCRequirePrototypes</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CCMultibyteSupport</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCDiagWarnAreErr</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCCompilerRuntimeInfo</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IFpuProcessor</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>OutputFile</name>
+ <state>$FILE_BNAME$.o</state>
+ </option>
+ <option>
+ <name>CCLibConfigHeader</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>PreInclude</name>
+ <state></state>
+ </option>
+ <option>
+ <name>CompilerMisraOverride</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCIncludePath2</name>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/busart_if</state>
+ <state>$PROJ_DIR$/../../../../phy/atpl230/include</state>
+ <state>$PROJ_DIR$/../../../../../../common/boards</state>
+ <state>$PROJ_DIR$/../../../../../../sam/boards/sam4c_ek</state>
+ <state>$PROJ_DIR$/../../../../../../sam/utils/preprocessor</state>
+ <state>$PROJ_DIR$/..</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/pmc</state>
+ <state>$PROJ_DIR$/../..</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/usart</state>
+ <state>$PROJ_DIR$/../../../../sscs/sscs-4-32/include</state>
+ <state>$PROJ_DIR$/../../../../mac/mac_1_3/include</state>
+ <state>$PROJ_DIR$/../../../../../../sam/utils/header_files</state>
+ <state>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/portable/iar/sam</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/efc</state>
+ <state>$PROJ_DIR$/../../../../pal/atpl230_primemac13/module_config</state>
+ <state>$PROJ_DIR$/../../../../phy/atpl230/coupling_config</state>
+ <state>$PROJ_DIR$/../../../../mac/mac_1_3/module_config</state>
+ <state>$PROJ_DIR$/../../../../../../common/services/serial</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/gpbr</state>
+ <state>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/source/templates</state>
+ <state>$PROJ_DIR$/../../../../../../common/services/clock</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/flash_efc</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/spi</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/pdc</state>
+ <state>$PROJ_DIR$/../../../../../../common/utils</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/pplc_if/atpl230</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/wdt</state>
+ <state>$PROJ_DIR$/../../../../mac/mac_1_3/addons/bootloader</state>
+ <state>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/include</state>
+ <state>$PROJ_DIR$/../../../../../../sam/boards</state>
+ <state>$PROJ_DIR$/../../../../../../common/utils/stdio/stdio_serial</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/hal/prime</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/pdc/pdc_uart_example</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/uart</state>
+ <state>$PROJ_DIR$/../../../../../../sam/utils</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/tc</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/pcrc</state>
+ <state>$PROJ_DIR$/../../../../../../common/services/serial/sam_uart</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/buart_if</state>
+ <state>$PROJ_DIR$/../../../../oss</state>
+ <state>$PROJ_DIR$/../../../../../../common/services/ioport</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/pio</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/usi</state>
+ <state>$PROJ_DIR$/../../../../pal/atpl230_primemac13/include</state>
+ <state>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include</state>
+ <state>$PROJ_DIR$/.</state>
+ </option>
+ <option>
+ <name>CCStdIncCheck</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCCodeSection</name>
+ <state>.text</state>
+ </option>
+ <option>
+ <name>IInterwork2</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IProcessorMode2</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CCOptLevel</name>
+ <state>3</state>
+ </option>
+ <option>
+ <name>CCOptStrategy</name>
+ <version>0</version>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CCOptLevelSlave</name>
+ <state>3</state>
+ </option>
+ <option>
+ <name>CompilerMisraRules98</name>
+ <version>0</version>
+ <state>1000111110110101101110011100111111101110011011000101110111101101100111111111111100110011111001110111001111111111111111111111111</state>
+ </option>
+ <option>
+ <name>CompilerMisraRules04</name>
+ <version>0</version>
+ <state>111101110010111111111000110111111111111111111111111110010111101111010101111111111111111111111111101111111011111001111011111011111111111111111</state>
+ </option>
+ <option>
+ <name>CCPosIndRopi</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCPosIndRwpi</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CCPosIndNoDynInit</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IccLang</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IccCDialect</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IccAllowVLA</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IccCppDialect</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IccExceptions</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IccRTTI</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IccStaticDestr</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IccRelaxedFpPrecision</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IccCppInlineSemantics</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IccCmsis</name>
+ <state>1</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>AARM</name>
+ <archiveVersion>2</archiveVersion>
+ <data>
+ <version>8</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>0</debug>
+ <option>
+ <name>AObjPrefix</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>AEndian</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>ACaseSensitivity</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>MacroChars</name>
+ <version>0</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AWarnEnable</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AWarnWhat</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AWarnOne</name>
+ <state></state>
+ </option>
+ <option>
+ <name>AWarnRange1</name>
+ <state></state>
+ </option>
+ <option>
+ <name>AWarnRange2</name>
+ <state></state>
+ </option>
+ <option>
+ <name>ADebug</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AltRegisterNames</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>ADefines</name>
+ <state>__FREERTOS__</state>
+ <state>ARM_MATH_CM4=true</state>
+ <state>__SAM4C16C_0__</state>
+ <state>BOARD=SAM4C_EK</state>
+ </option>
+ <option>
+ <name>AList</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AListHeader</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>AListing</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>Includes</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>MacDefs</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>MacExps</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>MacExec</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>OnlyAssed</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>MultiLine</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>PageLengthCheck</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>PageLength</name>
+ <state>80</state>
+ </option>
+ <option>
+ <name>TabSpacing</name>
+ <state>8</state>
+ </option>
+ <option>
+ <name>AXRef</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AXRefDefines</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AXRefInternal</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AXRefDual</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AProcessor</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>AFpuProcessor</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>AOutputFile</name>
+ <state>$FILE_BNAME$.o</state>
+ </option>
+ <option>
+ <name>AMultibyteSupport</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>ALimitErrorsCheck</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>ALimitErrorsEdit</name>
+ <state>100</state>
+ </option>
+ <option>
+ <name>AIgnoreStdInclude</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AUserIncludes</name>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/busart_if</state>
+ <state>$PROJ_DIR$/../../../../phy/atpl230/include</state>
+ <state>$PROJ_DIR$/../../../../../../common/boards</state>
+ <state>$PROJ_DIR$/../../../../../../sam/boards/sam4c_ek</state>
+ <state>$PROJ_DIR$/../../../../../../sam/utils/preprocessor</state>
+ <state>$PROJ_DIR$/..</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/pmc</state>
+ <state>$PROJ_DIR$/../..</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/usart</state>
+ <state>$PROJ_DIR$/../../../../sscs/sscs-4-32/include</state>
+ <state>$PROJ_DIR$/../../../../mac/mac_1_3/include</state>
+ <state>$PROJ_DIR$/../../../../../../sam/utils/header_files</state>
+ <state>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/portable/iar/sam</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/efc</state>
+ <state>$PROJ_DIR$/../../../../pal/atpl230_primemac13/module_config</state>
+ <state>$PROJ_DIR$/../../../../phy/atpl230/coupling_config</state>
+ <state>$PROJ_DIR$/../../../../mac/mac_1_3/module_config</state>
+ <state>$PROJ_DIR$/../../../../../../common/services/serial</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/gpbr</state>
+ <state>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/source/templates</state>
+ <state>$PROJ_DIR$/../../../../../../common/services/clock</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/flash_efc</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/spi</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/pdc</state>
+ <state>$PROJ_DIR$/../../../../../../common/utils</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/pplc_if/atpl230</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/wdt</state>
+ <state>$PROJ_DIR$/../../../../mac/mac_1_3/addons/bootloader</state>
+ <state>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/include</state>
+ <state>$PROJ_DIR$/../../../../../../sam/boards</state>
+ <state>$PROJ_DIR$/../../../../../../common/utils/stdio/stdio_serial</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/hal/prime</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/pdc/pdc_uart_example</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/uart</state>
+ <state>$PROJ_DIR$/../../../../../../sam/utils</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/tc</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/pcrc</state>
+ <state>$PROJ_DIR$/../../../../../../common/services/serial/sam_uart</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/buart_if</state>
+ <state>$PROJ_DIR$/../../../../oss</state>
+ <state>$PROJ_DIR$/../../../../../../common/services/ioport</state>
+ <state>$PROJ_DIR$/../../../../../../sam/drivers/pio</state>
+ <state>$PROJ_DIR$/../../../../../../sam/services/plc/usi</state>
+ <state>$PROJ_DIR$/../../../../pal/atpl230_primemac13/include</state>
+ <state>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include</state>
+ <state>$PROJ_DIR$/.</state>
+ </option>
+ <option>
+ <name>AExtraOptionsCheckV2</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>AExtraOptionsV2</name>
+ <state></state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>OBJCOPY</name>
+ <archiveVersion>0</archiveVersion>
+ <data>
+ <version>1</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>0</debug>
+ <option>
+ <name>OOCOutputFormat</name>
+ <version>2</version>
+ <state>2</state>
+ </option>
+ <option>
+ <name>OCOutputOverride</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>OOCOutputFile</name>
+ <state>apps_prime_base_appemu_flash.bin</state>
+ </option>
+ <option>
+ <name>OOCCommandLineProducer</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>OOCObjCopyEnable</name>
+ <state>0</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>CUSTOM</name>
+ <archiveVersion>3</archiveVersion>
+ <data>
+ <extensions></extensions>
+ <cmdline></cmdline>
+ </data>
+ </settings>
+ <settings>
+ <name>BICOMP</name>
+ <archiveVersion>0</archiveVersion>
+ <data></data>
+ </settings>
+ <settings>
+ <name>BUILDACTION</name>
+ <archiveVersion>1</archiveVersion>
+ <data>
+ <prebuild></prebuild>
+ <postbuild></postbuild>
+ </data>
+ </settings>
+ <settings>
+ <name>ILINK</name>
+ <archiveVersion>0</archiveVersion>
+ <data>
+ <version>12</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>0</debug>
+ <option>
+ <name>IlinkOutputFile</name>
+ <state>apps_prime_base_appemu_flash.out</state>
+ </option>
+ <option>
+ <name>IlinkLibIOConfig</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>XLinkMisraHandler</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkInputFileSlave</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkDebugInfoEnable</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IlinkKeepSymbols</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkRawBinaryFile</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkRawBinarySymbol</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkRawBinarySegment</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkRawBinaryAlign</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkDefines</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkConfigDefines</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkMapFile</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IlinkLogFile</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkLogInitialization</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkLogModule</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkLogSection</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkLogVeneer</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkIcfOverride</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IlinkIcfFile</name>
+ <state>$PROJ_DIR$/../../../../../../sam/utils/linker_scripts/sam4c/iar/sam4c16c_0_flash.icf</state>
+ </option>
+ <option>
+ <name>IlinkIcfFileSlave</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkEnableRemarks</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkSuppressDiags</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkTreatAsRem</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkTreatAsWarn</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkTreatAsErr</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkWarningsAreErrors</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkUseExtraOptions</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IlinkExtraOptions</name>
+ </option>
+ <option>
+ <name>IlinkLowLevelInterfaceSlave</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IlinkAutoLibEnable</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IlinkAdditionalLibs</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IlinkOverrideProgramEntryLabel</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkProgramEntryLabelSelect</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkProgramEntryLabel</name>
+ <state>__iar_program_start</state>
+ </option>
+ <option>
+ <name>DoFill</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>FillerByte</name>
+ <state>0xFF</state>
+ </option>
+ <option>
+ <name>FillerStart</name>
+ <state>0x0</state>
+ </option>
+ <option>
+ <name>FillerEnd</name>
+ <state>0x0</state>
+ </option>
+ <option>
+ <name>CrcSize</name>
+ <version>0</version>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CrcAlign</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CrcAlgo</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CrcPoly</name>
+ <state>0x11021</state>
+ </option>
+ <option>
+ <name>CrcCompl</name>
+ <version>0</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CrcBitOrder</name>
+ <version>0</version>
+ <state>0</state>
+ </option>
+ <option>
+ <name>CrcInitialValue</name>
+ <state>0x0</state>
+ </option>
+ <option>
+ <name>DoCrc</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkBE8Slave</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IlinkBufferedTerminalOutput</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IlinkStdoutInterfaceSlave</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>CrcFullSize</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkIElfToolPostProcess</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkLogAutoLibSelect</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkLogRedirSymbols</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkLogUnusedFragments</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkCrcReverseByteOrder</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkCrcUseAsInput</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IlinkOptInline</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IlinkOptExceptionsAllow</name>
+ <state>1</state>
+ </option>
+ <option>
+ <name>IlinkOptExceptionsForce</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IlinkCmsis</name>
+ <state>1</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>IARCHIVE</name>
+ <archiveVersion>0</archiveVersion>
+ <data>
+ <version>0</version>
+ <wantNonLocal>1</wantNonLocal>
+ <debug>0</debug>
+ <option>
+ <name>IarchiveInputs</name>
+ <state></state>
+ </option>
+ <option>
+ <name>IarchiveOverride</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>IarchiveOutput</name>
+ <state>###Unitialized###</state>
+ </option>
+ </data>
+ </settings>
+ <settings>
+ <name>BILINK</name>
+ <archiveVersion>0</archiveVersion>
+ <data></data>
+ </settings>
+ </configuration>
+ <group>
+ <name>thirdparty</name>
+ <group>
+ <name>prime</name>
+ <group>
+ <name>sscs</name>
+ <group>
+ <name>sscs-4-32</name>
+ <group>
+ <name>libs</name>
+ <group>
+ <name>iar</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../sscs/sscs-4-32/libs/iar/libsam4c-sscs432-bn-iar.a</name>
+ </file>
+ </group>
+ </group>
+ <group>
+ <name>include</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../sscs/sscs-4-32/include/dl432.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../sscs/sscs-4-32/include/sscs432.h</name>
+ </file>
+ </group>
+ </group>
+ </group>
+ <group>
+ <name>mac</name>
+ <group>
+ <name>mac_1_3</name>
+ <group>
+ <name>libs</name>
+ <group>
+ <name>iar</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../mac/mac_1_3/libs/iar/libsam4c-mac13-bn-iar.a</name>
+ </file>
+ </group>
+ </group>
+ <group>
+ <name>source</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../mac/mac_1_3/source/PrimeVersion.c</name>
+ </file>
+ </group>
+ <group>
+ <name>module_config</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../mac/mac_1_3/module_config/conf_mac.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../mac/mac_1_3/module_config/conf_mac.h</name>
+ </file>
+ </group>
+ <group>
+ <name>include</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../mac/mac_1_3/include/prime.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../mac/mac_1_3/include/bmngt.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../mac/mac_1_3/include/mngl.h</name>
+ </file>
+ </group>
+ <group>
+ <name>addons</name>
+ <group>
+ <name>bootloader</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../mac/mac_1_3/addons/bootloader/boot_regions_sam4c16c_0.h</name>
+ </file>
+ </group>
+ </group>
+ </group>
+ </group>
+ <group>
+ <name>oss</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../oss/oss_if.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../oss/oss_if.h</name>
+ </file>
+ </group>
+ <group>
+ <name>phy</name>
+ <group>
+ <name>atpl230</name>
+ <group>
+ <name>source</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../phy/atpl230/source/atpl230_iir_filter.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../phy/atpl230/source/atpl230.c</name>
+ </file>
+ </group>
+ <group>
+ <name>coupling_config</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../phy/atpl230/coupling_config/conf_atpl230.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../phy/atpl230/coupling_config/conf_atpl230.h</name>
+ </file>
+ </group>
+ <group>
+ <name>include</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../phy/atpl230/include/atpl230.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../phy/atpl230/include/atpl230_reg.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../phy/atpl230/include/atpl230_iir_filter.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../phy/atpl230/include/atpl230_version.h</name>
+ </file>
+ </group>
+ </group>
+ </group>
+ <group>
+ <name>apps</name>
+ <group>
+ <name>prime_base_appemu</name>
+ <file>
+ <name>$PROJ_DIR$/../../app_emu.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../app_emu_base.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../app_emu_common.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../main.c</name>
+ </file>
+ <group>
+ <name>sam4c16c_sam4c_ek</name>
+ <file>
+ <name>$PROJ_DIR$/../conf_buart_if.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../conf_app_emu.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../conf_usi.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../conf_uart_serial.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../conf_busart_if.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../conf_prime.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../conf_oss.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../conf_clock.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../conf_board.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../conf_pplc_if.h</name>
+ </file>
+ <group>
+ <name>iar</name>
+ <file>
+ <name>$PROJ_DIR$/asf.h</name>
+ </file>
+ </group>
+ <file>
+ <name>$PROJ_DIR$/../FreeRTOSConfig.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../conf_example.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../conf_phy.h</name>
+ </file>
+ </group>
+ <file>
+ <name>$PROJ_DIR$/../../app_emu.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../app_emu_common.h</name>
+ </file>
+ </group>
+ </group>
+ <group>
+ <name>pal</name>
+ <group>
+ <name>atpl230_primemac13</name>
+ <group>
+ <name>source</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../pal/atpl230_primemac13/source/pal.c</name>
+ </file>
+ </group>
+ <group>
+ <name>module_config</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../pal/atpl230_primemac13/module_config/conf_pal.h</name>
+ </file>
+ </group>
+ <group>
+ <name>include</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../pal/atpl230_primemac13/include/pal.h</name>
+ </file>
+ </group>
+ </group>
+ </group>
+ </group>
+ <group>
+ <name>freertos</name>
+ <group>
+ <name>freertos-7.3.0</name>
+ <group>
+ <name>source</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/FreeRTOS_CLI.c</name>
+ </file>
+ <group>
+ <name>portable</name>
+ <group>
+ <name>iar</name>
+ <group>
+ <name>sam</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/portable/iar/sam/port.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/portable/iar/sam/portasm.s</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/portable/iar/sam/portmacro.h</name>
+ </file>
+ </group>
+ </group>
+ <group>
+ <name>memmang</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/portable/memmang/heap_4.c</name>
+ </file>
+ </group>
+ </group>
+ <file>
+ <name>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/tasks.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/list.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/timers.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/queue.c</name>
+ </file>
+ <group>
+ <name>include</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/include/queue.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/include/semphr.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/include/StackMacros.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/include/FreeRTOS.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/include/mpu_wrappers.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/include/portable.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/include/list.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/include/timers.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/include/FreeRTOS_CLI.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/include/projdefs.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/include/croutine.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../freertos/freertos-7.3.0/source/include/task.h</name>
+ </file>
+ </group>
+ </group>
+ </group>
+ </group>
+ </group>
+ <group>
+ <name>common</name>
+ <group>
+ <name>utils</name>
+ <group>
+ <name>stdio</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../common/utils/stdio/write.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../common/utils/stdio/read.c</name>
+ </file>
+ <group>
+ <name>stdio_serial</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../common/utils/stdio/stdio_serial/stdio_serial.h</name>
+ </file>
+ </group>
+ </group>
+ <group>
+ <name>interrupt</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../common/utils/interrupt/interrupt_sam_nvic.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../common/utils/interrupt/interrupt_sam_nvic.h</name>
+ </file>
+ </group>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../common/utils/interrupt.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../common/utils/parts.h</name>
+ </file>
+ </group>
+ <group>
+ <name>services</name>
+ <group>
+ <name>serial</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../common/services/serial/usart_serial.c</name>
+ </file>
+ <group>
+ <name>sam_uart</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../common/services/serial/sam_uart/uart_serial.h</name>
+ </file>
+ </group>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../common/services/serial/serial.h</name>
+ </file>
+ </group>
+ <group>
+ <name>clock</name>
+ <group>
+ <name>sam4c</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../common/services/clock/sam4c/sysclk.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../common/services/clock/sam4c/pll.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../common/services/clock/sam4c/genclk.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../common/services/clock/sam4c/osc.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../common/services/clock/sam4c/sysclk.h</name>
+ </file>
+ </group>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../common/services/clock/osc.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../common/services/clock/genclk.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../common/services/clock/sysclk.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../common/services/clock/pll.h</name>
+ </file>
+ </group>
+ <group>
+ <name>ioport</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../common/services/ioport/ioport.h</name>
+ </file>
+ <group>
+ <name>sam</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../common/services/ioport/sam/ioport_pio.h</name>
+ </file>
+ </group>
+ </group>
+ </group>
+ <group>
+ <name>boards</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../common/boards/board.h</name>
+ </file>
+ </group>
+ </group>
+ <group>
+ <name>sam</name>
+ <group>
+ <name>drivers</name>
+ <group>
+ <name>usart</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/usart/usart.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/usart/usart.h</name>
+ </file>
+ </group>
+ <group>
+ <name>uart</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/uart/uart.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/uart/uart.h</name>
+ </file>
+ </group>
+ <group>
+ <name>pmc</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/pmc/sleep.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/pmc/pmc.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/pmc/sleep.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/pmc/pmc.h</name>
+ </file>
+ </group>
+ <group>
+ <name>efc</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/efc/efc.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/efc/efc.h</name>
+ </file>
+ </group>
+ <group>
+ <name>wdt</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/wdt/wdt.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/wdt/wdt.h</name>
+ </file>
+ </group>
+ <group>
+ <name>tc</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/tc/tc.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/tc/tc.h</name>
+ </file>
+ </group>
+ <group>
+ <name>spi</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/spi/spi.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/spi/spi.h</name>
+ </file>
+ </group>
+ <group>
+ <name>pio</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/pio/pio.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/pio/pio_handler.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/pio/pio.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/pio/pio_handler.h</name>
+ </file>
+ </group>
+ <group>
+ <name>gpbr</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/gpbr/gpbr.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/gpbr/gpbr.h</name>
+ </file>
+ </group>
+ <group>
+ <name>pdc</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/pdc/pdc.c</name>
+ </file>
+ <group>
+ <name>pdc_uart_example</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/pdc/pdc_uart_example/pdc_uart_example.h</name>
+ </file>
+ </group>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/drivers/pdc/pdc.h</name>
+ </file>
+ </group>
+ </group>
+ <group>
+ <name>services</name>
+ <group>
+ <name>plc</name>
+ <group>
+ <name>pplc_if</name>
+ <group>
+ <name>atpl230</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/services/plc/pplc_if/atpl230/pplc_if.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/services/plc/pplc_if/atpl230/pplc_if.h</name>
+ </file>
+ </group>
+ </group>
+ <group>
+ <name>pcrc</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/services/plc/pcrc/pcrc.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/services/plc/pcrc/pcrc.h</name>
+ </file>
+ </group>
+ <group>
+ <name>usi</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/services/plc/usi/usi.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/services/plc/usi/usi.h</name>
+ </file>
+ </group>
+ <group>
+ <name>hal</name>
+ <group>
+ <name>prime</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/services/plc/hal/prime/hal.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/services/plc/hal/prime/hal.h</name>
+ </file>
+ </group>
+ </group>
+ <group>
+ <name>busart_if</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/services/plc/busart_if/busart_if.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/services/plc/busart_if/busart_if.h</name>
+ </file>
+ </group>
+ <group>
+ <name>buart_if</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/services/plc/buart_if/buart_if.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/services/plc/buart_if/buart_if.h</name>
+ </file>
+ </group>
+ </group>
+ <group>
+ <name>flash_efc</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/services/flash_efc/flash_efc.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/services/flash_efc/flash_efc.h</name>
+ </file>
+ </group>
+ </group>
+ <group>
+ <name>utils</name>
+ <group>
+ <name>cmsis</name>
+ <group>
+ <name>sam4c</name>
+ <group>
+ <name>source</name>
+ <group>
+ <name>templates</name>
+ <group>
+ <name>iar</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/source/templates/iar/startup_sam4c.c</name>
+ </file>
+ </group>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/source/templates/system_sam4c.c</name>
+ </file>
+ </group>
+ </group>
+ <group>
+ <name>include</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/sam4c.h</name>
+ </file>
+ <group>
+ <name>component</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_pmc.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_ipc.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_pdc.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_wdt.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_icm.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_matrix.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_uart.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_rtc.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_twi.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_chipid.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_aes.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_usart.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_rswdt.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_smc.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_spi.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_trng.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_pio.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_tc.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_uotghs.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_efc.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_pwm.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_slcdc.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_cmcc.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_adc.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_rtt.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_rstc.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_supc.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/component/component_gpbr.h</name>
+ </file>
+ </group>
+ <group>
+ <name>instance</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_uart0.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_smc0.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_efc.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_pwm.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_slcdc.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_chipid.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_tc1.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_cmcc0.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_rswdt.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_wdt.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_usart2.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_rtt.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_uart1.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_pmc.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_rstc.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_twi1.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_spi0.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_piod.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_tc0.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_cmcc1.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_piob.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_icm.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_aes.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_smc1.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_pioa.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_matrix1.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_spi1.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_usart3.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_ipc0.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_rtc.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_usart1.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_usart4.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_pioc.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_efc1.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_trng.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_gpbr.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_supc.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_twi0.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_uotghs.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_adc.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_efc0.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_matrix0.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_ipc1.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_usart0.h</name>
+ </file>
+ </group>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/system_sam4c.h</name>
+ </file>
+ <group>
+ <name>pio</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/pio/pio_sam4c4c.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/pio/pio_sam4c16c.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/pio/pio_sam4c8c.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/pio/pio_sam4c32c.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/pio/pio_sam4c32e.h</name>
+ </file>
+ </group>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/sam4c32e_0.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/sam4c4c_0.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/sam4c16c_1.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/sam4c4c_1.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/sam4c32c_1.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/sam4c16c_0.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/sam4c8c_1.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/sam4c8c_0.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/sam4c32e_1.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/cmsis/sam4c/include/sam4c32c_0.h</name>
+ </file>
+ </group>
+ </group>
+ </group>
+ <group>
+ <name>preprocessor</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/preprocessor/stringz.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/preprocessor/mrepeat.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/preprocessor/preprocessor.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/preprocessor/tpaste.h</name>
+ </file>
+ </group>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/status_codes.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/compiler.h</name>
+ </file>
+ <group>
+ <name>header_files</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/utils/header_files/io.h</name>
+ </file>
+ </group>
+ </group>
+ <group>
+ <name>boards</name>
+ <group>
+ <name>sam4c_ek</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/boards/sam4c_ek/init.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/boards/sam4c_ek/led.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../sam/boards/sam4c_ek/sam4c_ek.h</name>
+ </file>
+ </group>
+ </group>
+ </group>
+</project>
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/iar/asf.h b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/iar/asf.h
new file mode 100644
index 00000000..69d7c19b
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4c16c_sam4c_ek/iar/asf.h
@@ -0,0 +1,171 @@
+/**
+ * \file
+ *
+ * \brief Autogenerated API include file for the Atmel Software Framework (ASF)
+ *
+ * Copyright (c) 2012 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef ASF_H
+#define ASF_H
+
+/*
+ * This file includes all API header files for the selected drivers from ASF.
+ * Note: There might be duplicate includes required by more than one driver.
+ *
+ * The file is automatically generated and will be re-written when
+ * running the ASF driver selector tool. Any changes will be discarded.
+ */
+
+// From module: Common SAM compiler driver
+#include <compiler.h>
+#include <status_codes.h>
+
+// From module: EEFC - Enhanced Embedded Flash Controller
+#include <efc.h>
+
+// From module: Flash - SAM Flash Service API
+#include <flash_efc.h>
+
+// From module: FreeRTOS mini Real-Time Kernel
+#include <FreeRTOS.h>
+#include <FreeRTOS_CLI.h>
+#include <StackMacros.h>
+#include <croutine.h>
+#include <list.h>
+#include <mpu_wrappers.h>
+#include <portable.h>
+#include <projdefs.h>
+#include <queue.h>
+#include <semphr.h>
+#include <task.h>
+#include <timers.h>
+
+// From module: GPBR - General Purpose Backup Register
+#include <gpbr.h>
+
+// From module: Generic board support
+#include <board.h>
+
+// From module: IOPORT - General purpose I/O service
+#include <ioport.h>
+
+// From module: Interrupt management - SAM implementation
+#include <interrupt.h>
+
+// From module: PDC - Peripheral DMA Controller Example
+#include <pdc.h>
+
+// From module: PIO - Parallel Input/Output Controller
+#include <pio.h>
+
+// From module: PLC Buffered PDC Uart Service Interface
+#include <buart_if.h>
+
+// From module: PLC Buffered PDC Usart Service Interface
+#include <busart_if.h>
+
+// From module: PLC PRIME CRC calculation service
+#include <pcrc.h>
+
+// From module: PLC Physical Layer Interface
+#include <atpl230.h>
+#include <atpl230_reg.h>
+
+// From module: PLC Universal Serial Interface
+#include <usi.h>
+
+// From module: PMC - Power Management Controller
+#include <pmc.h>
+#include <sleep.h>
+
+// From module: PRIME Hardware Abstraction Layer
+#include <hal.h>
+
+// From module: PRIME IEC 61334-4-32 Convergence Layer
+#include <dl432.h>
+#include <sscs432.h>
+
+// From module: PRIME MAC Layer
+#include <bmngt.h>
+#include <mngl.h>
+#include <prime.h>
+
+// From module: PRIME Operative System Support (OSS)
+#include <oss_if.h>
+
+// From module: Part identification macros
+#include <parts.h>
+
+// From module: Physical Abstraction Layer (PAL) interface - ATPL230 and PRIME MAC 1.3
+#include <pal.h>
+
+// From module: Proxy Power Line Communication (PLC) Controller Interface - ATPL230 implementation
+#include <pplc_if.h>
+
+// From module: SAM4C EK LED support enabled
+#include <led.h>
+
+// From module: SPI - Serial Peripheral Interface
+#include <spi.h>
+
+// From module: Standard serial I/O (stdio) - SAM implementation
+#include <stdio_serial.h>
+
+// From module: System Clock Control - SAM4C implementation
+#include <sysclk.h>
+
+// From module: TC - Timer Counter
+#include <tc.h>
+
+// From module: UART - Univ. Async Rec/Trans
+#include <uart.h>
+
+// From module: USART - Serial interface - SAM implementation for devices with both UART and USART
+#include <serial.h>
+
+// From module: USART - Univ. Syn Async Rec/Trans
+#include <usart.h>
+
+// From module: WDT - Watchdog Timer
+#include <wdt.h>
+
+// From module: pio_handler support enabled
+#include <pio_handler.h>
+
+#endif // ASF_H
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/FreeRTOSConfig.h b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/FreeRTOSConfig.h
new file mode 100644
index 00000000..ca39ee85
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/FreeRTOSConfig.h
@@ -0,0 +1,154 @@
+/**
+ *
+ * \file
+ *
+ * \brief Generic FreeRTOS peripheral control functions
+ *
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+
+#ifndef FREERTOS_CONFIG_H
+#define FREERTOS_CONFIG_H
+
+/*-----------------------------------------------------------
+ * Application specific definitions.
+ *
+ * These definitions should be adjusted for your particular hardware and
+ * application requirements.
+ *
+ * THESE PARAMETERS ARE DESCRIBED WITHIN THE 'CONFIGURATION' SECTION OF THE
+ * FreeRTOS API DOCUMENTATION AVAILABLE ON THE FreeRTOS.org WEB SITE.
+ *
+ * See http://www.freertos.org/a00110.html.
+ *----------------------------------------------------------*/
+
+#if defined (__GNUC__) || defined (__ICCARM__)
+#include <stdint.h>
+#endif
+
+//#define configUSE_PORT_OPTIMISED_TASK_SELECTION 1
+#define configUSE_TICKLESS_IDLE 0
+#define configUSE_PREEMPTION 0
+#define configUSE_IDLE_HOOK 0
+#define configUSE_TICK_HOOK 0
+#define configCPU_CLOCK_HZ ( sysclk_get_cpu_hz() )
+#define configTICK_RATE_HZ ( ( portTickType ) 1000 )
+#define configMAX_PRIORITIES ( ( unsigned portBASE_TYPE ) 5 )
+#define configMINIMAL_STACK_SIZE ( ( unsigned short ) 130 )
+#define configTOTAL_HEAP_SIZE ( ( size_t ) 15000 )
+#define configMAX_TASK_NAME_LEN ( 16 )
+#define configUSE_TRACE_FACILITY 0
+#define configUSE_16_BIT_TICKS 0
+#define configIDLE_SHOULD_YIELD 1
+#define configUSE_MUTEXES 1
+#define configQUEUE_REGISTRY_SIZE 12
+#define configCHECK_FOR_STACK_OVERFLOW 0
+#define configUSE_RECURSIVE_MUTEXES 1
+#define configUSE_MALLOC_FAILED_HOOK 0
+#define configUSE_APPLICATION_TASK_TAG 0
+#define configUSE_COUNTING_SEMAPHORES 1
+
+/* Co-routine definitions. */
+#define configUSE_CO_ROUTINES 0
+#define configMAX_CO_ROUTINE_PRIORITIES ( 2 )
+
+/* Software timer definitions. */
+#define configUSE_TIMERS 1
+#define configTIMER_TASK_PRIORITY ( configMAX_PRIORITIES - 1 )
+#define configTIMER_QUEUE_LENGTH 5
+#define configTIMER_TASK_STACK_DEPTH ( configMINIMAL_STACK_SIZE * 3 )
+
+/* Set the following definitions to 1 to include the API function, or zero
+to exclude the API function. */
+#define INCLUDE_vTaskPrioritySet 1
+#define INCLUDE_uxTaskPriorityGet 1
+#define INCLUDE_vTaskDelete 1
+#define INCLUDE_vTaskCleanUpResources 1
+#define INCLUDE_vTaskSuspend 1
+#define INCLUDE_vTaskDelayUntil 1
+#define INCLUDE_vTaskDelay 1
+#define INCLUDE_eTaskStateGet 1
+
+#define INCLUDE_uxTaskGetStackHighWaterMark 1
+
+/* FreeRTOS+CLI definitions. */
+
+/* Dimensions a buffer into which command outputs can be written. The buffer
+can be declared in the CLI code itself, to allow multiple command consoles to
+share the same buffer. For example, an application may allow access to the
+command interpreter by UART and by Ethernet. Sharing a buffer is done purely
+to save RAM. Note, however, that the command console itself is not re-entrant,
+so only one command interpreter interface can be used at any one time. For
+that reason, no attempt at providing mutual exclusion to the buffer is
+attempted. */
+#define configCOMMAND_INT_MAX_OUTPUT_SIZE 400
+
+
+/* Cortex-M specific definitions. */
+
+#ifdef __NVIC_PRIO_BITS
+ /* __BVIC_PRIO_BITS will be specified when CMSIS is being used. */
+ #define configPRIO_BITS __NVIC_PRIO_BITS
+#else
+ #define configPRIO_BITS 4 /* 15 priority levels */
+#endif
+
+/* The lowest interrupt priority that can be used in a call to a "set priority"
+function. */
+#define configLIBRARY_LOWEST_INTERRUPT_PRIORITY 0x0f
+
+/* The highest interrupt priority that can be used by any interrupt service
+routine that makes calls to interrupt safe FreeRTOS API functions. DO NOT CALL
+INTERRUPT SAFE FREERTOS API FUNCTIONS FROM ANY INTERRUPT THAT HAS A HIGHER
+PRIORITY THAN THIS! (higher priorities are lower numeric values. */
+#define configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY 10
+
+/* Interrupt priorities used by the kernel port layer itself. These are generic
+to all Cortex-M ports, and do not rely on any particular library functions. */
+#define configKERNEL_INTERRUPT_PRIORITY ( configLIBRARY_LOWEST_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) )
+#define configMAX_SYSCALL_INTERRUPT_PRIORITY ( configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) )
+
+/* Normal assert() semantics without relying on the provision of an assert.h
+header file. */
+#define configASSERT( x ) //if( ( x ) == 0 ) { taskDISABLE_INTERRUPTS(); for( ;; ) __asm volatile( "NOP" ); }
+#define INCLUDE_MODULE_TEST 0
+
+//#include "trcHooks.h"
+
+#endif /* FREERTOS_CONFIG_H */
+
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_app_emu.h b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_app_emu.h
new file mode 100644
index 00000000..69393be0
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_app_emu.h
@@ -0,0 +1,61 @@
+/**
+ * \file
+ *
+ * \brief Example configuration for the Metering Application Emulator
+ *
+ * Copyright (C) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_APP_EMU_H
+#define CONF_APP_EMU_H
+
+/* Enable debug printouts */
+#define APPEMU_DEBUG
+
+/* APPEMU: ON/OFF JUMPER CONFIG */
+#define PIN_APPEMU_GPIO (PIO_PC3_IDX)
+#define PIN_APPEMU_FLAGS (PIO_INPUT)
+#define PIN_APPEMU {PIO_PC3, PIOC, ID_PIOC, PIO_INPUT, PIO_DEBOUNCE | \
+ PIO_PULLUP}
+#define PIN_APPEMU_MASK PIO_PC3
+#define PIN_APPEMU_PIO PIOC
+#define PIN_APPEMU_ID ID_PIOC
+#define PIN_APPEMU_TYPE PIO_INPUT
+#define PIN_APPEMU_ATTR PIO_DEBOUNCE | PIO_PULLUP
+
+#endif /* CONF_APP_EMU_H */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_board.h b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_board.h
new file mode 100644
index 00000000..faf700a2
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_board.h
@@ -0,0 +1,69 @@
+/**
+ * \file
+ *
+ * \brief SAM4CMP-DB board configuration.
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_BOARD_H_INCLUDED
+#define CONF_BOARD_H_INCLUDED
+
+/* Keep watchdog at board initialization (not disable it) */
+//#define CONF_BOARD_KEEP_WATCHDOG_AT_INIT
+
+/* Configure UART0 pins */
+#define CONF_BOARD_UART_CONSOLE
+#define CONF_BOARD_UART0
+
+/* Configure SPI pins */
+#define CONF_BOARD_SPI0
+
+/* Configure SPI0 NPCS1 */
+//#define CONF_BOARD_SPI0_NPCS1
+
+/* Configure SPI0 NPCS3 */
+#define CONF_BOARD_SPI0_NPCS3
+
+/* Configure TWI pins*/
+//#define CONF_BOARD_TWI0
+
+/* Configure AT30TSE pins */
+//#define CONF_BOARD_AT30TSE
+
+#endif /* CONF_BOARD_H_INCLUDED */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_buart_if.h b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_buart_if.h
new file mode 100644
index 00000000..313c7000
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_buart_if.h
@@ -0,0 +1,68 @@
+/**
+ * \file
+ *
+ * \brief PLC UART Buffered configuration file.
+ *
+ * This file contains basic functions for the SAM BUFFERED UART, with support
+ * for all
+ * modes, settings and clock speeds.
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_BUART_IF_H_INCLUDED
+#define CONF_BUART_IF_H_INCLUDED
+
+/** Timers Configuration */
+#define ID_TC_UART ID_TC5
+#define TC_UART TC1
+#define TC_UART_CHN 2
+#define TC_UART_Handler TC5_Handler
+
+/* Max. Number of UARTS */
+#define NUMUARTS 1
+
+/** Configuration Size Buffers */
+#define RX_UART_BUF0_SIZE 1024
+#define TX_UART_BUF0_SIZE 1024
+#if (NUMUARTS > 1)
+#define RX_UART_BUF1_SIZE 1024
+#define TX_UART_BUF1_SIZE 1024
+#endif
+
+#endif /* CONF_BUART_IF_H_INCLUDED */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_busart_if.h b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_busart_if.h
new file mode 100644
index 00000000..1108bcd8
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_busart_if.h
@@ -0,0 +1,68 @@
+/**
+ * \file
+ *
+ * \brief PLC USART Buffered configuration file.
+ *
+ * This file contains basic functions for the SAM BUFFERED USART, with support
+ *for all
+ * modes, settings and clock speeds.
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_BUSART_IF_H_INCLUDED
+#define CONF_BUSART_IF_H_INCLUDED
+
+/** Timers Configuration */
+#define ID_TC_USART ID_TC4
+#define TC_USART TC1
+#define TC_USART_CHN 1
+#define TC_USART_Handler TC4_Handler
+
+/* Max. Number of USARTS */
+#define NUMUSARTS 1
+
+/** Configuration Size Buffers */
+#define RX_USART_BUF0_SIZE 128
+#define TX_USART_BUF0_SIZE 128
+#if (NUMUSARTS > 1)
+#define RX_USART_BUF1_SIZE 128
+#define TX_USART_BUF1_SIZE 128
+#endif
+
+#endif /* CONF_BUSART_IF_H_INCLUDED */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_clock.h b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_clock.h
new file mode 100644
index 00000000..d2011fa1
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_clock.h
@@ -0,0 +1,108 @@
+/**
+ * \file
+ *
+ * \brief SAM4CM clock configuration.
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_CLOCK_H_INCLUDED
+#define CONF_CLOCK_H_INCLUDED
+
+// ===== System Clock (MCK) Source Options
+//#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_SLCK_RC
+//#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_SLCK_XTAL
+//#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_SLCK_BYPASS
+//#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_MAINCK_4M_RC
+//#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_MAINCK_8M_RC
+//#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_MAINCK_12M_RC
+//#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_MAINCK_XTAL
+//#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_MAINCK_BYPASS
+//#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_PLLACK
+#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_PLLBCK
+
+// ===== System Clock (MCK) Prescaler Options (Fmck = Fsys / (SYSCLK_PRES))
+#define CONFIG_SYSCLK_PRES SYSCLK_PRES_1
+//#define CONFIG_SYSCLK_PRES SYSCLK_PRES_2
+//#define CONFIG_SYSCLK_PRES SYSCLK_PRES_4
+//#define CONFIG_SYSCLK_PRES SYSCLK_PRES_8
+//#define CONFIG_SYSCLK_PRES SYSCLK_PRES_16
+//#define CONFIG_SYSCLK_PRES SYSCLK_PRES_32
+//#define CONFIG_SYSCLK_PRES SYSCLK_PRES_64
+//#define CONFIG_SYSCLK_PRES SYSCLK_PRES_3
+
+// ===== PLL0 (A) Options (8.192M = (32.768K * 250) / 1)
+//#define CONFIG_PLL0_SOURCE PLLA_SRC_SLCK_32K_XTAL
+
+// ===== PLL1 (B) Options (Fpll = (Fclk * PLL_mul) / PLL_div)
+// Use mul and div effective values here.
+#define CONFIG_PLL1_SOURCE PLLB_SRC_MAINCK_XTAL
+#define CONFIG_PLL1_MUL (240000000UL / BOARD_FREQ_MAINCK_XTAL)
+#define CONFIG_PLL1_DIV 2
+
+// ===== Coprocessor System Clock (CPMCK) Options
+// Fcpmck = Fcpclk_source / CPCLK_PRES
+
+// Note:
+// CONFIG_CPCLK_ENABLE MUST be defined if using peripherals on bus matrix 1.
+#define CONFIG_CPCLK_ENABLE
+
+// Coprocessor System Clock Source Options
+//#define CONFIG_CPCLK_SOURCE CPCLK_SRC_SLCK
+//#define CONFIG_CPCLK_SOURCE CPCLK_SRC_MAINCK
+//#define CONFIG_CPCLK_SOURCE CPCLK_SRC_PLLACK
+//#define CONFIG_CPCLK_SOURCE CPCLK_SRC_PLLBCK
+#define CONFIG_CPCLK_SOURCE CPCLK_SRC_MCK
+
+// Coprocessor System Clock Prescaler Options (CPCLK_PRES may be 1 to 16).
+#define CONFIG_CPCLK_PRES 1
+
+// ===== Main processor frequency (MCK)
+// - XTAL frequency: 8MHz
+// - System clock source: PLLB
+// - System clock prescaler: 1 (divided by 1)
+// - PLLB source: XTAL
+// - PLLB output: XTAL * 30 / 2
+// - System clock: 8 * 30 / 2 / 1 = 120MHz
+//
+// ===== Coprocessor frequency (CPMCK)
+// - Coprocessor system clock source: MCK
+// - Coprocessor system clock prescaler: 1 (divided by 1)
+// - Coprocessor system clock: 120MHz / 1 = 120MHz
+
+#endif /* CONF_CLOCK_H_INCLUDED */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_example.h b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_example.h
new file mode 100644
index 00000000..2cd53fb7
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_example.h
@@ -0,0 +1,52 @@
+/**
+ * \file
+ *
+ * \brief Example configuration for ATMEL PRIME v1.3 Service Node
+ *
+ * Copyright (C) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_EXAMPLE_H
+#define CONF_EXAMPLE_H
+
+/* Enable LCD signalling */
+/* #define EXAMPLE_LCD_SIGNALLING_ENABLE */
+/* Signalling Indication Period */
+#define SIGNALLING_TIMER_RATE (250 / portTICK_RATE_MS)
+
+#endif /* CONF_EXAMPLE_H */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_oss.h b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_oss.h
new file mode 100644
index 00000000..ddb3f508
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_oss.h
@@ -0,0 +1,53 @@
+/**
+ * \file
+ *
+ * \brief OSS Layer Configuration.
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_OSS_H_INCLUDE
+#define CONF_OSS_H_INCLUDE
+
+/* Disable PRM capability */
+#define OSS_PRIME_DISABLE_PRM
+
+/* Enable embedded sniffer serialization */
+/* #define OSS_PRIME_ENABLE_EMB_SNIFFER */
+
+#endif /* CONF_OSS_H_INCLUDE */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_phy.h b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_phy.h
new file mode 100644
index 00000000..7a292363
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_phy.h
@@ -0,0 +1,50 @@
+/**
+ * \file
+ *
+ * \brief PHY Layer Configuration.
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_PHY_H_INCLUDE
+#define CONF_PHY_H_INCLUDE
+
+/* Select Coupling Board Configuration (see values in atpl230.h) */
+#define BOARD_COUPLING ATPLCOUP000_v2
+
+#endif /* CONF_PHY_H_INCLUDE */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_pplc_if.h b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_pplc_if.h
new file mode 100644
index 00000000..f9d57b21
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_pplc_if.h
@@ -0,0 +1,69 @@
+/**
+ * \file
+ *
+ * \brief PPLC interface Configuration.
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_PPLC_IF_H_INCLUDE
+#define CONF_PPLC_IF_H_INCLUDE
+
+#include "board.h"
+
+/* Select the SPI module that PPLC is connected to */
+#define PPLC_SPI_MODULE SPI0
+
+/* Chip select used by PPLC internal peripheral */
+#define PPLC_CS 3
+
+/* Interruption pin used by PPLC internal peripheral */
+#define PPLC_INT_GPIO (PIO_PB13_IDX)
+#define PPLC_INT_FLAGS (IOPORT_MODE_DEBOUNCE)
+#define PPLC_INT_SENSE (IOPORT_SENSE_FALLING)
+
+#define PPLC_INT {PIO_PB13, PIOB, ID_PIOB, PIO_INPUT, \
+ PIO_DEBOUNCE | PIO_IT_FALL_EDGE}
+#define PPLC_INT_MASK PIO_PB13
+#define PPLC_INT_PIO PIOB
+#define PPLC_INT_ID ID_PIOB
+#define PPLC_INT_TYPE PIO_INPUT
+#define PPLC_INT_ATTR (PIO_DEBOUNCE | PIO_IT_FALL_EDGE)
+#define PPLC_INT_IRQn PIOB_IRQn
+
+#endif /* CONF_PPLC_IF_H_INCLUDE */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_prime.h b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_prime.h
new file mode 100644
index 00000000..b81e9008
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_prime.h
@@ -0,0 +1,61 @@
+/**
+ * \file
+ *
+ * \brief PRIME configuration file.
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_PRIME_H_INCLUDED
+#define CONF_PRIME_H_INCLUDED
+
+/* PRIME MODE */
+#define PRIME_BASE
+
+/* Firmware Information */
+#define PRIME_FW_VENDOR "ATMEL"
+#define PRIME_FW_MODEL "SAM4CMPDB/000"
+#define PRIME_FW_VERSION "01.03.08.01"
+
+/* Prime PIB firmware information */
+#define PRIME_PIB_VENDOR 0x0000
+#define PRIME_PIB_MODEL 0x3430
+#define PRIME_PIB_VERSION_LEN 8
+#define PRIME_PIB_VERSION "01030801"
+
+#endif /* CONF_PRIME_H_INCLUDED */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_uart_serial.h b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_uart_serial.h
new file mode 100644
index 00000000..bb9c6a93
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_uart_serial.h
@@ -0,0 +1,56 @@
+/**
+ * \file
+ *
+ * \brief Serial UART service configuration.
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_UART_SERIAL_H_INCLUDED
+#define CONF_UART_SERIAL_H_INCLUDED
+
+/** Console Interface */
+#define CONF_UART CONSOLE_UART
+/** Console Interface ID */
+#define CONF_UART_ID CONSOLE_UART_ID
+/** Baudrate setting */
+#define CONF_UART_BAUDRATE 115200UL
+/** Parity setting */
+#define CONF_UART_PARITY UART_MR_PAR_NO
+
+#endif /* CONF_UART_SERIAL_H_INCLUDED */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_usi.h b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_usi.h
new file mode 100644
index 00000000..d5d3347e
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/conf_usi.h
@@ -0,0 +1,63 @@
+/**
+ * \file
+ *
+ * \brief USI Layer Configuration
+ *
+ * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef CONF_USI_H_INCLUDED
+#define CONF_USI_H_INCLUDED
+
+#include "conf_buart_if.h"
+#include "conf_busart_if.h"
+
+/* Port Communications configuration */
+#define NUM_PORTS 1
+#define PORT_0 CONF_PORT(UART_TYPE, 0, 115200, TX_UART_BUF0_SIZE, \
+ RX_UART_BUF0_SIZE)
+
+/* USI protocols configuration. Enable/Disable protocols */
+#define NUM_PROTOCOLS 5
+#define USE_MNGP_PRIME_PORT 0
+#define USE_PROTOCOL_432_PRIME_PORT 0
+#define USE_PROTOCOL_MLME_PRIME_PORT 0
+#define USE_PROTOCOL_PLME_PRIME_PORT 0
+#define USE_PROTOCOL_BASEMNG_PORT 0
+
+#endif /* CONF_USI_H_INCLUDED */
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/gcc/Makefile b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/gcc/Makefile
new file mode 100644
index 00000000..ae3f617b
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/gcc/Makefile
@@ -0,0 +1,52 @@
+# List of available make goals:
+#
+# all Default target, builds the project
+# clean Clean up the project
+# rebuild Rebuild the project
+#
+#
+# doc Build the documentation
+# cleandoc Clean up the documentation
+# rebuilddoc Rebuild the documentation
+#
+# Copyright (c) 2011 Atmel Corporation. All rights reserved.
+#
+# \asf_license_start
+#
+# \page License
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are met:
+#
+# 1. Redistributions of source code must retain the above copyright notice,
+# this list of conditions and the following disclaimer.
+#
+# 2. Redistributions in binary form must reproduce the above copyright notice,
+# this list of conditions and the following disclaimer in the documentation
+# and/or other materials provided with the distribution.
+#
+# 3. The name of Atmel may not be used to endorse or promote products derived
+# from this software without specific prior written permission.
+#
+# 4. This software may only be redistributed and used in connection with an
+# Atmel microcontroller product.
+#
+# THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+# EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+# POSSIBILITY OF SUCH DAMAGE.
+#
+# \asf_license_stop
+#
+
+# Include the common Makefile, which will also include the project specific
+# config.mk file.
+MAKEFILE_PATH = ../../../../../../sam/utils/make/Makefile.sam.in
+include $(MAKEFILE_PATH)
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/gcc/asf.h b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/gcc/asf.h
new file mode 100644
index 00000000..edeb82f1
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/gcc/asf.h
@@ -0,0 +1,171 @@
+/**
+ * \file
+ *
+ * \brief Autogenerated API include file for the Atmel Software Framework (ASF)
+ *
+ * Copyright (c) 2012 Atmel Corporation. All rights reserved.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ * 3. The name of Atmel may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * 4. This software may only be redistributed and used in connection with an
+ * Atmel microcontroller product.
+ *
+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef ASF_H
+#define ASF_H
+
+/*
+ * This file includes all API header files for the selected drivers from ASF.
+ * Note: There might be duplicate includes required by more than one driver.
+ *
+ * The file is automatically generated and will be re-written when
+ * running the ASF driver selector tool. Any changes will be discarded.
+ */
+
+// From module: Common SAM compiler driver
+#include <compiler.h>
+#include <status_codes.h>
+
+// From module: EEFC - Enhanced Embedded Flash Controller
+#include <efc.h>
+
+// From module: Flash - SAM Flash Service API
+#include <flash_efc.h>
+
+// From module: FreeRTOS mini Real-Time Kernel
+#include <FreeRTOS.h>
+#include <FreeRTOS_CLI.h>
+#include <StackMacros.h>
+#include <croutine.h>
+#include <list.h>
+#include <mpu_wrappers.h>
+#include <portable.h>
+#include <projdefs.h>
+#include <queue.h>
+#include <semphr.h>
+#include <task.h>
+#include <timers.h>
+
+// From module: GPBR - General Purpose Backup Register
+#include <gpbr.h>
+
+// From module: Generic board support
+#include <board.h>
+
+// From module: IOPORT - General purpose I/O service
+#include <ioport.h>
+
+// From module: Interrupt management - SAM implementation
+#include <interrupt.h>
+
+// From module: PDC - Peripheral DMA Controller Example
+#include <pdc.h>
+
+// From module: PIO - Parallel Input/Output Controller
+#include <pio.h>
+
+// From module: PLC Buffered PDC Uart Service Interface
+#include <buart_if.h>
+
+// From module: PLC Buffered PDC Usart Service Interface
+#include <busart_if.h>
+
+// From module: PLC PRIME CRC calculation service
+#include <pcrc.h>
+
+// From module: PLC Physical Layer Interface
+#include <atpl230.h>
+#include <atpl230_reg.h>
+
+// From module: PLC Universal Serial Interface
+#include <usi.h>
+
+// From module: PMC - Power Management Controller
+#include <pmc.h>
+#include <sleep.h>
+
+// From module: PRIME Hardware Abstraction Layer
+#include <hal.h>
+
+// From module: PRIME IEC 61334-4-32 Convergence Layer
+#include <dl432.h>
+#include <sscs432.h>
+
+// From module: PRIME MAC Layer
+#include <bmngt.h>
+#include <mngl.h>
+#include <prime.h>
+
+// From module: PRIME Operative System Support (OSS)
+#include <oss_if.h>
+
+// From module: Part identification macros
+#include <parts.h>
+
+// From module: Physical Abstraction Layer (PAL) interface - ATPL230 and PRIME MAC 1.3
+#include <pal.h>
+
+// From module: Proxy Power Line Communication (PLC) Controller Interface - ATPL230 implementation
+#include <pplc_if.h>
+
+// From module: SAM4CMP Demo Board LED support enabled
+#include <led.h>
+
+// From module: SPI - Serial Peripheral Interface
+#include <spi.h>
+
+// From module: Standard serial I/O (stdio) - SAM implementation
+#include <stdio_serial.h>
+
+// From module: System Clock Control - SAM4CM implementation
+#include <sysclk.h>
+
+// From module: TC - Timer Counter
+#include <tc.h>
+
+// From module: UART - Univ. Async Rec/Trans
+#include <uart.h>
+
+// From module: USART - Serial interface - SAM implementation for devices with both UART and USART
+#include <serial.h>
+
+// From module: USART - Univ. Syn Async Rec/Trans
+#include <usart.h>
+
+// From module: WDT - Watchdog Timer
+#include <wdt.h>
+
+// From module: pio_handler support enabled
+#include <pio_handler.h>
+
+#endif // ASF_H
diff --git a/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/gcc/config.mk b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/gcc/config.mk
new file mode 100644
index 00000000..eea60214
--- /dev/null
+++ b/thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/gcc/config.mk
@@ -0,0 +1,219 @@
+#
+# Copyright (c) 2011 Atmel Corporation. All rights reserved.
+#
+# \asf_license_start
+#
+# \page License
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are met:
+#
+# 1. Redistributions of source code must retain the above copyright notice,
+# this list of conditions and the following disclaimer.
+#
+# 2. Redistributions in binary form must reproduce the above copyright notice,
+# this list of conditions and the following disclaimer in the documentation
+# and/or other materials provided with the distribution.
+#
+# 3. The name of Atmel may not be used to endorse or promote products derived
+# from this software without specific prior written permission.
+#
+# 4. This software may only be redistributed and used in connection with an
+# Atmel microcontroller product.
+#
+# THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
+# EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
+# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+# POSSIBILITY OF SUCH DAMAGE.
+#
+# \asf_license_stop
+#
+
+# Path to top level ASF directory relative to this project directory.
+PRJ_PATH = ../../../../../..
+
+# Target CPU architecture: cortex-m3, cortex-m4
+ARCH = cortex-m4
+
+# Target part: none, sam3n4 or sam4l4aa
+PART = sam4cmp16c:0
+
+# Application target name. Given with suffix .a for library and .elf for a
+# standalone application.
+TARGET_FLASH = apps_prime_base_appemu_flash.elf
+TARGET_SRAM = apps_prime_base_appemu_sram.elf
+
+# List of C source files.
+CSRCS = \
+ common/services/clock/sam4cm/sysclk.c \
+ common/services/serial/usart_serial.c \
+ common/utils/interrupt/interrupt_sam_nvic.c \
+ common/utils/stdio/read.c \
+ common/utils/stdio/write.c \
+ sam/boards/sam4cmp_db/init.c \
+ sam/drivers/efc/efc.c \
+ sam/drivers/gpbr/gpbr.c \
+ sam/drivers/pdc/pdc.c \
+ sam/drivers/pio/pio.c \
+ sam/drivers/pio/pio_handler.c \
+ sam/drivers/pmc/pmc.c \
+ sam/drivers/pmc/sleep.c \
+ sam/drivers/spi/spi.c \
+ sam/drivers/tc/tc.c \
+ sam/drivers/uart/uart.c \
+ sam/drivers/usart/usart.c \
+ sam/drivers/wdt/wdt.c \
+ sam/services/flash_efc/flash_efc.c \
+ sam/services/plc/buart_if/buart_if.c \
+ sam/services/plc/busart_if/busart_if.c \
+ sam/services/plc/hal/prime/hal.c \
+ sam/services/plc/pcrc/pcrc.c \
+ sam/services/plc/pplc_if/atpl230/pplc_if.c \
+ sam/services/plc/usi/usi.c \
+ sam/utils/cmsis/sam4cm/source/templates/gcc/startup_sam4cm.c \
+ sam/utils/cmsis/sam4cm/source/templates/system_sam4cm.c \
+ sam/utils/syscalls/gcc/syscalls.c \
+ thirdparty/freertos/freertos-7.3.0/source/FreeRTOS_CLI.c \
+ thirdparty/freertos/freertos-7.3.0/source/list.c \
+ thirdparty/freertos/freertos-7.3.0/source/portable/gcc/sam/port.c \
+ thirdparty/freertos/freertos-7.3.0/source/portable/memmang/heap_4.c \
+ thirdparty/freertos/freertos-7.3.0/source/queue.c \
+ thirdparty/freertos/freertos-7.3.0/source/tasks.c \
+ thirdparty/freertos/freertos-7.3.0/source/timers.c \
+ thirdparty/prime/apps/prime_base_appemu/app_emu.c \
+ thirdparty/prime/apps/prime_base_appemu/app_emu_base.c \
+ thirdparty/prime/apps/prime_base_appemu/app_emu_common.c \
+ thirdparty/prime/apps/prime_base_appemu/main.c \
+ thirdparty/prime/mac/mac_1_3/module_config/conf_mac.c \
+ thirdparty/prime/mac/mac_1_3/source/PrimeVersion.c \
+ thirdparty/prime/oss/oss_if.c \
+ thirdparty/prime/pal/atpl230_primemac13/source/pal.c \
+ thirdparty/prime/phy/atpl230/coupling_config/conf_atpl230.c \
+ thirdparty/prime/phy/atpl230/source/atpl230.c \
+ thirdparty/prime/phy/atpl230/source/atpl230_iir_filter.c
+
+# List of assembler source files.
+ASSRCS =
+
+# List of include paths.
+INC_PATH = \
+ common/boards \
+ common/services/clock \
+ common/services/ioport \
+ common/services/serial \
+ common/services/serial/sam_uart \
+ common/utils \
+ common/utils/stdio/stdio_serial \
+ sam/boards \
+ sam/boards/sam4cmp_db \
+ sam/drivers/efc \
+ sam/drivers/gpbr \
+ sam/drivers/pdc \
+ sam/drivers/pdc/pdc_uart_example \
+ sam/drivers/pio \
+ sam/drivers/pmc \
+ sam/drivers/spi \
+ sam/drivers/tc \
+ sam/drivers/uart \
+ sam/drivers/usart \
+ sam/drivers/wdt \
+ sam/services/flash_efc \
+ sam/services/plc/buart_if \
+ sam/services/plc/busart_if \
+ sam/services/plc/hal/prime \
+ sam/services/plc/pcrc \
+ sam/services/plc/pplc_if/atpl230 \
+ sam/services/plc/usi \
+ sam/utils \
+ sam/utils/cmsis/sam4cm/include \
+ sam/utils/cmsis/sam4cm/source/templates \
+ sam/utils/header_files \
+ sam/utils/preprocessor \
+ thirdparty/CMSIS/Include \
+ thirdparty/CMSIS/Lib/GCC \
+ thirdparty/freertos/freertos-7.3.0/source/include \
+ thirdparty/freertos/freertos-7.3.0/source/portable/gcc/sam \
+ thirdparty/prime/apps/prime_base_appemu \
+ thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db \
+ thirdparty/prime/mac/mac_1_3/addons/bootloader \
+ thirdparty/prime/mac/mac_1_3/include \
+ thirdparty/prime/mac/mac_1_3/module_config \
+ thirdparty/prime/oss \
+ thirdparty/prime/pal/atpl230_primemac13/include \
+ thirdparty/prime/pal/atpl230_primemac13/module_config \
+ thirdparty/prime/phy/atpl230/coupling_config \
+ thirdparty/prime/phy/atpl230/include \
+ thirdparty/prime/sscs/sscs-4-32/include \
+ thirdparty/prime/apps/prime_base_appemu/sam4cmp16c_sam4cmp_db/gcc
+
+# Additional search paths for libraries.
+LIB_PATH = \
+ thirdparty/CMSIS/Lib/GC