aboutsummaryrefslogtreecommitdiffstats
path: root/thirdparty/prime/phy
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/phy
initial check-in of ASF 3.39.0
Diffstat (limited to 'thirdparty/prime/phy')
-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
261 files changed, 116549 insertions, 0 deletions
diff --git a/thirdparty/prime/phy/atpl230/addons/serial_if/serial_if.c b/thirdparty/prime/phy/atpl230/addons/serial_if/serial_if.c
new file mode 100644
index 00000000..a4ac8560
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/addons/serial_if/serial_if.c
@@ -0,0 +1,563 @@
+/**
+ * \file
+ *
+ * \brief ATPL230 Serial Interface for Physical layer
+ *
+ * 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
+ *
+ */
+
+/* System includes */
+#include <stdio.h>
+#include "string.h"
+
+/* Board config */
+#include "conf_board.h"
+
+/* Phy includes */
+#include "atpl230.h"
+#include "conf_atpl230.h"
+#include "conf_phy.h"
+
+/* Serial interface */
+#include "serial_if.h"
+
+/* @cond 0 */
+/**INDENT-OFF**/
+#ifdef __cplusplus
+extern "C" {
+#endif
+/**INDENT-ON**/
+/* @endcond */
+
+/**
+ * \weakgroup serial_plc_group
+ * @{
+ */
+
+/* Default empty USI interface*/
+extern int8_t usi_send_cmd(void *msg);
+int8_t Dummy_serial_send_cmd(void *msg);
+
+#ifdef __GNUC__
+int8_t usi_send_cmd( void *msg ) __attribute__ ((weak, alias("Dummy_serial_send_cmd")));
+
+#endif
+
+#ifdef __ICCARM__
+#pragma weak usi_send_cmd=Dummy_serial_send_cmd
+#endif
+
+#ifdef CONF_BOARD_LCD_EN
+#include "c42364a.h"
+#include <stdio.h>
+/* \name Tx/Rx messages counters */
+/* @{ */
+static uint16_t us_rx_counter;
+static uint16_t us_tx_counter;
+/* @} */
+#endif
+
+/* \name Data buffers
+ * \note In noise mode: num symbols in rx noise mode is 8 and 97 bytes/symbol,
+ * so 8 * 97 = 776 bytes. In addition to header size in worst case
+ * Headers us_len = 2 * PHY_DMA_OFFSET = 2 * 16 = 32. Total size is
+ * 776 + 32 = 808 bytes */
+/* @{ */
+static uint8_t uc_serial_rsp_buf[808]; /* Response working buffer */
+static uint8_t uc_serial_data_buf[808]; /* Receive working buffer */
+/* @} */
+
+/* \name Data structure to communicate with USI layer */
+/* @{ */
+static x_usi_serial_cmd_params x_phy_serial_msg;
+/* @} */
+
+/**
+ * \internal
+ * \brief Memcopy with byte order reversal.
+ *
+ * Copies puc_buf[] into puc_dst[], re-ordering the bytes to adapt to the serial
+ * communication.
+ *
+ * \param puc_dst Pointer to buffer where the data will be copied
+ * \param puc_buf Pointer to buffer data
+ * \param us_len Length of data to copy
+ */
+static void _memcpy_rev(uint8_t *puc_dst, uint8_t *puc_buf, uint16_t us_len)
+{
+ uint8_t *ptr_uc_mem_dst, *ptr_uc_mem_src;
+ uint16_t us_idx;
+
+ if (us_len <= 4) {
+ ptr_uc_mem_dst = puc_dst + us_len - 1;
+ ptr_uc_mem_src = puc_buf;
+ for (us_idx = 0; us_idx < us_len; us_idx++) {
+ *ptr_uc_mem_dst-- = (uint8_t)*ptr_uc_mem_src++;
+ }
+ } else {
+ memcpy(puc_dst, puc_buf, us_len);
+ }
+}
+
+/**
+ * \internal
+ * \brief Task to manage the serialization of the result of transmission through
+ * USI.
+ *
+ * \param pvParameters Pointer that will be used as the parameter for the task
+ * being created.
+ */
+static void _serial_if_get_tx_result_task(void *pvParameters)
+{
+ xPhyMsgTxResult_t x_write_result;
+ uint8_t us_serial_response_len;
+#ifdef CONF_BOARD_LCD_EN
+ uint8_t uc_tx_channel;
+ uint8_t uc_display_buf[10];
+#endif
+
+ UNUSED(pvParameters);
+
+ /* get phy queue result */
+ phy_tx_frame_result_cb(&x_write_result);
+
+ if (x_write_result.uc_id_buffer != 0xFF) {
+#ifdef CONF_BOARD_LCD_EN
+ us_tx_counter++;
+ c42364a_show_numeric_dec(us_tx_counter);
+ phy_get_cfg_param(PHY_ID_CFG_TXRX_CHANNEL, &uc_tx_channel, 1);
+ sprintf((char *)uc_display_buf, "TX CH%d", uc_tx_channel);
+ c42364a_show_text((const uint8_t *)uc_display_buf);
+#endif
+ /* build response */
+ us_serial_response_len = 0;
+ uc_serial_rsp_buf[us_serial_response_len++] = SERIAL_IF_PHY_COMMAND_SEND_MSG_RSP;
+ uc_serial_rsp_buf[us_serial_response_len++] = x_write_result.uc_id_buffer;
+ uc_serial_rsp_buf[us_serial_response_len++] = x_write_result.uc_result;
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(x_write_result.rms_calc >> 8);
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(x_write_result.rms_calc);
+ /* set usi parameters */
+ x_phy_serial_msg.ptr_buf = &uc_serial_rsp_buf[0];
+ x_phy_serial_msg.us_len = us_serial_response_len;
+ usi_send_cmd(&x_phy_serial_msg);
+ }
+}
+
+/**
+ * \internal
+ * \brief Task to manage the serialization of the reception message through USI.
+ *
+ * \param pvParameters Pointer that will be used as the parameter for the task
+ * being created.
+ */
+static void _serial_if_get_rx_task(void *pvParameters)
+{
+#ifdef CONF_BOARD_LCD_EN
+ uint8_t uc_tx_channel;
+ uint8_t uc_display_buf[10];
+#endif
+ uint16_t us_serial_response_len;
+ xPhyMsgRx_t x_read_msg;
+
+ UNUSED(pvParameters);
+
+ /* initialize read msg structure */
+ memset(&x_read_msg, 0, sizeof(xPhyMsgRx_t));
+ /* set pointer to reception data buffer */
+ x_read_msg.data_buf = uc_serial_data_buf;
+
+ /* block until get phy queue result */
+ phy_rx_frame_cb(&x_read_msg);
+
+ /* build response */
+ if (x_read_msg.data_len) {
+ us_serial_response_len = 0;
+ if (x_read_msg.mode == MODE_NOISE) {
+ uc_serial_rsp_buf[us_serial_response_len++] = SERIAL_IF_PHY_COMMAND_NOISE_RSP;
+ uc_serial_rsp_buf[us_serial_response_len++] = x_read_msg.noise_result;
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(x_read_msg.data_len >> 8);
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)x_read_msg.data_len;
+ memcpy(&uc_serial_rsp_buf[us_serial_response_len], x_read_msg.data_buf, x_read_msg.data_len);
+ us_serial_response_len += x_read_msg.data_len;
+ } else {
+ uc_serial_rsp_buf[us_serial_response_len++] = SERIAL_IF_PHY_COMMAND_RECEIVE_MSG;
+ uc_serial_rsp_buf[us_serial_response_len++] = x_read_msg.uc_buff_id;
+ uc_serial_rsp_buf[us_serial_response_len++] = x_read_msg.mode;
+ uc_serial_rsp_buf[us_serial_response_len++] = x_read_msg.scheme;
+ uc_serial_rsp_buf[us_serial_response_len++] = x_read_msg.header_type;
+ uc_serial_rsp_buf[us_serial_response_len++] = x_read_msg.rssi_avg;
+ uc_serial_rsp_buf[us_serial_response_len++] = x_read_msg.cinr_avg;
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(x_read_msg.evm_header >> 8);
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(x_read_msg.evm_header);
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(x_read_msg.evm_payload >> 8);
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(x_read_msg.evm_payload);
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(x_read_msg.evm_header_acum >> 24);
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(x_read_msg.evm_header_acum >> 16);
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(x_read_msg.evm_header_acum >> 8);
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(x_read_msg.evm_header_acum);
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(x_read_msg.evm_payload_acum >> 24);
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(x_read_msg.evm_payload_acum >> 16);
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(x_read_msg.evm_payload_acum >> 8);
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(x_read_msg.evm_payload_acum);
+
+ if (x_read_msg.mode == MODE_TYPE_A) {
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)((x_read_msg.data_len - 3) >> 8);
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(x_read_msg.data_len - 3);
+
+ /* remove Generic Data Frame Header */
+ memcpy(&uc_serial_rsp_buf[us_serial_response_len], x_read_msg.data_buf + 3, x_read_msg.data_len - 3);
+ us_serial_response_len += x_read_msg.data_len - 3;
+ } else {
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(x_read_msg.data_len >> 8);
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)x_read_msg.data_len;
+
+ memcpy(&uc_serial_rsp_buf[us_serial_response_len], x_read_msg.data_buf, x_read_msg.data_len);
+ us_serial_response_len += x_read_msg.data_len;
+ }
+ }
+
+ #ifdef CONF_BOARD_LCD_EN
+ us_rx_counter++;
+ c42364a_show_numeric_dec(us_rx_counter);
+ phy_get_cfg_param(PHY_ID_CFG_TXRX_CHANNEL, &uc_tx_channel, 1);
+ sprintf((char *)uc_display_buf, "RX CH%d", uc_tx_channel);
+ c42364a_show_text((const uint8_t *)uc_display_buf);
+ #endif
+ /* set usi parameters */
+ x_phy_serial_msg.ptr_buf = &uc_serial_rsp_buf[0];
+ x_phy_serial_msg.us_len = us_serial_response_len;
+ usi_send_cmd(&x_phy_serial_msg);
+ }
+}
+
+/**
+ * \brief Received message
+ *
+ * \param puc_rx_msg Pointer to the data attached to the connection request
+ * \param us_len Data length of the data attached to the request
+ *
+ * \retval true if there is no error
+ * \retval false if length is invalid or serial command is wrong
+ */
+uint8_t serial_if_api_parser(uint8_t *puc_rx_msg, uint16_t us_len)
+{
+ uint8_t uc_phy_id_len;
+ uint8_t uc_serial_if_cmd;
+ uint8_t uc_cmd_op, uc_mask;
+ uint8_t *puc_rx;
+ uint8_t uc_tx_result;
+ uint8_t uc_cfg_value[0x0A];
+ uint16_t us_phy_id;
+ uint16_t us_serial_response_len;
+ xPhyMsgTx_t x_phy_tx_msg;
+
+ /* Protection for invalid us_length */
+ if (!us_len) {
+ return false;
+ }
+
+ /* Process received message */
+ uc_serial_if_cmd = puc_rx_msg[0];
+ puc_rx = &puc_rx_msg[1];
+ us_serial_response_len = 0;
+
+ switch (uc_serial_if_cmd) {
+ /* GET command */
+ case SERIAL_IF_PHY_COMMAND_GET_CFG:
+ us_phy_id = ((uint16_t)*puc_rx++) << 8;
+ us_phy_id += (uint16_t)*puc_rx++;
+ uc_phy_id_len = *puc_rx++;
+ if (phy_get_cfg_param(us_phy_id, uc_cfg_value, uc_phy_id_len) == PHY_CFG_SUCCESS) {
+ /* build response */
+ uc_serial_rsp_buf[us_serial_response_len++] = SERIAL_IF_PHY_COMMAND_GET_CFG_RSP;
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(us_phy_id >> 8);
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(us_phy_id);
+ uc_serial_rsp_buf[us_serial_response_len++] = uc_phy_id_len;
+ _memcpy_rev(&uc_serial_rsp_buf[4], uc_cfg_value, uc_phy_id_len);
+ us_serial_response_len = uc_phy_id_len + 4;
+ /* set usi parameters */
+ x_phy_serial_msg.ptr_buf = &uc_serial_rsp_buf[0];
+ x_phy_serial_msg.us_len = us_serial_response_len;
+ usi_send_cmd(&x_phy_serial_msg);
+ }
+
+ break;
+
+ /* SET command */
+ case SERIAL_IF_PHY_COMMAND_SET_CFG:
+ us_phy_id = ((uint16_t)*puc_rx++) << 8;
+ us_phy_id += (uint16_t)*puc_rx++;
+ uc_phy_id_len = *puc_rx++;
+ _memcpy_rev(uc_cfg_value, puc_rx, uc_phy_id_len);
+ us_serial_response_len = 0;
+ /* build response */
+ uc_serial_rsp_buf[us_serial_response_len++] = SERIAL_IF_PHY_COMMAND_SET_CFG_RSP;
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(us_phy_id >> 8);
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(us_phy_id);
+ uc_serial_rsp_buf[us_serial_response_len++] = phy_set_cfg_param(us_phy_id, uc_cfg_value, uc_phy_id_len);
+ /* set usi parameters */
+ x_phy_serial_msg.ptr_buf = &uc_serial_rsp_buf[0];
+ x_phy_serial_msg.us_len = us_serial_response_len;
+ usi_send_cmd(&x_phy_serial_msg);
+ break;
+
+ /* CMD command (operations over bitfields, only in 8 bits) */
+ case SERIAL_IF_PHY_COMMAND_CMD_CFG:
+ us_phy_id = ((uint16_t)*puc_rx++) << 8;
+ us_phy_id += (uint16_t)*puc_rx++;
+ uc_cmd_op = *puc_rx++;
+ uc_mask = *puc_rx++;
+ /* build response */
+ uc_serial_rsp_buf[us_serial_response_len++] = SERIAL_IF_PHY_COMMAND_CMD_CFG_RSP;
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(us_phy_id >> 8);
+ uc_serial_rsp_buf[us_serial_response_len++] = (uint8_t)(us_phy_id);
+ uc_serial_rsp_buf[us_serial_response_len++] = uc_cmd_op;
+ uc_serial_rsp_buf[us_serial_response_len++] = phy_cmd_cfg_param(us_phy_id, uc_cmd_op, uc_mask);
+ /* set usi parameters */
+ x_phy_serial_msg.ptr_buf = &uc_serial_rsp_buf[0];
+ x_phy_serial_msg.us_len = us_serial_response_len;
+ usi_send_cmd(&x_phy_serial_msg);
+ break;
+
+ /* Write command (send data msg) */
+ case SERIAL_IF_PHY_COMMAND_SEND_MSG:
+ /* configure write parameters */
+ x_phy_tx_msg.uc_buff_id = *puc_rx++;
+ x_phy_tx_msg.att_level = *puc_rx++;
+ x_phy_tx_msg.mode = *puc_rx++;
+ x_phy_tx_msg.scheme = *puc_rx++;
+ x_phy_tx_msg.tmode = *puc_rx++;
+ x_phy_tx_msg.tdelay = ((uint32_t)*puc_rx++) << 24;
+ x_phy_tx_msg.tdelay += ((uint32_t)*puc_rx++) << 16;
+ x_phy_tx_msg.tdelay += ((uint32_t)*puc_rx++) << 8;
+ x_phy_tx_msg.tdelay += (uint32_t)*puc_rx++;
+ x_phy_tx_msg.disable_rx = *puc_rx++;
+ x_phy_tx_msg.data_len = ((uint16_t)*puc_rx++) << 8;
+ x_phy_tx_msg.data_len += (uint16_t)*puc_rx++;
+ x_phy_tx_msg.data_buf = uc_serial_data_buf;
+ if (x_phy_tx_msg.mode == MODE_TYPE_A) {
+ /* Generic Data Frame */
+ uc_serial_data_buf[0] = 0xAA;
+ uc_serial_data_buf[1] = 0xAA;
+ uc_serial_data_buf[2] = 0xAA;
+ x_phy_tx_msg.data_len += 3;
+ /* copy data */
+ memcpy(uc_serial_data_buf + 3, puc_rx, x_phy_tx_msg.data_len);
+ } else {
+ /* copy data */
+ memcpy(uc_serial_data_buf, puc_rx, x_phy_tx_msg.data_len);
+ }
+
+ /* send to phy layer */
+ uc_tx_result = phy_tx_frame(&x_phy_tx_msg);
+ if (uc_tx_result) { /* error in tx */
+ /* build response */
+ us_serial_response_len = 0;
+ uc_serial_rsp_buf[us_serial_response_len++] = SERIAL_IF_PHY_COMMAND_SEND_MSG_RSP;
+ uc_serial_rsp_buf[us_serial_response_len++] = x_phy_tx_msg.uc_buff_id;
+ uc_serial_rsp_buf[us_serial_response_len++] = uc_tx_result;
+ /* rms calc */
+ uc_serial_rsp_buf[us_serial_response_len++] = 0;
+ uc_serial_rsp_buf[us_serial_response_len++] = 0;
+ /* set usi parameters */
+ x_phy_serial_msg.ptr_buf = &uc_serial_rsp_buf[0];
+ x_phy_serial_msg.us_len = us_serial_response_len;
+ usi_send_cmd(&x_phy_serial_msg);
+ }
+
+ break;
+
+ /* Set noise capture mode */
+ case SERIAL_IF_PHY_COMMAND_NOISE_REQ:
+ {
+ uint8_t uc_noise_num_sym;
+ uint8_t uc_noise_conf = 0;
+ uint32_t ul_noise_delay_rec, ul_ref_time;
+
+ uc_noise_num_sym = *puc_rx++;
+ /* adjust number of symbols 0-7. */
+ /* number of symbols not permitted. Max 8 */
+ if (uc_noise_num_sym-- > 8) {
+ /* build response */
+ us_serial_response_len = 0;
+ uc_serial_rsp_buf[us_serial_response_len++] = SERIAL_IF_PHY_COMMAND_NOISE_RSP;
+ /* noise result = 7 -> reserved: error in ns */
+ uc_serial_rsp_buf[us_serial_response_len++] = 7;
+ /* set usi parameters */
+ x_phy_serial_msg.ptr_buf = &uc_serial_rsp_buf[0];
+ x_phy_serial_msg.us_len = us_serial_response_len;
+ usi_send_cmd(&x_phy_serial_msg);
+ } else {
+ ul_noise_delay_rec = ((uint32_t)*puc_rx++) << 24;
+ ul_noise_delay_rec += ((uint32_t)*puc_rx++) << 16;
+ ul_noise_delay_rec += ((uint32_t)*puc_rx++) << 8;
+ ul_noise_delay_rec += (uint32_t)*puc_rx++;
+ if (ul_noise_delay_rec) {
+ phy_get_cfg_param(REG_ATPL230_VHIGH_TIMER_BEACON_REF, &ul_ref_time, sizeof(ul_ref_time));
+ ul_ref_time += ul_noise_delay_rec;
+ phy_set_cfg_param(REG_ATPL230_TXRXBUF_RECTIME_NOISE1, &ul_ref_time, sizeof(ul_ref_time));
+ }
+
+ /* enable noise capture */
+ uc_noise_conf = uc_noise_num_sym & ATPL230_TXRXBUF_NOISECONF_NS_Msk;
+ uc_noise_conf |= ATPL230_TXRXBUF_NOISECONF_EBN_Msk;
+ phy_set_cfg_param(REG_ATPL230_TXRXBUF_NOISECONF, &uc_noise_conf, sizeof(uint8_t));
+ /* set forced mode */
+ if (!ul_noise_delay_rec) {
+ phy_cmd_cfg_param(REG_ATPL230_TXRXBUF_NOISECONF, PHY_CMD_CFG_OR, ATPL230_TXRXBUF_NOISECONF_FTN_Msk);
+ }
+ }
+ }
+ break;
+
+ /* Set noise capture mode */
+ case SERIAL_IF_PHY_COMMAND_GET_CFG_LIST:
+ {
+ uint8_t uc_num_elemts;
+ uint8_t uc_id_len;
+ uint8_t *puc_serial_rsp_buf;
+ uint16_t us_id;
+
+ /* reserve dynamic memory */
+ puc_serial_rsp_buf = &uc_serial_rsp_buf[0];
+ *puc_serial_rsp_buf++ = SERIAL_IF_PHY_COMMAND_GET_CFG_LIST_RSP;
+ /* get parameters of the list */
+ uc_num_elemts = *puc_rx++;
+ *puc_serial_rsp_buf++ = uc_num_elemts;
+ while (uc_num_elemts--) {
+ *puc_serial_rsp_buf++ = *puc_rx;
+ us_id = ((uint16_t)*puc_rx++) << 8;
+ *puc_serial_rsp_buf++ = *puc_rx;
+ us_id += (uint16_t)*puc_rx++;
+ *puc_serial_rsp_buf++ = *puc_rx;
+ uc_id_len = *puc_rx++;
+ phy_get_cfg_param(us_id, uc_cfg_value, uc_id_len);
+ _memcpy_rev(puc_serial_rsp_buf, uc_cfg_value, uc_id_len);
+ puc_serial_rsp_buf += uc_id_len;
+ }
+ /* set usi parameters */
+ x_phy_serial_msg.ptr_buf = &uc_serial_rsp_buf[0];
+ x_phy_serial_msg.us_len = puc_serial_rsp_buf - &uc_serial_rsp_buf[0];
+ usi_send_cmd(&x_phy_serial_msg);
+ }
+ break;
+
+ /* Reset phy layer */
+ case SERIAL_IF_PHY_COMMAND_RESET_PHY_LAYER:
+ {
+ if (*puc_rx) {
+ /* Reset PHY layer SOFT*/
+ phy_reset(PHY_RESET_SOFT_TYPE);
+ } else {
+ /* Reset PHY layer HARD */
+ phy_reset(PHY_RESET_HARD_TYPE);
+ }
+ }
+ break;
+
+ default:
+ return false;
+ }
+
+ return true;
+}
+
+/**
+ * \brief Interface to manage the serialization of the reception message through
+ * USI.
+ *
+ */
+void serial_if_check_tx_result(void)
+{
+ uint8_t uc_null_params;
+
+ _serial_if_get_tx_result_task(&uc_null_params);
+}
+
+/**
+ * \brief Interface to manage the serialization of the reception message through
+ * USI.
+ *
+ */
+void serial_if_check_rx_msg(void)
+{
+ uint8_t uc_null_params;
+
+ _serial_if_get_rx_task(&uc_null_params);
+}
+
+/**
+ * \brief Initialize serial interface.
+ *
+ */
+void serial_if_init(void)
+{
+ uint8_t uc_sna[6] = {0x00, 0x80, 0xE1, 0x00, 0x00, 0x6F};
+
+ /* PROTOCOL_ATPL230 (see usi_conf.h) */
+ x_phy_serial_msg.uc_protocol_type = 0x22;
+
+ phy_mac_crc_disable();
+ phy_set_cfg_param(REG_ATPL230_SNA0, uc_sna, sizeof(uc_sna));
+
+ #ifdef CONF_BOARD_LCD_EN
+ /* Reset rx/tx msg counters */
+ us_rx_counter = 0;
+ us_tx_counter = 0;
+#endif
+}
+
+/**
+ * \brief Default serial interface for unused USI.
+ */
+int8_t Dummy_serial_send_cmd(void *msg)
+{
+ UNUSED(msg);
+
+ return 0;
+}
+
+/* @} */
+
+/* @cond 0 */
+/**INDENT-OFF**/
+#ifdef __cplusplus
+}
+#endif
+/**INDENT-ON**/
+/* @endcond */
diff --git a/thirdparty/prime/phy/atpl230/addons/serial_if/serial_if.h b/thirdparty/prime/phy/atpl230/addons/serial_if/serial_if.h
new file mode 100644
index 00000000..6421d68c
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/addons/serial_if/serial_if.h
@@ -0,0 +1,127 @@
+/**
+ * \file
+ *
+ * \brief ATPL230 Serial Interface for Physical layer
+ *
+ * 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 SERIAL_IF_H_INCLUDED
+#define SERIAL_IF_H_INCLUDED
+
+#include "conf_atpl230.h"
+#include "conf_phy.h"
+
+/* @cond 0 */
+/**INDENT-OFF**/
+#ifdef __cplusplus
+extern "C" {
+#endif
+/**INDENT-ON**/
+/* @endcond */
+
+/**
+ * \ingroup phy_plc_group
+ * \defgroup serial_plc_group PLC PHY Serial Interface
+ *
+ * This module provides configuration and utils to serialize the PLC PHY layer.
+ *
+ * @{
+ */
+
+/* \name Masks to enable the serial interface and/or the sniffer */
+/* @{ */
+#define IFACE_SERIAL_ENABLE 0x1
+#define IFACE_SNIFFER_ENABLE 0x2
+/* @} */
+
+/* \name Task priorities and stack definitions */
+/* @{ */
+#define TASK_SERIAL_IF_GET_TX_RESULT_PRIO (tskIDLE_PRIORITY + 1)
+#define TASK_SERIAL_IF_GET_RX_PRIO (tskIDLE_PRIORITY + 1)
+#define TASK_SERIAL_IF_GET_TX_RESULT_STACK (configMINIMAL_STACK_SIZE * 1)
+#define TASK_SERIAL_IF_GET_RX_STACK (configMINIMAL_STACK_SIZE * 1)
+/* @} */
+
+/* \name Serial interface commands identifiers */
+/* @{ */
+#define SERIAL_IF_PHY_COMMAND_GET_CFG 0 /* Get reception configuration query */
+#define SERIAL_IF_PHY_COMMAND_GET_CFG_RSP 1 /* Get reception configuration response */
+#define SERIAL_IF_PHY_COMMAND_SET_CFG 2 /* Set reception configuration command */
+#define SERIAL_IF_PHY_COMMAND_SET_CFG_RSP 3 /* Set reception configuration response */
+#define SERIAL_IF_PHY_COMMAND_CMD_CFG 4 /* Get reception configuration query */
+#define SERIAL_IF_PHY_COMMAND_CMD_CFG_RSP 5 /* Get reception configuration response */
+#define SERIAL_IF_PHY_COMMAND_SEND_MSG 6 /* Send message data */
+#define SERIAL_IF_PHY_COMMAND_SEND_MSG_RSP 7 /* Send message data response */
+#define SERIAL_IF_PHY_COMMAND_RECEIVE_MSG 8 /* Receive message data */
+#define SERIAL_IF_PHY_COMMAND_NOISE_REQ 9 /* Set noise capture mode */
+#define SERIAL_IF_PHY_COMMAND_NOISE_RSP 10 /* Get noise capture */
+#define SERIAL_IF_PHY_COMMAND_GET_CFG_LIST 11 /* Get parameter list */
+#define SERIAL_IF_PHY_COMMAND_GET_CFG_LIST_RSP 12 /* Parameter list response */
+#define SERIAL_IF_PHY_COMMAND_RESET_PHY_LAYER 13 /* Reset phy layer */
+/* @} */
+
+/* \name Message Structure to communicate with USI layer */
+/* @{ */
+typedef struct {
+ uint8_t uc_protocol_type; /* Protocol Type */
+ uint8_t *ptr_buf; /* Pointer to data buffer */
+ uint16_t us_len; /* Length of data */
+} x_usi_serial_cmd_params;
+/* @} */
+
+/* \name PHY serial interface */
+/* @{ */
+void serial_if_init(void);
+uint8_t serial_if_api_parser(uint8_t *puc_rx_msg, uint16_t us_len);
+void serial_if_check_tx_result(void);
+void serial_if_check_rx_msg(void);
+
+/* @} */
+
+/* @} */
+
+/* @cond 0 */
+/**INDENT-OFF**/
+#ifdef __cplusplus
+}
+#endif
+/**INDENT-ON**/
+/* @endcond */
+
+#endif /* SERIAL_IF_H_INCLUDED */
diff --git a/thirdparty/prime/phy/atpl230/addons/sniffer_if/sniffer_if.c b/thirdparty/prime/phy/atpl230/addons/sniffer_if/sniffer_if.c
new file mode 100644
index 00000000..8fe49a1b
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/addons/sniffer_if/sniffer_if.c
@@ -0,0 +1,345 @@
+/**
+ * \file
+ *
+ * \brief ATPL230 Sniffer Interface for Physical layer
+ *
+ * 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
+ *
+ */
+
+/* System includes */
+#include <stdio.h>
+#include "string.h"
+
+/* ASF */
+#include "asf.h"
+
+/* Board config */
+#include "conf_board.h"
+#include "board.h"
+#if BOARD == ATPL230AMB
+#include "led.h"
+#define BSP_LED_SUPPORT
+#elif BOARD == SAM4CP16BMB
+#include "led.h"
+#define BSP_LED_SUPPORT
+#endif
+
+/* Phy includes */
+#include "atpl230.h"
+#include "conf_atpl230.h"
+#include "conf_phy.h"
+
+/* Sniffer interface */
+#include "sniffer_if.h"
+
+/* @cond 0 */
+/**INDENT-OFF**/
+#ifdef __cplusplus
+extern "C" {
+#endif
+/**INDENT-ON**/
+/* @endcond */
+
+/**
+ * \weakgroup sniffer_plc_group
+ * @{
+ */
+
+/* Default empty USI interface*/
+usi_status_t Dummy_sniffer_send_cmd(void *msg);
+
+#ifdef __GNUC__
+usi_status_t usi_send_cmd(void *msg) __attribute__ ((weak, alias("Dummy_sniffer_send_cmd")));
+
+#endif
+
+#ifdef __ICCARM__
+#pragma weak usi_send_cmd=Dummy_sniffer_send_cmd
+#endif
+
+/* \name Data structure to communicate with USI layer */
+/* @{ */
+static x_usi_sniffer_cmd_params x_phy_sniffer_msg;
+/* @} */
+
+#ifdef BSP_LED_SUPPORT
+/* \name Led indicator */
+/* @{ */
+static uint8_t uc_sniffer_led_enable;
+/* @} */
+#endif
+
+/* \name Data buffers
+ * \note In noise mode: num symbols in rx noise mode is 8 and 97 bytes/symbol,
+ * so 8 * 97 = 776 bytes. In addition to header size in worst case
+ * Headers us_len = 2 * PHY_DMA_OFFSET = 2 * 16 = 32. Total size is 776 + 32 =
+ * 808 bytes */
+/* @{ */
+static uint8_t uc_sniffer_data_buf[800]; /* Receive working buffer */
+static uint8_t uc_sniffer_rsp_buf[800]; /* Response working buffer */
+/* @} */
+
+/**
+ * \internal
+ * \brief Task to manage the serialization of the reception message through USI.
+ *
+ */
+void sniffer_if_process(void)
+{
+ xPhyMsgRx_t x_read_msg;
+ uint16_t us_sniffer_response_len;
+ uint8_t uc_channel, uc_symbols, uc_mac_en, uc_snr, uc_quality;
+ uint32_t ul_timeIni, ul_timeEnd, ul_len;
+ uint8_t uc_sna[6];
+
+ /* initialize read msg structure */
+ memset(&x_read_msg, 0, sizeof(xPhyMsgRx_t));
+ /* set pointer to reception data buffer */
+ x_read_msg.data_buf = uc_sniffer_data_buf;
+
+ /* block until get phy queue result */
+ phy_rx_frame_cb(&x_read_msg);
+
+ /* build response */
+ if (x_read_msg.data_len) {
+ /* Update SNA for CRC calculations (only in BCN msg) */
+ /* check if header type is beacon */
+ if (x_read_msg.header_type == 0x2) {
+ /* Update SNA for CRC calculations */
+ if (x_read_msg.mode == MODE_TYPE_A) {
+ memcpy(uc_sna, x_read_msg.data_buf + 6, 6);
+ } else if (x_read_msg.mode == MODE_TYPE_B) {
+ memcpy(uc_sna, x_read_msg.data_buf + 7, 6);
+ } else if (x_read_msg.mode == MODE_TYPE_BC) {
+ memcpy(uc_sna, x_read_msg.data_buf + 7, 6);
+ }
+
+ /* update SNA configuration */
+ phy_set_cfg_param(REG_ATPL230_SNA0, uc_sna, sizeof(uc_sna));
+ }
+
+#ifdef BSP_LED_SUPPORT
+ /* Toogle rx led */
+ if (uc_sniffer_led_enable) {
+ LED_Toggle(LED0);
+ }
+#endif
+ us_sniffer_response_len = 0;
+
+ if (x_read_msg.mode == MODE_TYPE_A) {
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = SNIFFER_IF_PHY_MESSAGE_PRIME_1_3;
+ } else if (x_read_msg.mode == MODE_TYPE_B) {
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = SNIFFER_IF_PHY_MESSAGE_PRIME_PLUS;
+ } else if (x_read_msg.mode == MODE_TYPE_BC) {
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = SNIFFER_IF_PHY_MESSAGE_PRIME_PLUS;
+ } else {
+ x_read_msg.data_len = 0;
+ return;
+ }
+
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = SNIFFER_VERSION;
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = SNIFFER_ATPL230;
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = x_read_msg.scheme;
+
+ phy_get_cfg_param(PHY_ID_RX_PAYLOAD_LEN_SYM, &uc_symbols, 1);
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = uc_symbols;
+
+ /* get PHY params needed by the sniffer */
+ phy_get_cfg_param(PHY_ID_CFG_TXRX_CHANNEL, &uc_channel, 1);
+
+ uc_snr = (x_read_msg.cinr_avg >> 2) + 3;
+ uc_quality = ((x_read_msg.cinr_avg >> 2) / 3) + 1;
+ if (uc_quality > 7) {
+ uc_quality = 7;
+ }
+
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = uc_quality;
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = uc_snr;
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = uc_channel;
+ /* padding (11 bytes) */
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = 0;
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = 0;
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = 0;
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = 0;
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = 0;
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = 0;
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = 0;
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = 0;
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = 0;
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = 0;
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = 0;
+
+ phy_get_cfg_param(REG_ATPL230_TXRXBUF_RECTIME1_RX0 + (x_read_msg.uc_buff_id * 4), &ul_timeEnd, 4);
+
+ /* Get length in microsec. */
+ if (x_read_msg.mode == MODE_TYPE_A) {
+ ul_len = TIME_PRIME_1_3_PREAMBLE_US + TIME_PRIME_1_3_HEADER_US + (uc_symbols * TIME_OFDM_SYMBOL_US);
+ } else if (x_read_msg.mode == MODE_TYPE_B) {
+ ul_len = TIME_PRIME_PLUS_PREAMBLE_US + TIME_PRIME_PLUS_HEADER_US + ((x_read_msg.scheme > 6 ? uc_symbols * 4 : uc_symbols) * TIME_OFDM_SYMBOL_US);
+ } else if (x_read_msg.mode == MODE_TYPE_BC) {
+ ul_len = TIME_PRIME_1_3_PREAMBLE_US + TIME_PRIME_1_3_HEADER_US + TIME_PRIME_PLUS_PREAMBLE_US + TIME_PRIME_PLUS_HEADER_US +
+ ((x_read_msg.scheme > 6 ? uc_symbols * 4 : uc_symbols) * TIME_OFDM_SYMBOL_US);
+ } else {
+ ul_len = 0;
+ }
+
+ ul_timeIni = (ul_timeEnd - TIME_IN_TICS(ul_len));
+
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = (ul_timeIni >> 24);
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = (ul_timeIni >> 16) & 0xFF;
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = (ul_timeIni >> 8) & 0xFF;
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = ul_timeIni & 0xFF;
+
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = (ul_timeEnd >> 24);
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = (ul_timeEnd >> 16) & 0xFF;
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = (ul_timeEnd >> 8) & 0xFF;
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = ul_timeEnd & 0xFF;
+
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = 0;
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = x_read_msg.rssi_avg;
+
+ uc_mac_en = phy_get_mac_en();
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = uc_mac_en;
+
+ /* Compute length with CRC, */
+ ul_len = x_read_msg.data_len;
+
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = (uint8_t)(ul_len >> 8);
+ uc_sniffer_rsp_buf[us_sniffer_response_len++] = (uint8_t)(ul_len);
+
+ memcpy(&uc_sniffer_rsp_buf[us_sniffer_response_len], x_read_msg.data_buf, ul_len);
+ us_sniffer_response_len += ul_len;
+
+ x_phy_sniffer_msg.ptr_buf = uc_sniffer_rsp_buf;
+ x_phy_sniffer_msg.us_len = us_sniffer_response_len;
+ usi_send_cmd(&x_phy_sniffer_msg);
+ }
+}
+
+/**
+ * \brief Received message
+ *
+ * \param puc_rx_msg Pointer to the received data
+ * \param us_len Data length of the received data
+ *
+ * \retval true if there is no error
+ * \retval false if length is invalid or sniffer command is wrong
+ */
+uint8_t serial_if_sniffer_api_parser(uint8_t *puc_rx_msg, uint16_t us_len)
+{
+ uint8_t uc_sniffer_if_cmd;
+ uint8_t uc_data;
+
+ /* Protection for invalid length */
+ if (!us_len) {
+ return true;
+ }
+
+ /* Process received message */
+ uc_sniffer_if_cmd = puc_rx_msg[0];
+ uc_data = puc_rx_msg[1];
+
+ switch (uc_sniffer_if_cmd) {
+ /* GET command */
+ case SNIFFER_IF_PHY_COMMAND_MAC_CRC:
+ if (uc_data == 1) {
+ phy_mac_crc_enable();
+ } else {
+ phy_mac_crc_disable();
+ }
+
+ break;
+
+ case SNIFFER_IF_PHY_COMMAND_SET_CHANNEL:
+ phy_set_cfg_param(PHY_ID_CFG_TXRX_CHANNEL, (void *)&uc_data, 1);
+ break;
+
+ case SNIFFER_IF_PHY_COMMAND_ENABLE_PRIME_PLUS_ROBUST:
+ case SNIFFER_IF_PHY_COMMAND_MESSAGE:
+ /* NOT IMPLEMENTED */
+ break;
+
+ default:
+ return false;
+ }
+ return true;
+}
+
+/**
+ * \brief Initialize sniffer interface.
+ *
+ * \param uc_enable_led Enable led
+ */
+void sniffer_if_init(uint8_t uc_enable_led)
+{
+ /* default SNA */
+ uint8_t uc_sna[6] = {0x00, 0x80, 0xE1, 0x00, 0x00, 0x6F};
+ uint8_t uc_rx_qr_enabled = 0x01;
+
+ x_phy_sniffer_msg.uc_protocol_type = 0x13;
+
+#ifdef BSP_LED_SUPPORT
+ uc_sniffer_led_enable = uc_enable_led;
+#else
+ UNUSED(uc_enable_led);
+#endif
+
+ phy_mac_crc_disable();
+ phy_set_cfg_param(REG_ATPL230_SNA0, uc_sna, sizeof(uc_sna));
+ phy_set_cfg_param(PHY_ID_RX_QR_MODE_ID, &uc_rx_qr_enabled, 1);
+}
+
+/**
+ * \brief Default serial interface for unused USI.
+ */
+usi_status_t Dummy_sniffer_send_cmd(void *msg)
+{
+ UNUSED(msg);
+
+ return USI_STATUS_PROTOCOL_NOT_FOUND;
+}
+
+/* @} */
+
+/* @cond 0 */
+/**INDENT-OFF**/
+#ifdef __cplusplus
+}
+#endif
+/**INDENT-ON**/
+/* @endcond */
diff --git a/thirdparty/prime/phy/atpl230/addons/sniffer_if/sniffer_if.h b/thirdparty/prime/phy/atpl230/addons/sniffer_if/sniffer_if.h
new file mode 100644
index 00000000..e56c0513
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/addons/sniffer_if/sniffer_if.h
@@ -0,0 +1,128 @@
+/**
+ * \file
+ *
+ * \brief ATPL230 Sniffer Interface for Physical layer
+ *
+ * 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 SNIFFER_IF_H_INCLUDED
+#define SNIFFER_IF_H_INCLUDED
+
+#include "conf_atpl230.h"
+#include "conf_phy.h"
+
+/* @cond 0 */
+/**INDENT-OFF**/
+#ifdef __cplusplus
+extern "C" {
+#endif
+/**INDENT-ON**/
+/* @endcond */
+
+/**
+ * \ingroup phy_plc_group
+ * \defgroup sniffer_plc_group PLC PHY Sniffer
+ *
+ * This module provides configuration and utils for the sniffer in the PLC PHY
+ *layer.
+ *
+ * @{
+ */
+
+/* \name Task priorities and stack definitions */
+/* @{ */
+#define TASK_SNIFFER_IF_GET_RX_PRIO (tskIDLE_PRIORITY + 1)
+#define TASK_SNIFFER_IF_GET_RX_STACK (configMINIMAL_STACK_SIZE * 1)
+/* @} */
+
+/* \name SNIFFER version */
+/* @{ */
+#define SNIFFER_ATPL230 0x01
+#define SNIFFER_VERSION 0x14
+/* @} */
+
+/* \name PRIME Time definitions */
+/* @{ */
+#define TIME_PRIME_1_3_PREAMBLE_US 2048L
+#define TIME_PRIME_1_3_HEADER_US 4480L
+#define TIME_OFDM_SYMBOL_US 2240L
+#define TIME_PRIME_PLUS_PREAMBLE_US (TIME_PRIME_1_3_PREAMBLE_US * 4)
+#define TIME_PRIME_PLUS_HEADER_US (TIME_OFDM_SYMBOL_US * 4)
+
+#define TIME_IN_TICS(x) (x / 10)
+/* @} */
+
+/* \name Sniffer interface commands identifiers */
+/* @{ */
+#define SNIFFER_IF_PHY_COMMAND_MAC_CRC 1 /* ENABLE MAC on the ATPL230 */
+#define SNIFFER_IF_PHY_COMMAND_SET_CHANNEL 2 /* SET PLC channel (1 = CENELEC- A) */
+#define SNIFFER_IF_PHY_COMMAND_ENABLE_PRIME_PLUS_ROBUST 3 /* Enable robust modes of PRIME */
+#define SNIFFER_IF_PHY_COMMAND_MESSAGE 4 /* Inject message in PLC */
+#define SNIFFER_IF_PHY_MESSAGE_PRIME_1_3 0x20 /* PRIME_1_3 pdu received */
+#define SNIFFER_IF_PHY_MESSAGE_PRIME_PLUS 0x21 /* PRIME_PLUS pdu received */
+/* @} */
+
+/* \name Message Structure to communicate with USI layer */
+/* @{ */
+typedef struct {
+ uint8_t uc_protocol_type; /* Protocol Type */
+ uint8_t *ptr_buf; /* Pointer to data buffer */
+ uint16_t us_len; /* Length of data */
+} x_usi_sniffer_cmd_params;
+/* @} */
+
+/* \name PHY sniffer interface */
+/* @{ */
+void sniffer_if_init(uint8_t uc_enable_led);
+uint8_t serial_if_sniffer_api_parser(uint8_t *puc_rx_msg, uint16_t us_len);
+void sniffer_if_process(void);
+
+/* @} */
+
+/* @} */
+
+/* @cond 0 */
+/**INDENT-OFF**/
+#ifdef __cplusplus
+}
+#endif
+/**INDENT-ON**/
+/* @endcond */
+
+#endif /* SNIFFER_IF_H_INCLUDED */
diff --git a/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/phy_sniffer_tool.c b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/phy_sniffer_tool.c
new file mode 100644
index 00000000..826a1d9a
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/phy_sniffer_tool.c
@@ -0,0 +1,233 @@
+/**
+ * \file
+ *
+ * \brief ATMEL PLC Phy Sniffer Example
+ *
+ * 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 PLC Phy Sniffer Example
+ *
+ * \section Purpose
+ *
+ * The Phy Sniffer example uses the Phy layer to monitor data traffic and then
+ * sends it via serial communications to the ATPL Multiprotocol Sniffer Tool.
+ *
+ * \section Requirements
+ *
+ * This package should be used with any PLC board on which there is PLC
+ * hardware dedicated.
+ *
+ * \section Description
+ *
+ * This application will configure the PRIME PHY and its serial interface to
+ * communicate with ATMEL ATPL Multiprotocol Sniffer Tool.
+ *
+ * \section Usage
+ *
+ * The tool is ready to monitor data traffic.
+ *
+ */
+
+/* Atmel boards includes. */
+#include "board.h"
+
+/* Atmel library includes. */
+#include "asf.h"
+
+/* Function declarations */
+static void prvSetupHardware(void);
+void initTimer1ms(void);
+
+#define COUNT_MS_SWAP_LED 500
+
+static uint32_t ul_count_ms = COUNT_MS_SWAP_LED;
+static bool b_led_swap = false;
+
+#define ID_TC_1MS ID_TC3
+#define TC_1MS TC1
+#define TC_1MS_CHN 0
+#define TC_1MS_IRQn TC3_IRQn
+#define TC_1MS_Handler TC3_Handler
+
+#define STRING_EOL "\r"
+#define STRING_HEADER "-- ATMEL PLC Phy Tester Tool Application --\r\n" \
+ "-- "BOARD_NAME " --\r\n" \
+ "-- Compiled: "__DATE__ " "__TIME__ " --"STRING_EOL
+
+/** @brief Interrupt handler for Timer 3
+ *
+ * Handler for Timer 3 */
+void TC_1MS_Handler(void)
+{
+ volatile uint32_t ul_dummy;
+ /* Clear status bit to acknowledge interrupt */
+ ul_dummy = tc_get_status(TC_1MS, TC_1MS_CHN);
+ /* Avoid compiler warning */
+ UNUSED(ul_dummy);
+
+ /* update count ms */
+ if (!ul_count_ms--) {
+ ul_count_ms = COUNT_MS_SWAP_LED;
+ b_led_swap = true;
+ }
+}
+
+/** @brief Init Timer interrupt (1ms)
+ *
+ * Initialize 1mSec timer 3 interrupt */
+void initTimer1ms(void)
+{
+ uint32_t ul_div, ul_tcclks;
+
+ /* Configure PMC */
+ pmc_enable_periph_clk(ID_TC_1MS);
+
+ /* MCK = 120000000 -> tcclks = 2 : TCLK3 = MCK/32 = 3750000 = 0.266us ->
+ * ul_div = 1ms/0.2666us = 3750 */
+ ul_tcclks = 2;
+ ul_div = 3750;
+ tc_init(TC_1MS, TC_1MS_CHN, ul_tcclks | TC_CMR_CPCTRG);
+
+ tc_write_rc(TC_1MS, TC_1MS_CHN, ul_div);
+
+ /* Configure and enable interrupt on RC compare */
+ NVIC_SetPriority((IRQn_Type)ID_TC_1MS, 0);
+ NVIC_EnableIRQ((IRQn_Type)ID_TC_1MS);
+ tc_enable_interrupt(TC_1MS, TC_1MS_CHN, TC_IER_CPCS);
+
+ /** Start the timer. TC1, chanel 0 = TC3 */
+ tc_start(TC_1MS, TC_1MS_CHN);
+}
+
+/**
+ * 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 )
+{
+#ifdef CONF_BOARD_LCD_EN
+ status_code_t status;
+#endif
+
+ /* count ms to blink led */
+ ul_count_ms = 500;
+
+ /* Prepare the hardware */
+ prvSetupHardware();
+
+ /* UART debug */
+ configure_dbg_console();
+ puts(STRING_HEADER);
+
+#ifdef CONF_BOARD_LCD_EN
+ /* 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_USB);
+ c42364a_show_text((const uint8_t *)"PHYSNF");
+#endif
+
+ /* Init process timers */
+ initTimer1ms();
+
+ /* Init Phy Layer */
+ phy_init(SNIFFER_IF_ENABLE);
+
+ /* Init Usi Layer */
+ usi_init();
+
+ while (1) {
+ /* blink led 0 */
+ if (b_led_swap) {
+ b_led_swap = false;
+#if (BOARD == SAM4CMP_DB || BOARD == SAM4CMS_DB)
+ LED_Toggle(LED4);
+#else
+ LED_Toggle(LED0);
+#endif
+ }
+
+ /* updWatchDog (); */
+
+ /* sniffer serialization */
+ sniffer_if_process();
+
+ /* USI */
+ usi_process();
+ }
+}
+
+/**
+ * \brief Configure the hardware.
+ */
+static void prvSetupHardware(void)
+{
+ /* 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();
+}
diff --git a/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_board.h b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_board.h
new file mode 100644
index 00000000..faecd715
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/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/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_buart_if.h b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_buart_if.h
new file mode 100644
index 00000000..1feb8924
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_buart_if.h
@@ -0,0 +1,63 @@
+/**
+ * \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
+
+/** Configuration Size Buffers */
+#define RX_UART_BUF0_SIZE 1024
+#define TX_UART_BUF0_SIZE 1024
+
+#define RX_UART_BUF1_SIZE 1024
+#define TX_UART_BUF1_SIZE 1024
+
+#endif /* CONF_BUART_IF_H_INCLUDED */
diff --git a/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_busart_if.h b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_busart_if.h
new file mode 100644
index 00000000..8933a3f9
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_busart_if.h
@@ -0,0 +1,63 @@
+/**
+ * \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
+
+/** Configuration Size Buffers */
+#define RX_USART_BUF0_SIZE 1024
+#define TX_USART_BUF0_SIZE 1024
+
+#define RX_USART_BUF1_SIZE 1024
+#define TX_USART_BUF1_SIZE 1024
+
+#endif /* CONF_BUSART_IF_H_INCLUDED */
diff --git a/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_clock.h b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_clock.h
new file mode 100644
index 00000000..bd03dc41
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/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/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_phy.h b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_phy.h
new file mode 100644
index 00000000..7a292363
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/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/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_pplc_if.h b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_pplc_if.h
new file mode 100644
index 00000000..fd07b94f
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_pplc_if.h
@@ -0,0 +1,95 @@
+/**
+ * \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, PIOA, ID_PIOA, PIO_INPUT, \
+ PIO_DEBOUNCE | PIO_IT_FALL_EDGE}
+#define PPLC_INT_MASK PIO_PA12
+#define PPLC_INT_PIO PIOA
+#define PPLC_INT_ID ID_PIOA
+#define PPLC_INT_TYPE PIO_INPUT
+#define PPLC_INT_ATTR (PIO_DEBOUNCE | PIO_IT_FALL_EDGE)
+#define PPLC_INT_IRQn PIOA_IRQn
+
+/* Asynchronous PPLC Reset pin definition */
+//#define PPLC_ARST_GPIO (PIO_PB0_IDX)
+//#define PPLC_ARST_ACTIVE_LEVEL IOPORT_PIN_LEVEL_LOW
+//#define PPLC_ARST_INACTIVE_LEVEL IOPORT_PIN_LEVEL_HIGH
+
+/* Wrapper macros to ensure common naming across all boards */
+//#define PPLC_ARST {PIO_PB0, PIOB, ID_PIOB, PIO_OUTPUT_1, PIO_DEFAULT}
+//#define PPLC_ARST_MASK PIO_PB0
+//#define PPLC_ARST_PIO PIOB
+//#define PPLC_ARST_ID ID_PIOB
+//#define PPLC_ARST_TYPE PIO_OUTPUT_1
+//#define PPLC_ARST_ATTR PIO_DEFAULT
+
+/* Synchronous PPLC Reset pin definition */
+//#define PPLC_SRST_GPIO (PIO_PA25_IDX)
+//#define PPLC_SRST_ACTIVE_LEVEL IOPORT_PIN_LEVEL_LOW
+//#define PPLC_SRST_INACTIVE_LEVEL IOPORT_PIN_LEVEL_HIGH
+
+/* Wrapper macros to ensure common naming across all boards */
+//#define PPLC_SRST {PIO_PA25, PIOA, ID_PIOA, PIO_OUTPUT_1, PIO_DEFAULT}
+//#define PPLC_SRST_MASK PIO_PA25
+//#define PPLC_SRST_PIO PIOA
+//#define PPLC_SRST_ID ID_PIOA
+//#define PPLC_SRST_TYPE PIO_OUTPUT_1
+//#define PPLC_SRST_ATTR PIO_DEFAULT
+
+#endif /* CONF_PPLC_IF_H_INCLUDE */
diff --git a/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_uart_serial.h b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_uart_serial.h
new file mode 100644
index 00000000..2425a7b6
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_uart_serial.h
@@ -0,0 +1,56 @@
+/**
+ * \file
+ *
+ * \brief Serial USART 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
+#define CONF_UART_SERIAL_H
+
+/** UART Interface */
+#define CONF_UART CONSOLE_UART
+/** UART Interface */
+#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/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_usi.h b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_usi.h
new file mode 100644
index 00000000..6a6b1d14
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/conf_usi.h
@@ -0,0 +1,58 @@
+/**
+ * \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 1
+#define USE_PROTOCOL_SNIF_PRIME_PORT 0
+
+#endif /* CONF_USI_H_INCLUDED */
diff --git a/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/doxygen/doxyfile.doxygen b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/doxygen/doxyfile.doxygen
new file mode 100644
index 00000000..4407d180
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/doxygen/doxyfile.doxygen
@@ -0,0 +1,1645 @@
+# Doxyfile 1.7.1
+
+# This file describes the settings to be used by the documentation system
+# doxygen (www.doxygen.org) for a project
+#
+# All text after a hash (#) is considered a comment and will be ignored
+# The format is:
+# TAG = value [value, ...]
+# For lists items can also be appended using:
+# TAG += value [value, ...]
+# Values that contain spaces should be placed between quotes (" ")
+
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+
+# This tag specifies the encoding used for all characters in the config file
+# that follow. The default is UTF-8 which is also the encoding used for all
+# text before the first occurrence of this tag. Doxygen uses libiconv (or the
+# iconv built into libc) for the transcoding. See
+# http://www.gnu.org/software/libiconv for the list of possible encodings.
+
+DOXYFILE_ENCODING = UTF-8
+
+# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
+# by quotes) that should identify the project.
+
+PROJECT_NAME = "PRIME Phy Sniffer Example on SAM4C-EK"
+
+# The PROJECT_NUMBER tag can be used to enter a project or revision number.
+# This could be handy for archiving the generated documentation or
+# if some version control system is used.
+
+PROJECT_NUMBER =
+
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
+# base path where the generated documentation will be put.
+# If a relative path is entered, it will be relative to the location
+# where doxygen was started. If left blank the current directory will be used.
+
+OUTPUT_DIRECTORY = .
+
+# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create
+# 4096 sub-directories (in 2 levels) under the output directory of each output
+# format and will distribute the generated files over these directories.
+# Enabling this option can be useful when feeding doxygen a huge amount of
+# source files, where putting all generated files in the same directory would
+# otherwise cause performance problems for the file system.
+
+CREATE_SUBDIRS = NO
+
+# The OUTPUT_LANGUAGE tag is used to specify the language in which all
+# documentation generated by doxygen is written. Doxygen will use this
+# information to generate all constant output in the proper language.
+# The default language is English, other supported languages are:
+# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional,
+# Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German,
+# Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English
+# messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian,
+# Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrilic, Slovak,
+# Slovene, Spanish, Swedish, Ukrainian, and Vietnamese.
+
+OUTPUT_LANGUAGE = English
+
+# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
+# include brief member descriptions after the members that are listed in
+# the file and class documentation (similar to JavaDoc).
+# Set to NO to disable this.
+
+BRIEF_MEMBER_DESC = YES
+
+# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
+# the brief description of a member or function before the detailed description.
+# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
+# brief descriptions will be completely suppressed.
+
+REPEAT_BRIEF = YES
+
+# This tag implements a quasi-intelligent brief description abbreviator
+# that is used to form the text in various listings. Each string
+# in this list, if found as the leading text of the brief description, will be
+# stripped from the text and the result after processing the whole list, is
+# used as the annotated text. Otherwise, the brief description is used as-is.
+# If left blank, the following values are used ("$name" is automatically
+# replaced with the name of the entity): "The $name class" "The $name widget"
+# "The $name file" "is" "provides" "specifies" "contains"
+# "represents" "a" "an" "the"
+
+ABBREVIATE_BRIEF =
+
+# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
+# Doxygen will generate a detailed section even if there is only a brief
+# description.
+
+ALWAYS_DETAILED_SEC = NO
+
+# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
+# inherited members of a class in the documentation of that class as if those
+# members were ordinary class members. Constructors, destructors and assignment
+# operators of the base classes will not be shown.
+
+INLINE_INHERITED_MEMB = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
+# path before files name in the file list and in the header files. If set
+# to NO the shortest path that makes the file name unique will be used.
+
+FULL_PATH_NAMES = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
+# can be used to strip a user-defined part of the path. Stripping is
+# only done if one of the specified strings matches the left-hand part of
+# the path. The tag can be used to show relative paths in the file list.
+# If left blank the directory from which doxygen is run is used as the
+# path to strip.
+
+STRIP_FROM_PATH =
+
+# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of
+# the path mentioned in the documentation of a class, which tells
+# the reader which header file to include in order to use a class.
+# If left blank only the name of the header file containing the class
+# definition is used. Otherwise one should specify the include paths that
+# are normally passed to the compiler using the -I flag.
+
+STRIP_FROM_INC_PATH =
+
+# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
+# (but less readable) file names. This can be useful is your file systems
+# doesn't support long names like on DOS, Mac, or CD-ROM.
+
+SHORT_NAMES = NO
+
+# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
+# will interpret the first line (until the first dot) of a JavaDoc-style
+# comment as the brief description. If set to NO, the JavaDoc
+# comments will behave just like regular Qt-style comments
+# (thus requiring an explicit @brief command for a brief description.)
+
+JAVADOC_AUTOBRIEF = YES
+
+# If the QT_AUTOBRIEF tag is set to YES then Doxygen will
+# interpret the first line (until the first dot) of a Qt-style
+# comment as the brief description. If set to NO, the comments
+# will behave just like regular Qt-style comments (thus requiring
+# an explicit \brief command for a brief description.)
+
+QT_AUTOBRIEF = NO
+
+# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
+# treat a multi-line C++ special comment block (i.e. a block of //! or ///
+# comments) as a brief description. This used to be the default behaviour.
+# The new default is to treat a multi-line C++ comment block as a detailed
+# description. Set this tag to YES if you prefer the old behaviour instead.
+
+MULTILINE_CPP_IS_BRIEF = NO
+
+# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
+# member inherits the documentation from any documented member that it
+# re-implements.
+
+INHERIT_DOCS = YES
+
+# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce
+# a new page for each member. If set to NO, the documentation of a member will
+# be part of the file/class/namespace that contains it.
+
+SEPARATE_MEMBER_PAGES = NO
+
+# The TAB_SIZE tag can be used to set the number of spaces in a tab.
+# Doxygen uses this value to replace tabs by spaces in code fragments.
+
+TAB_SIZE = 4
+
+# This tag can be used to specify a number of aliases that acts
+# as commands in the documentation. An alias has the form "name=value".
+# For example adding "sideeffect=\par Side Effects:\n" will allow you to
+# put the command \sideeffect (or @sideeffect) in the documentation, which
+# will result in a user-defined paragraph with heading "Side Effects:".
+# You can put \n's in the value part of an alias to insert newlines.
+
+ALIASES += asf_license_start=" "
+ALIASES += asf_license_stop=" "
+
+# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C
+# sources only. Doxygen will then generate output that is more tailored for C.
+# For instance, some of the names that are used will be different. The list
+# of all members will be omitted, etc.
+
+OPTIMIZE_OUTPUT_FOR_C = YES
+
+# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java
+# sources only. Doxygen will then generate output that is more tailored for
+# Java. For instance, namespaces will be presented as packages, qualified
+# scopes will look different, etc.
+
+OPTIMIZE_OUTPUT_JAVA = NO
+
+# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran
+# sources only. Doxygen will then generate output that is more tailored for
+# Fortran.
+
+OPTIMIZE_FOR_FORTRAN = NO
+
+# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL
+# sources. Doxygen will then generate output that is tailored for
+# VHDL.
+
+OPTIMIZE_OUTPUT_VHDL = NO
+
+# Doxygen selects the parser to use depending on the extension of the files it
+# parses. With this tag you can assign which parser to use for a given extension.
+# Doxygen has a built-in mapping, but you can override or extend it using this
+# tag. The format is ext=language, where ext is a file extension, and language
+# is one of the parsers supported by doxygen: IDL, Java, Javascript, CSharp, C,
+# C++, D, PHP, Objective-C, Python, Fortran, VHDL, C, C++. For instance to make
+# doxygen treat .inc files as Fortran files (default is PHP), and .f files as C
+# (default is Fortran), use: inc=Fortran f=C. Note that for custom extensions
+# you also need to set FILE_PATTERNS otherwise the files are not read by doxygen.
+
+EXTENSION_MAPPING =
+
+# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
+# to include (a tag file for) the STL sources as input, then you should
+# set this tag to YES in order to let doxygen match functions declarations and
+# definitions whose arguments contain STL classes (e.g. func(std::string); v.s.
+# func(std::string) {}). This also make the inheritance and collaboration
+# diagrams that involve STL classes more complete and accurate.
+
+BUILTIN_STL_SUPPORT = NO
+
+# If you use Microsoft's C++/CLI language, you should set this option to YES to
+# enable parsing support.
+
+CPP_CLI_SUPPORT = NO
+
+# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only.
+# Doxygen will parse them like normal C++ but will assume all classes use public
+# instead of private inheritance when no explicit protection keyword is present.
+
+SIP_SUPPORT = NO
+
+# For Microsoft's IDL there are propget and propput attributes to indicate getter
+# and setter methods for a property. Setting this option to YES (the default)
+# will make doxygen to replace the get and set methods by a property in the
+# documentation. This will only work if the methods are indeed getting or
+# setting a simple type. If this is not the case, or you want to show the
+# methods anyway, you should set this option to NO.
+
+IDL_PROPERTY_SUPPORT = YES
+
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
+# tag is set to YES, then doxygen will reuse the documentation of the first
+# member in the group (if any) for the other members of the group. By default
+# all members of a group must be documented explicitly.
+
+DISTRIBUTE_GROUP_DOC = NO
+
+# Set the SUBGROUPING tag to YES (the default) to allow class member groups of
+# the same type (for instance a group of public functions) to be put as a
+# subgroup of that type (e.g. under the Public Functions section). Set it to
+# NO to prevent subgrouping. Alternatively, this can be done per class using
+# the \nosubgrouping command.
+
+SUBGROUPING = YES
+
+# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum
+# is documented as struct, union, or enum with the name of the typedef. So
+# typedef struct TypeS {} TypeT, will appear in the documentation as a struct
+# with name TypeT. When disabled the typedef will appear as a member of a file,
+# namespace, or class. And the struct will be named TypeS. This can typically
+# be useful for C code in case the coding convention dictates that all compound
+# types are typedef'ed and only the typedef is referenced, never the tag name.
+
+TYPEDEF_HIDES_STRUCT = NO
+
+# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to
+# determine which symbols to keep in memory and which to flush to disk.
+# When the cache is full, less often used symbols will be written to disk.
+# For small to medium size projects (<1000 input files) the default value is
+# probably good enough. For larger projects a too small cache size can cause
+# doxygen to be busy swapping symbols to and from disk most of the time
+# causing a significant performance penality.
+# If the system has enough physical memory increasing the cache will improve the
+# performance by keeping more symbols in memory. Note that the value works on
+# a logarithmic scale so increasing the size by one will rougly double the
+# memory usage. The cache size is given by this formula:
+# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0,
+# corresponding to a cache size of 2^16 = 65536 symbols
+
+SYMBOL_CACHE_SIZE = 0
+
+#---------------------------------------------------------------------------
+# Build related configuration options
+#---------------------------------------------------------------------------
+
+# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
+# documentation are documented, even if no documentation was available.
+# Private class members and static file members will be hidden unless
+# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
+
+EXTRACT_ALL = YES
+
+# If the EXTRACT_PRIVATE tag is set to YES all private members of a class
+# will be included in the documentation.
+
+EXTRACT_PRIVATE = NO
+
+# If the EXTRACT_STATIC tag is set to YES all static members of a file
+# will be included in the documentation.
+
+EXTRACT_STATIC = YES
+
+# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
+# defined locally in source files will be included in the documentation.
+# If set to NO only classes defined in header files are included.
+
+EXTRACT_LOCAL_CLASSES = YES
+
+# This flag is only useful for Objective-C code. When set to YES local
+# methods, which are defined in the implementation section but not in
+# the interface are included in the documentation.
+# If set to NO (the default) only methods in the interface are included.
+
+EXTRACT_LOCAL_METHODS = NO
+
+# If this flag is set to YES, the members of anonymous namespaces will be
+# extracted and appear in the documentation as a namespace called
+# 'anonymous_namespace{file}', where file will be replaced with the base
+# name of the file that contains the anonymous namespace. By default
+# anonymous namespace are hidden.
+
+EXTRACT_ANON_NSPACES = NO
+
+# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
+# undocumented members of documented classes, files or namespaces.
+# If set to NO (the default) these members will be included in the
+# various overviews, but no documentation section is generated.
+# This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_MEMBERS = NO
+
+# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
+# undocumented classes that are normally visible in the class hierarchy.
+# If set to NO (the default) these classes will be included in the various
+# overviews. This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_CLASSES = NO
+
+# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
+# friend (class|struct|union) declarations.
+# If set to NO (the default) these declarations will be included in the
+# documentation.
+
+HIDE_FRIEND_COMPOUNDS = NO
+
+# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
+# documentation blocks found inside the body of a function.
+# If set to NO (the default) these blocks will be appended to the
+# function's detailed documentation block.
+
+HIDE_IN_BODY_DOCS = NO
+
+# The INTERNAL_DOCS tag determines if documentation
+# that is typed after a \internal command is included. If the tag is set
+# to NO (the default) then the documentation will be excluded.
+# Set it to YES to include the internal documentation.
+
+INTERNAL_DOCS = YES
+
+# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
+# file names in lower-case letters. If set to YES upper-case letters are also
+# allowed. This is useful if you have classes or files whose names only differ
+# in case and if your file system supports case sensitive file names. Windows
+# and Mac users are advised to set this option to NO.
+
+CASE_SENSE_NAMES = NO
+
+# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
+# will show members with their full class and namespace scopes in the
+# documentation. If set to YES the scope will be hidden.
+
+HIDE_SCOPE_NAMES = NO
+
+# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
+# will put a list of the files that are included by a file in the documentation
+# of that file.
+
+SHOW_INCLUDE_FILES = YES
+
+# If the FORCE_LOCAL_INCLUDES tag is set to YES then Doxygen
+# will list include files with double quotes in the documentation
+# rather than with sharp brackets.
+
+FORCE_LOCAL_INCLUDES = NO
+
+# If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
+# is inserted in the documentation for inline members.
+
+INLINE_INFO = YES
+
+# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen
+# will sort the (detailed) documentation of file and class members
+# alphabetically by member name. If set to NO the members will appear in
+# declaration order.
+
+SORT_MEMBER_DOCS = YES
+
+# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the
+# brief documentation of file, namespace and class members alphabetically
+# by member name. If set to NO (the default) the members will appear in
+# declaration order.
+
+SORT_BRIEF_DOCS = YES
+
+# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen
+# will sort the (brief and detailed) documentation of class members so that
+# constructors and destructors are listed first. If set to NO (the default)
+# the constructors will appear in the respective orders defined by
+# SORT_MEMBER_DOCS and SORT_BRIEF_DOCS.
+# This tag will be ignored for brief docs if SORT_BRIEF_DOCS is set to NO
+# and ignored for detailed docs if SORT_MEMBER_DOCS is set to NO.
+
+SORT_MEMBERS_CTORS_1ST = NO
+
+# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the
+# hierarchy of group names into alphabetical order. If set to NO (the default)
+# the group names will appear in their defined order.
+
+SORT_GROUP_NAMES = NO
+
+# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be
+# sorted by fully-qualified names, including namespaces. If set to
+# NO (the default), the class list will be sorted only by class name,
+# not including the namespace part.
+# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
+# Note: This option applies only to the class list, not to the
+# alphabetical list.
+
+SORT_BY_SCOPE_NAME = NO
+
+# The GENERATE_TODOLIST tag can be used to enable (YES) or
+# disable (NO) the todo list. This list is created by putting \todo
+# commands in the documentation.
+
+GENERATE_TODOLIST = YES
+
+# The GENERATE_TESTLIST tag can be used to enable (YES) or
+# disable (NO) the test list. This list is created by putting \test
+# commands in the documentation.
+
+GENERATE_TESTLIST = YES
+
+# The GENERATE_BUGLIST tag can be used to enable (YES) or
+# disable (NO) the bug list. This list is created by putting \bug
+# commands in the documentation.
+
+GENERATE_BUGLIST = YES
+
+# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
+# disable (NO) the deprecated list. This list is created by putting
+# \deprecated commands in the documentation.
+
+GENERATE_DEPRECATEDLIST= YES
+
+# The ENABLED_SECTIONS tag can be used to enable conditional
+# documentation sections, marked by \if sectionname ... \endif.
+
+ENABLED_SECTIONS =
+
+# The MAX_INITIALIZER_LINES tag determines the maximum number of lines
+# the initial value of a variable or define consists of for it to appear in
+# the documentation. If the initializer consists of more lines than specified
+# here it will be hidden. Use a value of 0 to hide initializers completely.
+# The appearance of the initializer of individual variables and defines in the
+# documentation can be controlled using \showinitializer or \hideinitializer
+# command in the documentation regardless of this setting.
+
+MAX_INITIALIZER_LINES = 30
+
+# Set the SHOW_USED_FILES tag to NO to disable the list of files generated
+# at the bottom of the documentation of classes and structs. If set to YES the
+# list will mention the files that were used to generate the documentation.
+
+SHOW_USED_FILES = NO
+
+# If the sources in your project are distributed over multiple directories
+# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy
+# in the documentation. The default is NO.
+
+SHOW_DIRECTORIES = NO
+
+# Set the SHOW_FILES tag to NO to disable the generation of the Files page.
+# This will remove the Files entry from the Quick Index and from the
+# Folder Tree View (if specified). The default is YES.
+
+SHOW_FILES = YES
+
+# Set the SHOW_NAMESPACES tag to NO to disable the generation of the
+# Namespaces page.
+# This will remove the Namespaces entry from the Quick Index
+# and from the Folder Tree View (if specified). The default is YES.
+
+SHOW_NAMESPACES = YES
+
+# The FILE_VERSION_FILTER tag can be used to specify a program or script that
+# doxygen should invoke to get the current version for each file (typically from
+# the version control system). Doxygen will invoke the program by executing (via
+# popen()) the command <command> <input-file>, where <command> is the value of
+# the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file
+# provided by doxygen. Whatever the program writes to standard output
+# is used as the file version. See the manual for examples.
+
+FILE_VERSION_FILTER =
+
+# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
+# by doxygen. The layout file controls the global structure of the generated
+# output files in an output format independent way. The create the layout file
+# that represents doxygen's defaults, run doxygen with the -l option.
+# You can optionally specify a file name after the option, if omitted
+# DoxygenLayout.xml will be used as the name of the layout file.
+
+LAYOUT_FILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+
+# The QUIET tag can be used to turn on/off the messages that are generated
+# by doxygen. Possible values are YES and NO. If left blank NO is used.
+
+QUIET = YES
+
+# The WARNINGS tag can be used to turn on/off the warning messages that are
+# generated by doxygen. Possible values are YES and NO. If left blank
+# NO is used.
+
+WARNINGS = YES
+
+# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings
+# for undocumented members. If EXTRACT_ALL is set to YES then this flag will
+# automatically be disabled.
+
+WARN_IF_UNDOCUMENTED = YES
+
+# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
+# potential errors in the documentation, such as not documenting some
+# parameters in a documented function, or documenting parameters that
+# don't exist or using markup commands wrongly.
+
+WARN_IF_DOC_ERROR = YES
+
+# This WARN_NO_PARAMDOC option can be abled to get warnings for
+# functions that are documented, but have no documentation for their parameters
+# or return value. If set to NO (the default) doxygen will only warn about
+# wrong or incomplete parameter documentation, but not about the absence of
+# documentation.
+
+WARN_NO_PARAMDOC = NO
+
+# The WARN_FORMAT tag determines the format of the warning messages that
+# doxygen can produce. The string should contain the $file, $line, and $text
+# tags, which will be replaced by the file and line number from which the
+# warning originated and the warning text. Optionally the format may contain
+# $version, which will be replaced by the version of the file (if it could
+# be obtained via FILE_VERSION_FILTER)
+
+WARN_FORMAT = "[WARNING]$file:$line: $text"
+
+# The WARN_LOGFILE tag can be used to specify a file to which warning
+# and error messages should be written. If left blank the output is written
+# to stderr.
+
+WARN_LOGFILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to the input files
+#---------------------------------------------------------------------------
+
+# The INPUT tag can be used to specify the files and/or directories that contain
+# documented source files. You may enter file names like "myfile.cpp" or
+# directories like "/usr/src/myproject". Separate the files or directories
+# with spaces.
+
+INPUT = ../../phy_sniffer_tool.c ../../../../../../../../common/services/clock/sam4c/sysclk.c ../../../../../../../../sam/drivers/pmc/pmc.c ../../../../../../../../sam/drivers/pmc/sleep.c ../../../../../../../../common/utils/interrupt/interrupt_sam_nvic.c ../../../../../../../../sam/utils/cmsis/sam4c/source/templates/system_sam4c.c ../../../../../../../../common/services/serial/usart_serial.c ../../../../../../../../sam/drivers/uart/uart.c ../../../../../../../../sam/drivers/usart/usart.c ../../../../../../../../common/utils/stdio/read.c ../../../../../../../../common/utils/stdio/write.c ../../../../../../../../sam/drivers/supc/supc.c ../../../../addons/sniffer_if/sniffer_if.c ../../../../coupling_config/conf_atpl230.c ../../../../source/atpl230.c ../../../../source/atpl230_iir_filter.c ../../../../../../../../sam/services/plc/pplc_if/atpl230/pplc_if.c ../../../../../../../../sam/drivers/spi/spi.c ../../../../../../../../sam/drivers/pdc/pdc.c ../../../../../../../../sam/drivers/pio/pio.c ../../../../../../../../sam/drivers/pio/pio_handler.c ../../../../../../../../sam/services/plc/usi/usi.c ../../../../../../../../sam/services/plc/pcrc/pcrc.c ../../../../../../../../sam/services/plc/buart_if/buart_if.c ../../../../../../../../sam/drivers/tc/tc.c ../../../../../../../../sam/services/plc/busart_if/busart_if.c ../../../../../../../../sam/boards/sam4c_ek/init.c ../conf_board.h ../conf_buart_if.h ../conf_busart_if.h ../conf_clock.h ../conf_phy.h ../conf_pplc_if.h ../conf_uart_serial.h ../conf_usi.h ../../../../../../../../common/utils/stdio/stdio_serial/stdio_serial.h ../../../../../../../../common/services/clock/genclk.h ../../../../../../../../common/services/clock/osc.h ../../../../../../../../common/services/clock/pll.h ../../../../../../../../common/services/clock/sam4c/genclk.h ../../../../../../../../common/services/clock/sam4c/osc.h ../../../../../../../../common/services/clock/sam4c/pll.h ../../../../../../../../common/services/clock/sam4c/sysclk.h ../../../../../../../../common/services/clock/sysclk.h ../../../../../../../../sam/drivers/pmc/pmc.h ../../../../../../../../sam/drivers/pmc/sleep.h ../../../../../../../../sam/utils/compiler.h ../../../../../../../../sam/utils/header_files/io.h ../../../../../../../../sam/utils/status_codes.h ../../../../../../../../sam/utils/preprocessor/mrepeat.h ../../../../../../../../sam/utils/preprocessor/preprocessor.h ../../../../../../../../sam/utils/preprocessor/stringz.h ../../../../../../../../sam/utils/preprocessor/tpaste.h ../../../../../../../../common/utils/interrupt.h ../../../../../../../../common/utils/interrupt/interrupt_sam_nvic.h ../../../../../../../../common/utils/parts.h ../../../../../../../../sam/utils/cmsis/sam4c/include/sam4c.h ../../../../../../../../sam/utils/cmsis/sam4c/include/sam4c16c_0.h ../../../../../../../../sam/utils/cmsis/sam4c/include/sam4c16c_1.h ../../../../../../../../sam/utils/cmsis/sam4c/include/sam4c32c_0.h ../../../../../../../../sam/utils/cmsis/sam4c/include/sam4c32c_1.h ../../../../../../../../sam/utils/cmsis/sam4c/include/sam4c32e_0.h ../../../../../../../../sam/utils/cmsis/sam4c/include/sam4c32e_1.h ../../../../../../../../sam/utils/cmsis/sam4c/include/sam4c4c_0.h ../../../../../../../../sam/utils/cmsis/sam4c/include/sam4c4c_1.h ../../../../../../../../sam/utils/cmsis/sam4c/include/sam4c8c_0.h ../../../../../../../../sam/utils/cmsis/sam4c/include/sam4c8c_1.h ../../../../../../../../sam/utils/cmsis/sam4c/include/system_sam4c.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_adc.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_aes.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_chipid.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_cmcc.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_efc.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_gpbr.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_icm.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_ipc.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_matrix.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_pdc.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_pio.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_pmc.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_pwm.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_rstc.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_rswdt.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_rtc.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_rtt.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_slcdc.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_smc.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_spi.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_supc.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_tc.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_trng.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_twi.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_uart.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_uotghs.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_usart.h ../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_wdt.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_adc.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_aes.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_chipid.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_cmcc0.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_cmcc1.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_efc.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_efc0.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_efc1.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_gpbr.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_icm.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_ipc0.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_ipc1.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_matrix0.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_matrix1.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_pioa.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_piob.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_pioc.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_piod.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_pmc.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_pwm.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_rstc.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_rswdt.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_rtc.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_rtt.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_slcdc.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_smc0.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_smc1.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_spi0.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_spi1.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_supc.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_tc0.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_tc1.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_trng.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_twi0.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_twi1.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_uart0.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_uart1.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_uotghs.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_usart0.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_usart1.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_usart2.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_usart3.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_usart4.h ../../../../../../../../sam/utils/cmsis/sam4c/include/instance/instance_wdt.h ../../../../../../../../sam/utils/cmsis/sam4c/include/pio/pio_sam4c16c.h ../../../../../../../../sam/utils/cmsis/sam4c/include/pio/pio_sam4c32c.h ../../../../../../../../sam/utils/cmsis/sam4c/include/pio/pio_sam4c32e.h ../../../../../../../../sam/utils/cmsis/sam4c/include/pio/pio_sam4c4c.h ../../../../../../../../sam/utils/cmsis/sam4c/include/pio/pio_sam4c8c.h ../../../../../../../../common/services/serial/sam_uart/uart_serial.h ../../../../../../../../common/services/serial/serial.h ../../../../../../../../sam/drivers/uart/uart.h ../../../../../../../../sam/drivers/usart/usart.h ../../../../../../../../sam/drivers/supc/supc.h ../../../../addons/sniffer_if/sniffer_if.h ../../../../coupling_config/conf_atpl230.h ../../../../include/atpl230.h ../../../../include/atpl230_iir_filter.h ../../../../include/atpl230_reg.h ../../../../include/atpl230_version.h ../../../../../../../../sam/services/plc/pplc_if/atpl230/pplc_if.h ../../../../../../../../common/services/ioport/ioport.h ../../../../../../../../common/services/ioport/sam/ioport_pio.h ../../../../../../../../sam/drivers/spi/spi.h ../../../../../../../../sam/drivers/pdc/pdc.h ../../../../../../../../sam/drivers/pdc/pdc_uart_example/pdc_uart_example.h ../../../../../../../../sam/drivers/pio/pio.h ../../../../../../../../sam/drivers/pio/pio_handler.h ../../../../../../../../sam/services/plc/usi/usi.h ../../../../../../../../sam/services/plc/pcrc/pcrc.h ../../../../../../../../sam/services/plc/buart_if/buart_if.h ../../../../../../../../sam/drivers/tc/tc.h ../../../../../../../../sam/services/plc/busart_if/busart_if.h ../../../../../../../../sam/boards/sam4c_ek/sam4c_ek.h ../../../../../../../../common/boards/board.h ../../../../../../../../sam/boards/sam4c_ek/led.h
+
+# This tag can be used to specify the character encoding of the source files
+# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is
+# also the default input encoding. Doxygen uses libiconv (or the iconv built
+# into libc) for the transcoding. See http://www.gnu.org/software/libiconv for
+# the list of possible encodings.
+
+INPUT_ENCODING = UTF-8
+
+# If the value of the INPUT tag contains directories, you can use the
+# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank the following patterns are tested:
+# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx
+# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90
+
+FILE_PATTERNS = *.c \
+ *.h \
+ *.s \
+ *.S
+
+# The RECURSIVE tag can be used to turn specify whether or not subdirectories
+# should be searched for input files as well. Possible values are YES and NO.
+# If left blank NO is used.
+
+RECURSIVE = NO
+
+# The EXCLUDE tag can be used to specify files and/or directories that should
+# excluded from the INPUT source files. This way you can easily exclude a
+# subdirectory from a directory tree whose root is specified with the INPUT tag.
+
+EXCLUDE =
+
+# The EXCLUDE_SYMLINKS tag can be used select whether or not files or
+# directories that are symbolic links (a Unix filesystem feature) are excluded
+# from the input.
+
+EXCLUDE_SYMLINKS = NO
+
+# If the value of the INPUT tag contains directories, you can use the
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+# certain files from those directories. Note that the wildcards are matched
+# against the file with absolute path, so to exclude all test directories
+# for example use the pattern */test/*
+
+EXCLUDE_PATTERNS =
+
+# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
+# (namespaces, classes, functions, etc.) that should be excluded from the
+# output. The symbol name can be a fully qualified name, a word, or if the
+# wildcard * is used, a substring. Examples: ANamespace, AClass,
+# AClass::ANamespace, ANamespace::*Test
+
+EXCLUDE_SYMBOLS =
+
+# The EXAMPLE_PATH tag can be used to specify one or more files or
+# directories that contain example code fragments that are included (see
+# the \include command).
+
+EXAMPLE_PATH = ./ ../../../../../../../../sam/drivers/pdc/pdc_uart_example
+
+# If the value of the EXAMPLE_PATH tag contains directories, you can use the
+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank all files are included.
+
+EXAMPLE_PATTERNS =
+
+# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
+# searched for input files to be used with the \include or \dontinclude
+# commands irrespective of the value of the RECURSIVE tag.
+# Possible values are YES and NO. If left blank NO is used.
+
+EXAMPLE_RECURSIVE = NO
+
+# The IMAGE_PATH tag can be used to specify one or more files or
+# directories that contain image that are included in the documentation (see
+# the \image command).
+
+IMAGE_PATH =
+
+# The INPUT_FILTER tag can be used to specify a program that doxygen should
+# invoke to filter for each input file. Doxygen will invoke the filter program
+# by executing (via popen()) the command <filter> <input-file>, where <filter>
+# is the value of the INPUT_FILTER tag, and <input-file> is the name of an
+# input file. Doxygen will then use the output that the filter program writes
+# to standard output.
+# If FILTER_PATTERNS is specified, this tag will be
+# ignored.
+
+INPUT_FILTER =
+
+# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
+# basis.
+# Doxygen will compare the file name with each pattern and apply the
+# filter if there is a match.
+# The filters are a list of the form:
+# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further
+# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER
+# is applied to all files.
+
+FILTER_PATTERNS =
+
+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
+# INPUT_FILTER) will be used to filter the input files when producing source
+# files to browse (i.e. when SOURCE_BROWSER is set to YES).
+
+FILTER_SOURCE_FILES = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to source browsing
+#---------------------------------------------------------------------------
+
+# If the SOURCE_BROWSER tag is set to YES then a list of source files will
+# be generated. Documented entities will be cross-referenced with these sources.
+# Note: To get rid of all source code in the generated output, make sure also
+# VERBATIM_HEADERS is set to NO.
+
+SOURCE_BROWSER = YES
+
+# Setting the INLINE_SOURCES tag to YES will include the body
+# of functions and classes directly in the documentation.
+
+INLINE_SOURCES = YES
+
+# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
+# doxygen to hide any special comment blocks from generated source code
+# fragments. Normal C and C++ comments will always remain visible.
+
+STRIP_CODE_COMMENTS = YES
+
+# If the REFERENCED_BY_RELATION tag is set to YES
+# then for each documented function all documented
+# functions referencing it will be listed.
+
+REFERENCED_BY_RELATION = YES
+
+# If the REFERENCES_RELATION tag is set to YES
+# then for each documented function all documented entities
+# called/used by that function will be listed.
+
+REFERENCES_RELATION = YES
+
+# If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
+# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
+# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will
+# link to the source code.
+# Otherwise they will link to the documentation.
+
+REFERENCES_LINK_SOURCE = YES
+
+# If the USE_HTAGS tag is set to YES then the references to source code
+# will point to the HTML generated by the htags(1) tool instead of doxygen
+# built-in source browser. The htags tool is part of GNU's global source
+# tagging system (see http://www.gnu.org/software/global/global.html). You
+# will need version 4.8.6 or higher.
+
+USE_HTAGS = NO
+
+# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
+# will generate a verbatim copy of the header file for each class for
+# which an include is specified. Set to NO to disable this.
+
+VERBATIM_HEADERS = YES
+
+#---------------------------------------------------------------------------
+# configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+
+# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index
+# of all compounds will be generated. Enable this if the project
+# contains a lot of classes, structs, unions or interfaces.
+
+ALPHABETICAL_INDEX = NO
+
+# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
+# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
+# in which this list will be split (can be a number in the range [1..20])
+
+COLS_IN_ALPHA_INDEX = 5
+
+# In case all classes in a project start with a common prefix, all
+# classes will be put under the same header in the alphabetical index.
+# The IGNORE_PREFIX tag can be used to specify one or more prefixes that
+# should be ignored while generating the index headers.
+
+IGNORE_PREFIX =
+
+#---------------------------------------------------------------------------
+# configuration options related to the HTML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_HTML tag is set to YES (the default) Doxygen will
+# generate HTML output.
+
+GENERATE_HTML = YES
+
+# The HTML_OUTPUT tag is used to specify where the HTML docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `html' will be used as the default path.
+
+HTML_OUTPUT = html
+
+# The HTML_FILE_EXTENSION tag can be used to specify the file extension for
+# each generated HTML page (for example: .htm,.php,.asp). If it is left blank
+# doxygen will generate files with .html extension.
+
+HTML_FILE_EXTENSION = .html
+
+# The HTML_HEADER tag can be used to specify a personal HTML header for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard header.
+
+HTML_HEADER =
+
+# The HTML_FOOTER tag can be used to specify a personal HTML footer for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard footer.
+
+HTML_FOOTER =
+
+# The HTML_STYLESHEET tag can be used to specify a user-defined cascading
+# style sheet that is used by each HTML page. It can be used to
+# fine-tune the look of the HTML output. If the tag is left blank doxygen
+# will generate a default style sheet. Note that doxygen will try to copy
+# the style sheet file to the HTML output directory, so don't put your own
+# stylesheet in the HTML output directory as well, or it will be erased!
+
+HTML_STYLESHEET =
+
+# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output.
+# Doxygen will adjust the colors in the stylesheet and background images
+# according to this color. Hue is specified as an angle on a colorwheel,
+# see http://en.wikipedia.org/wiki/Hue for more information.
+# For instance the value 0 represents red, 60 is yellow, 120 is green,
+# 180 is cyan, 240 is blue, 300 purple, and 360 is red again.
+# The allowed range is 0 to 359.
+
+HTML_COLORSTYLE_HUE = 220
+
+# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of
+# the colors in the HTML output. For a value of 0 the output will use
+# grayscales only. A value of 255 will produce the most vivid colors.
+
+HTML_COLORSTYLE_SAT = 100
+
+# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to
+# the luminance component of the colors in the HTML output. Values below
+# 100 gradually make the output lighter, whereas values above 100 make
+# the output darker. The value divided by 100 is the actual gamma applied,
+# so 80 represents a gamma of 0.8, The value 220 represents a gamma of 2.2,
+# and 100 does not change the gamma.
+
+HTML_COLORSTYLE_GAMMA = 80
+
+# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
+# page will contain the date and time when the page was generated. Setting
+# this to NO can help when comparing the output of multiple runs.
+
+HTML_TIMESTAMP = YES
+
+# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
+# files or namespaces will be aligned in HTML using tables. If set to
+# NO a bullet list will be used.
+
+HTML_ALIGN_MEMBERS = YES
+
+# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
+# documentation will contain sections that can be hidden and shown after the
+# page has loaded. For this to work a browser that supports
+# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox
+# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari).
+
+HTML_DYNAMIC_SECTIONS = NO
+
+# If the GENERATE_DOCSET tag is set to YES, additional index files
+# will be generated that can be used as input for Apple's Xcode 3
+# integrated development environment, introduced with OSX 10.5 (Leopard).
+# To create a documentation set, doxygen will generate a Makefile in the
+# HTML output directory. Running make will produce the docset in that
+# directory and running "make install" will install the docset in
+# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find
+# it at startup.
+# See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html
+# for more information.
+
+GENERATE_DOCSET = NO
+
+# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the
+# feed. A documentation feed provides an umbrella under which multiple
+# documentation sets from a single provider (such as a company or product suite)
+# can be grouped.
+
+DOCSET_FEEDNAME = "Doxygen generated docs"
+
+# When GENERATE_DOCSET tag is set to YES, this tag specifies a string that
+# should uniquely identify the documentation set bundle. This should be a
+# reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen
+# will append .docset to the name.
+
+DOCSET_BUNDLE_ID = org.doxygen.Project
+
+# When GENERATE_PUBLISHER_ID tag specifies a string that should uniquely identify
+# the documentation publisher. This should be a reverse domain-name style
+# string, e.g. com.mycompany.MyDocSet.documentation.
+
+DOCSET_PUBLISHER_ID = org.doxygen.Publisher
+
+# The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher.
+
+DOCSET_PUBLISHER_NAME = Publisher
+
+# If the GENERATE_HTMLHELP tag is set to YES, additional index files
+# will be generated that can be used as input for tools like the
+# Microsoft HTML help workshop to generate a compiled HTML help file (.chm)
+# of the generated HTML documentation.
+
+GENERATE_HTMLHELP = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
+# be used to specify the file name of the resulting .chm file. You
+# can add a path in front of the file if the result should not be
+# written to the html output directory.
+
+CHM_FILE =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
+# be used to specify the location (absolute path including file name) of
+# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
+# the HTML help compiler on the generated index.hhp.
+
+HHC_LOCATION =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
+# controls if a separate .chi index file is generated (YES) or that
+# it should be included in the master .chm file (NO).
+
+GENERATE_CHI = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING
+# is used to encode HtmlHelp index (hhk), content (hhc) and project file
+# content.
+
+CHM_INDEX_ENCODING =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag
+# controls whether a binary table of contents is generated (YES) or a
+# normal table of contents (NO) in the .chm file.
+
+BINARY_TOC = NO
+
+# The TOC_EXPAND flag can be set to YES to add extra items for group members
+# to the contents of the HTML help documentation and to the tree view.
+
+TOC_EXPAND = NO
+
+# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and
+# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated
+# that can be used as input for Qt's qhelpgenerator to generate a
+# Qt Compressed Help (.qch) of the generated HTML documentation.
+
+GENERATE_QHP = NO
+
+# If the QHG_LOCATION tag is specified, the QCH_FILE tag can
+# be used to specify the file name of the resulting .qch file.
+# The path specified is relative to the HTML output folder.
+
+QCH_FILE =
+
+# The QHP_NAMESPACE tag specifies the namespace to use when generating
+# Qt Help Project output. For more information please see
+# http://doc.trolltech.com/qthelpproject.html#namespace
+
+QHP_NAMESPACE = org.doxygen.Project
+
+# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating
+# Qt Help Project output. For more information please see
+# http://doc.trolltech.com/qthelpproject.html#virtual-folders
+
+QHP_VIRTUAL_FOLDER = doc
+
+# If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to
+# add. For more information please see
+# http://doc.trolltech.com/qthelpproject.html#custom-filters
+
+QHP_CUST_FILTER_NAME =
+
+# The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the
+# custom filter to add. For more information please see
+# <a href="http://doc.trolltech.com/qthelpproject.html#custom-filters">
+# Qt Help Project / Custom Filters</a>.
+
+QHP_CUST_FILTER_ATTRS =
+
+# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
+# project's
+# filter section matches.
+# <a href="http://doc.trolltech.com/qthelpproject.html#filter-attributes">
+# Qt Help Project / Filter Attributes</a>.
+
+QHP_SECT_FILTER_ATTRS =
+
+# If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can
+# be used to specify the location of Qt's qhelpgenerator.
+# If non-empty doxygen will try to run qhelpgenerator on the generated
+# .qhp file.
+
+QHG_LOCATION =
+
+# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files
+# will be generated, which together with the HTML files, form an Eclipse help
+# plugin. To install this plugin and make it available under the help contents
+# menu in Eclipse, the contents of the directory containing the HTML and XML
+# files needs to be copied into the plugins directory of eclipse. The name of
+# the directory within the plugins directory should be the same as
+# the ECLIPSE_DOC_ID value. After copying Eclipse needs to be restarted before
+# the help appears.
+
+GENERATE_ECLIPSEHELP = NO
+
+# A unique identifier for the eclipse help plugin. When installing the plugin
+# the directory name containing the HTML and XML files should also have
+# this name.
+
+ECLIPSE_DOC_ID = org.doxygen.Project
+
+# The DISABLE_INDEX tag can be used to turn on/off the condensed index at
+# top of each HTML page. The value NO (the default) enables the index and
+# the value YES disables it.
+
+DISABLE_INDEX = NO
+
+# This tag can be used to set the number of enum values (range [1..20])
+# that doxygen will group on one line in the generated HTML documentation.
+
+ENUM_VALUES_PER_LINE = 1
+
+# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
+# structure should be generated to display hierarchical information.
+# If the tag value is set to YES, a side panel will be generated
+# containing a tree-like index structure (just like the one that
+# is generated for HTML Help). For this to work a browser that supports
+# JavaScript, DHTML, CSS and frames is required (i.e. any modern browser).
+# Windows users are probably better off using the HTML help feature.
+
+GENERATE_TREEVIEW = NO
+
+# By enabling USE_INLINE_TREES, doxygen will generate the Groups, Directories,
+# and Class Hierarchy pages using a tree view instead of an ordered list.
+
+USE_INLINE_TREES = NO
+
+# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
+# used to set the initial width (in pixels) of the frame in which the tree
+# is shown.
+
+TREEVIEW_WIDTH = 250
+
+# When the EXT_LINKS_IN_WINDOW option is set to YES doxygen will open
+# links to external symbols imported via tag files in a separate window.
+
+EXT_LINKS_IN_WINDOW = NO
+
+# Use this tag to change the font size of Latex formulas included
+# as images in the HTML documentation. The default is 10. Note that
+# when you change the font size after a successful doxygen run you need
+# to manually remove any form_*.png images from the HTML output directory
+# to force them to be regenerated.
+
+FORMULA_FONTSIZE = 10
+
+# Use the FORMULA_TRANPARENT tag to determine whether or not the images
+# generated for formulas are transparent PNGs. Transparent PNGs are
+# not supported properly for IE 6.0, but are supported on all modern browsers.
+# Note that when changing this option you need to delete any form_*.png files
+# in the HTML output before the changes have effect.
+
+FORMULA_TRANSPARENT = YES
+
+# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see
+# http://www.mathjax.org) which uses client side Javascript for the rendering
+# instead of using prerendered bitmaps. Use this if you do not have LaTeX
+# installed or if you want to formulas look prettier in the HTML output. When
+# enabled you may also need to install MathJax separately and configure the path
+# to it using the MATHJAX_RELPATH option.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+USE_MATHJAX = NO
+
+# When the SEARCHENGINE tag is enabled doxygen will generate a search box
+# for the HTML output. The underlying search engine uses javascript
+# and DHTML and should work on any modern browser. Note that when using
+# HTML help (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets
+# (GENERATE_DOCSET) there is already a search function so this one should
+# typically be disabled. For large projects the javascript based search engine
+# can be slow, then enabling SERVER_BASED_SEARCH may provide a better solution.
+
+SEARCHENGINE = YES
+
+# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
+# implemented using a PHP enabled web server instead of at the web client
+# using Javascript. Doxygen will generate the search PHP script and index
+# file to put on the web server. The advantage of the server
+# based approach is that it scales better to large projects and allows
+# full text search. The disadvances is that it is more difficult to setup
+# and does not have live searching capabilities.
+
+SERVER_BASED_SEARCH = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
+# generate Latex output.
+
+GENERATE_LATEX = NO
+
+# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `latex' will be used as the default path.
+
+LATEX_OUTPUT = latex
+
+# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
+# invoked. If left blank `latex' will be used as the default command name.
+# Note that when enabling USE_PDFLATEX this option is only used for
+# generating bitmaps for formulas in the HTML output, but not in the
+# Makefile that is written to the output directory.
+
+LATEX_CMD_NAME = latex
+
+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
+# generate index for LaTeX. If left blank `makeindex' will be used as the
+# default command name.
+
+MAKEINDEX_CMD_NAME = makeindex
+
+# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact
+# LaTeX documents. This may be useful for small projects and may help to
+# save some trees in general.
+
+COMPACT_LATEX = NO
+
+# The PAPER_TYPE tag can be used to set the paper type that is used
+# by the printer. Possible values are: a4, a4wide, letter, legal and
+# executive. If left blank a4wide will be used.
+
+PAPER_TYPE = a4wide
+
+# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
+# packages that should be included in the LaTeX output.
+
+EXTRA_PACKAGES =
+
+# The LATEX_HEADER tag can be used to specify a personal LaTeX header for
+# the generated latex document. The header should contain everything until
+# the first chapter. If it is left blank doxygen will generate a
+# standard header. Notice: only use this tag if you know what you are doing!
+
+LATEX_HEADER =
+
+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
+# is prepared for conversion to pdf (using ps2pdf). The pdf file will
+# contain links (just like the HTML output) instead of page references
+# This makes the output suitable for online browsing using a pdf viewer.
+
+PDF_HYPERLINKS = NO
+
+# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
+# plain latex in the generated Makefile. Set this option to YES to get a
+# higher quality PDF documentation.
+
+USE_PDFLATEX = NO
+
+# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
+# command to the generated LaTeX files. This will instruct LaTeX to keep
+# running if errors occur, instead of asking the user for help.
+# This option is also used when generating formulas in HTML.
+
+LATEX_BATCHMODE = NO
+
+# If LATEX_HIDE_INDICES is set to YES then doxygen will not
+# include the index chapters (such as File Index, Compound Index, etc.)
+# in the output.
+
+LATEX_HIDE_INDICES = NO
+
+# If LATEX_SOURCE_CODE is set to YES then doxygen will include
+# source code with syntax highlighting in the LaTeX output.
+# Note that which sources are shown also depends on other settings
+# such as SOURCE_BROWSER.
+
+LATEX_SOURCE_CODE = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the RTF output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
+# The RTF output is optimized for Word 97 and may not look very pretty with
+# other RTF readers or editors.
+
+GENERATE_RTF = NO
+
+# The RTF_OUTPUT tag is used to specify where the RTF docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `rtf' will be used as the default path.
+
+RTF_OUTPUT = RTF
+
+# If the COMPACT_RTF tag is set to YES Doxygen generates more compact
+# RTF documents. This may be useful for small projects and may help to
+# save some trees in general.
+
+COMPACT_RTF = NO
+
+# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
+# will contain hyperlink fields. The RTF file will
+# contain links (just like the HTML output) instead of page references.
+# This makes the output suitable for online browsing using WORD or other
+# programs which support those fields.
+# Note: wordpad (write) and others do not support links.
+
+RTF_HYPERLINKS = YES
+
+# Load stylesheet definitions from file. Syntax is similar to doxygen's
+# config file, i.e. a series of assignments. You only have to provide
+# replacements, missing definitions are set to their default value.
+
+RTF_STYLESHEET_FILE =
+
+# Set optional variables used in the generation of an rtf document.
+# Syntax is similar to doxygen's config file.
+
+RTF_EXTENSIONS_FILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to the man page output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_MAN tag is set to YES (the default) Doxygen will
+# generate man pages
+
+GENERATE_MAN = NO
+
+# The MAN_OUTPUT tag is used to specify where the man pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `man' will be used as the default path.
+
+MAN_OUTPUT = man
+
+# The MAN_EXTENSION tag determines the extension that is added to
+# the generated man pages (default is the subroutine's section .3)
+
+MAN_EXTENSION = .3
+
+# If the MAN_LINKS tag is set to YES and Doxygen generates man output,
+# then it will generate one additional man file for each entity
+# documented in the real man page(s). These additional files
+# only source the real man page, but without them the man command
+# would be unable to find the correct page. The default is NO.
+
+MAN_LINKS = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the XML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_XML tag is set to YES Doxygen will
+# generate an XML file that captures the structure of
+# the code including all documentation.
+
+GENERATE_XML = NO
+
+# The XML_OUTPUT tag is used to specify where the XML pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `xml' will be used as the default path.
+
+XML_OUTPUT = xml
+
+# The XML_SCHEMA tag can be used to specify an XML schema,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
+XML_SCHEMA =
+
+# The XML_DTD tag can be used to specify an XML DTD,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
+XML_DTD =
+
+# If the XML_PROGRAMLISTING tag is set to YES Doxygen will
+# dump the program listings (including syntax highlighting
+# and cross-referencing information) to the XML output. Note that
+# enabling this will significantly increase the size of the XML output.
+
+XML_PROGRAMLISTING = YES
+
+#---------------------------------------------------------------------------
+# configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
+# generate an AutoGen Definitions (see autogen.sf.net) file
+# that captures the structure of the code including all
+# documentation. Note that this feature is still experimental
+# and incomplete at the moment.
+
+GENERATE_AUTOGEN_DEF = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_PERLMOD tag is set to YES Doxygen will
+# generate a Perl module file that captures the structure of
+# the code including all documentation. Note that this
+# feature is still experimental and incomplete at the
+# moment.
+
+GENERATE_PERLMOD = NO
+
+# If the PERLMOD_LATEX tag is set to YES Doxygen will generate
+# the necessary Makefile rules, Perl scripts and LaTeX code to be able
+# to generate PDF and DVI output from the Perl module output.
+
+PERLMOD_LATEX = NO
+
+# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
+# nicely formatted so it can be parsed by a human reader.
+# This is useful
+# if you want to understand what is going on.
+# On the other hand, if this
+# tag is set to NO the size of the Perl module output will be much smaller
+# and Perl will parse it just the same.
+
+PERLMOD_PRETTY = YES
+
+# The names of the make variables in the generated doxyrules.make file
+# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
+# This is useful so different doxyrules.make files included by the same
+# Makefile don't overwrite each other's variables.
+
+PERLMOD_MAKEVAR_PREFIX =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor
+#---------------------------------------------------------------------------
+
+# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
+# evaluate all C-preprocessor directives found in the sources and include
+# files.
+
+ENABLE_PREPROCESSING = YES
+
+# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
+# names in the source code. If set to NO (the default) only conditional
+# compilation will be performed. Macro expansion can be done in a controlled
+# way by setting EXPAND_ONLY_PREDEF to YES.
+
+MACRO_EXPANSION = YES
+
+# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
+# then the macro expansion is limited to the macros specified with the
+# PREDEFINED and EXPAND_AS_DEFINED tags.
+
+EXPAND_ONLY_PREDEF = YES
+
+# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
+# in the INCLUDE_PATH (see below) will be search if a #include is found.
+
+SEARCH_INCLUDES = YES
+
+# The INCLUDE_PATH tag can be used to specify one or more directories that
+# contain include files that are not input files but should be processed by
+# the preprocessor.
+
+INCLUDE_PATH = .. ../.. ../../../../../../../../common/utils/stdio/stdio_serial ../../../../../../../../common/services/clock ../../../../../../../../sam/drivers/pmc ../../../../../../../../sam/utils ../../../../../../../../sam/utils/header_files ../../../../../../../../sam/utils/preprocessor ../../../../../../../../common/utils ../../../../../../../../sam/utils/cmsis/sam4c/include ../../../../../../../../sam/utils/cmsis/sam4c/source/templates ../../../../../../../../common/services/serial ../../../../../../../../common/services/serial/sam_uart ../../../../../../../../sam/drivers/uart ../../../../../../../../sam/drivers/usart ../../../../../../../../sam/drivers/supc ../../../../addons/sniffer_if ../../../../coupling_config ../../../../include ../../../../../../../../sam/services/plc/pplc_if/atpl230 ../../../../../../../../common/services/ioport ../../../../../../../../sam/drivers/spi ../../../../../../../../sam/drivers/pdc ../../../../../../../../sam/drivers/pdc/pdc_uart_example ../../../../../../../../sam/drivers/pio ../../../../../../../../sam/services/plc/usi ../../../../../../../../sam/services/plc/pcrc ../../../../../../../../sam/services/plc/buart_if ../../../../../../../../sam/drivers/tc ../../../../../../../../sam/services/plc/busart_if ../../../../../../../../sam/boards ../../../../../../../../sam/boards/sam4c_ek ../../../../../../../../common/boards
+
+# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+# patterns (like *.h and *.hpp) to filter out the header-files in the
+# directories. If left blank, the patterns specified with FILE_PATTERNS will
+# be used.
+
+INCLUDE_FILE_PATTERNS =
+
+# The PREDEFINED tag can be used to specify one or more macro names that
+# are defined before the preprocessor is started (similar to the -D option of
+# gcc). The argument of the tag is a list of macros of the form: name
+# or name=definition (no spaces). If the definition and the = are
+# omitted =1 is assumed. To prevent a macro definition from being
+# undefined via #undef or recursively expanded use the := operator
+# instead of the = operator.
+
+PREDEFINED = __DOXYGEN__ __AVR32_ABI_COMPILER__ __attribute__()= __GNUC__=4 ARM_MATH_CM4=true BOARD=SAM4C_EK __SAM4C16C_0__ __SAM4C16C__
+
+# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
+# this tag can be used to specify a list of macro names that should be expanded.
+# The macro definition that is found in the sources will be used.
+# Use the PREDEFINED tag if you want to use a different macro definition.
+
+EXPAND_AS_DEFINED =
+
+# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
+# doxygen's preprocessor will remove all function-like macros that are alone
+# on a line, have an all uppercase name, and do not end with a semicolon. Such
+# function macros are typically used for boiler-plate code, and will confuse
+# the parser if not removed.
+
+SKIP_FUNCTION_MACROS = YES
+
+#---------------------------------------------------------------------------
+# Configuration::additions related to external references
+#---------------------------------------------------------------------------
+
+# The TAGFILES option can be used to specify one or more tagfiles.
+# Optionally an initial location of the external documentation
+# can be added for each tagfile. The format of a tag file without
+# this location is as follows:
+#
+# TAGFILES = file1 file2 ...
+# Adding location for the tag files is done as follows:
+#
+# TAGFILES = file1=loc1 "file2 = loc2" ...
+# where "loc1" and "loc2" can be relative or absolute paths or
+# URLs. If a location is present for each tag, the installdox tool
+# does not have to be run to correct the links.
+# Note that each tag file must have a unique name
+# (where the name does NOT include the path)
+# If a tag file is not located in the directory in which doxygen
+# is run, you must also specify the path to the tagfile here.
+
+TAGFILES =
+
+# When a file name is specified after GENERATE_TAGFILE, doxygen will create
+# a tag file that is based on the input files it reads.
+
+GENERATE_TAGFILE =
+
+# If the ALLEXTERNALS tag is set to YES all external classes will be listed
+# in the class index. If set to NO only the inherited external classes
+# will be listed.
+
+ALLEXTERNALS = NO
+
+# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
+# in the modules index. If set to NO, only the current project's groups will
+# be listed.
+
+EXTERNAL_GROUPS = YES
+
+# The PERL_PATH should be the absolute path and name of the perl script
+# interpreter (i.e. the result of `which perl').
+
+PERL_PATH = /usr/bin/perl
+
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool
+#---------------------------------------------------------------------------
+
+# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
+# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base
+# or super classes. Setting the tag to NO turns the diagrams off. Note that
+# this option is superseded by the HAVE_DOT option below. This is only a
+# fallback. It is recommended to install and use dot, since it yields more
+# powerful graphs.
+
+CLASS_DIAGRAMS = YES
+
+# You can define message sequence charts within doxygen comments using the \msc
+# command. Doxygen will then run the mscgen tool (see
+# http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the
+# documentation. The MSCGEN_PATH tag allows you to specify the directory where
+# the mscgen tool resides. If left empty the tool is assumed to be found in the
+# default search path.
+
+MSCGEN_PATH =
+
+# If set to YES, the inheritance and collaboration graphs will hide
+# inheritance and usage relations if the target is undocumented
+# or is not a class.
+
+HIDE_UNDOC_RELATIONS = YES
+
+# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
+# available from the path. This tool is part of Graphviz, a graph visualization
+# toolkit from AT&T and Lucent Bell Labs. The other options in this section
+# have no effect if this option is set to NO (the default)
+
+HAVE_DOT = YES
+
+# The DOT_NUM_THREADS specifies the number of dot invocations doxygen is
+# allowed to run in parallel. When set to 0 (the default) doxygen will
+# base this on the number of processors available in the system. You can set it
+# explicitly to a value larger than 0 to get control over the balance
+# between CPU load and processing speed.
+
+DOT_NUM_THREADS = 0
+
+# By default doxygen will write a font called FreeSans.ttf to the output
+# directory and reference it in all dot files that doxygen generates. This
+# font does not include all possible unicode characters however, so when you need
+# these (or just want a differently looking font) you can specify the font name
+# using DOT_FONTNAME. You need need to make sure dot is able to find the font,
+# which can be done by putting it in a standard location or by setting the
+# DOTFONTPATH environment variable or by setting DOT_FONTPATH to the directory
+# containing the font.
+
+DOT_FONTNAME = FreeSans
+
+# The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs.
+# The default size is 10pt.
+
+DOT_FONTSIZE = 10
+
+# By default doxygen will tell dot to use the output directory to look for the
+# FreeSans.ttf font (which doxygen will put there itself). If you specify a
+# different font using DOT_FONTNAME you can set the path where dot
+# can find it using this tag.
+
+DOT_FONTPATH =
+
+# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect inheritance relations. Setting this tag to YES will force the
+# the CLASS_DIAGRAMS tag to NO.
+
+CLASS_GRAPH = YES
+
+# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect implementation dependencies (inheritance, containment, and
+# class references variables) of the class with other documented classes.
+
+COLLABORATION_GRAPH = YES
+
+# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for groups, showing the direct groups dependencies
+
+GROUP_GRAPHS = YES
+
+# If the UML_LOOK tag is set to YES doxygen will generate inheritance and
+# collaboration diagrams in a style similar to the OMG's Unified Modeling
+# Language.
+
+UML_LOOK = YES
+
+# If set to YES, the inheritance and collaboration graphs will show the
+# relations between templates and their instances.
+
+TEMPLATE_RELATIONS = YES
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT
+# tags are set to YES then doxygen will generate a graph for each documented
+# file showing the direct and indirect include dependencies of the file with
+# other documented files.
+
+INCLUDE_GRAPH = YES
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
+# HAVE_DOT tags are set to YES then doxygen will generate a graph for each
+# documented header file showing the documented files that directly or
+# indirectly include this file.
+
+INCLUDED_BY_GRAPH = YES
+
+# If the CALL_GRAPH and HAVE_DOT options are set to YES then
+# doxygen will generate a call dependency graph for every global function
+# or class method. Note that enabling this option will significantly increase
+# the time of a run. So in most cases it will be better to enable call graphs
+# for selected functions only using the \callgraph command.
+
+CALL_GRAPH = YES
+
+# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then
+# doxygen will generate a caller dependency graph for every global function
+# or class method. Note that enabling this option will significantly increase
+# the time of a run. So in most cases it will be better to enable caller
+# graphs for selected functions only using the \callergraph command.
+
+CALLER_GRAPH = NO
+
+# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
+# will graphical hierarchy of all classes instead of a textual one.
+
+GRAPHICAL_HIERARCHY = YES
+
+# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES
+# then doxygen will show the dependencies a directory has on other directories
+# in a graphical way. The dependency relations are determined by the #include
+# relations between the files in the directories.
+
+DIRECTORY_GRAPH = YES
+
+# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+# generated by dot. Possible values are png, jpg, or gif
+# If left blank png will be used.
+
+DOT_IMAGE_FORMAT = gif
+
+# The tag DOT_PATH can be used to specify the path where the dot tool can be
+# found. If left blank, it is assumed the dot tool can be found in the path.
+
+DOT_PATH =
+
+# The DOTFILE_DIRS tag can be used to specify one or more directories that
+# contain dot files that are included in the documentation (see the
+# \dotfile command).
+
+DOTFILE_DIRS =
+
+# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of
+# nodes that will be shown in the graph. If the number of nodes in a graph
+# becomes larger than this value, doxygen will truncate the graph, which is
+# visualized by representing a node as a red box. Note that doxygen if the
+# number of direct children of the root node in a graph is already larger than
+# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note
+# that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
+
+DOT_GRAPH_MAX_NODES = 50
+
+# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
+# graphs generated by dot. A depth value of 3 means that only nodes reachable
+# from the root by following a path via at most 3 edges will be shown. Nodes
+# that lay further from the root node will be omitted. Note that setting this
+# option to 1 or 2 may greatly reduce the computation time needed for large
+# code bases. Also note that the size of a graph can be further restricted by
+# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.
+
+MAX_DOT_GRAPH_DEPTH = 0
+
+# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
+# background. This is disabled by default, because dot on Windows does not
+# seem to support this out of the box. Warning: Depending on the platform used,
+# enabling this option may lead to badly anti-aliased labels on the edges of
+# a graph (i.e. they become hard to read).
+
+DOT_TRANSPARENT = NO
+
+# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output
+# files in one run (i.e. multiple -o and -T options on the command line). This
+# makes dot run faster, but since only newer versions of dot (>1.8.10)
+# support this, this feature is disabled by default.
+
+DOT_MULTI_TARGETS = YES
+
+# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
+# generate a legend page explaining the meaning of the various boxes and
+# arrows in the dot generated graphs.
+
+GENERATE_LEGEND = YES
+
+# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
+# remove the intermediate dot files that are used to generate
+# the various graphs.
+
+DOT_CLEANUP = YES
diff --git a/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/gcc/Makefile b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/gcc/Makefile
new file mode 100644
index 00000000..ed8eb761
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/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/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/gcc/asf.h b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/gcc/asf.h
new file mode 100644
index 00000000..44a6e238
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/gcc/asf.h
@@ -0,0 +1,133 @@
+/**
+ * \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: 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 PHY Sniffer Interface Module
+#include <sniffer_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: Part identification macros
+#include <parts.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: SUPC - Supply Controller
+#include <supc.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: pio_handler support enabled
+#include <pio_handler.h>
+
+#endif // ASF_H
diff --git a/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/gcc/config.mk b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/gcc/config.mk
new file mode 100644
index 00000000..548e2c89
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/gcc/config.mk
@@ -0,0 +1,185 @@
+#
+# 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_phy_sniffer_tool_flash.elf
+TARGET_SRAM = apps_phy_sniffer_tool_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/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/supc/supc.c \
+ sam/drivers/tc/tc.c \
+ sam/drivers/uart/uart.c \
+ sam/drivers/usart/usart.c \
+ sam/services/plc/buart_if/buart_if.c \
+ sam/services/plc/busart_if/busart_if.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/prime/phy/atpl230/addons/sniffer_if/sniffer_if.c \
+ thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/phy_sniffer_tool.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/pdc \
+ sam/drivers/pdc/pdc_uart_example \
+ sam/drivers/pio \
+ sam/drivers/pmc \
+ sam/drivers/spi \
+ sam/drivers/supc \
+ sam/drivers/tc \
+ sam/drivers/uart \
+ sam/drivers/usart \
+ sam/services/plc/buart_if \
+ sam/services/plc/busart_if \
+ 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/prime/phy/atpl230/addons/sniffer_if \
+ thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool \
+ thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek \
+ thirdparty/prime/phy/atpl230/coupling_config \
+ thirdparty/prime/phy/atpl230/include \
+ thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/gcc
+
+# Additional search paths for libraries.
+LIB_PATH = \
+ thirdparty/CMSIS/Lib/GCC
+
+# List of libraries to use during linking.
+LIBS = \
+ arm_cortexM4l_math \
+ 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 __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/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/iar/apps_phy_sniffer_tool.eww b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/iar/apps_phy_sniffer_tool.eww
new file mode 100644
index 00000000..d99a7f6b
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/iar/apps_phy_sniffer_tool.eww
@@ -0,0 +1,6 @@
+<workspace>
+ <batchBuild></batchBuild>
+ <project>
+ <path>$WS_DIR$\apps_phy_sniffer_tool_flash.ewp</path>
+ </project>
+</workspace>
diff --git a/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/iar/apps_phy_sniffer_tool_flash.ewd b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/iar/apps_phy_sniffer_tool_flash.ewd
new file mode 100644
index 00000000..ce148ea1
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/iar/apps_phy_sniffer_tool_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/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/iar/apps_phy_sniffer_tool_flash.ewp b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/iar/apps_phy_sniffer_tool_flash.ewp
new file mode 100644
index 00000000..ed71ff39
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/iar/apps_phy_sniffer_tool_flash.ewp
@@ -0,0 +1,2604 @@
+<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>BOARD=SAM4C_EK</state>
+ <state>ARM_MATH_CM4=true</state>
+ <state>__SAM4C16C_0__</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$/../../../../include</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/boards</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/preprocessor</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/pmc</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/usart</state>
+ <state>$PROJ_DIR$/..</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/header_files</state>
+ <state>$PROJ_DIR$/../..</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/services/serial</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/cmsis/sam4c/source/templates</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/boards/sam4c_ek</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/spi</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/supc</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/services/plc/busart_if</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/services/clock</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/boards</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/utils/stdio/stdio_serial</state>
+ <state>$PROJ_DIR$/../../../../addons/sniffer_if</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$/../../../../coupling_config</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$/../../../../../../../../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>BOARD=SAM4C_EK</state>
+ <state>ARM_MATH_CM4=true</state>
+ <state>__SAM4C16C_0__</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$/../../../../include</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/boards</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/preprocessor</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/pmc</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/usart</state>
+ <state>$PROJ_DIR$/..</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/header_files</state>
+ <state>$PROJ_DIR$/../..</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/services/serial</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/cmsis/sam4c/source/templates</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/boards/sam4c_ek</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/spi</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/supc</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/services/plc/busart_if</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/services/clock</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/boards</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/utils/stdio/stdio_serial</state>
+ <state>$PROJ_DIR$/../../../../addons/sniffer_if</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$/../../../../coupling_config</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$/../../../../../../../../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_phy_sniffer_tool_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_phy_sniffer_tool_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>BOARD=SAM4C_EK</state>
+ <state>ARM_MATH_CM4=true</state>
+ <state>__SAM4C16C_0__</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$/../../../../include</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/boards</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/preprocessor</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/pmc</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/usart</state>
+ <state>$PROJ_DIR$/..</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/header_files</state>
+ <state>$PROJ_DIR$/../..</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/services/serial</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/cmsis/sam4c/source/templates</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/boards/sam4c_ek</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/spi</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/supc</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/services/plc/busart_if</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/services/clock</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/boards</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/utils/stdio/stdio_serial</state>
+ <state>$PROJ_DIR$/../../../../addons/sniffer_if</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$/../../../../coupling_config</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$/../../../../../../../../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>BOARD=SAM4C_EK</state>
+ <state>ARM_MATH_CM4=true</state>
+ <state>__SAM4C16C_0__</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$/../../../../include</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/boards</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/preprocessor</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/pmc</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/usart</state>
+ <state>$PROJ_DIR$/..</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/header_files</state>
+ <state>$PROJ_DIR$/../..</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/services/serial</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/cmsis/sam4c/source/templates</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/boards/sam4c_ek</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/spi</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/supc</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/services/plc/busart_if</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/services/clock</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/boards</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/utils/stdio/stdio_serial</state>
+ <state>$PROJ_DIR$/../../../../addons/sniffer_if</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$/../../../../coupling_config</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$/../../../../../../../../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_phy_sniffer_tool_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_phy_sniffer_tool_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>sam</name>
+ <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/sam4c32c_0.h</name>
+ </file>
+ <group>
+ <name>instance</name>
+ <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_ipc1.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_aes.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_pwm.h</name>
+ </file>
+ <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_tc1.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_efc0.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_matrix0.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_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_uart1.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_cmcc0.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_spi0.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_pioa.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_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_twi1.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_rtt.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_chipid.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_usart0.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_slcdc.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_usart2.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_usart4.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_wdt.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_piod.h</name>
+ </file>
+ </group>
+ <group>
+ <name>component</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_gpbr.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_chipid.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_supc.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_pwm.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_icm.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_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_uotghs.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_smc.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_spi.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_rstc.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_pdc.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_aes.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_adc.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_rtt.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../sam/utils/cmsis/sam4c/include/component/component_pmc.h</name>
+ </file>
+ </group>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../sam/utils/cmsis/sam4c/include/sam4c8c_1.h</name>
+ </file>
+ <group>
+ <name>pio</name>
+ <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_sam4c16c.h</name>
+ </file>
+ <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_sam4c8c.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/sam4c.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/sam4c32e_1.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/sam4c32e_0.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/sam4c8c_0.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../sam/utils/cmsis/sam4c/include/system_sam4c.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../sam/utils/cmsis/sam4c/include/sam4c16c_1.h</name>
+ </file>
+ </group>
+ </group>
+ </group>
+ <group>
+ <name>preprocessor</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../sam/utils/preprocessor/preprocessor.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../sam/utils/preprocessor/stringz.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../sam/utils/preprocessor/tpaste.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../sam/utils/preprocessor/mrepeat.h</name>
+ </file>
+ </group>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../sam/utils/compiler.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../sam/utils/status_codes.h</name>
+ </file>
+ <group>
+ <name>header_files</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../sam/utils/header_files/io.h</name>
+ </file>
+ </group>
+ </group>
+ <group>
+ <name>services</name>
+ <group>
+ <name>plc</name>
+ <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>
+ <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>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>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>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>
+ </group>
+ <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>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>pdc</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../sam/drivers/pdc/pdc.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../sam/drivers/pdc/pdc.h</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>
+ </group>
+ <group>
+ <name>pmc</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../sam/drivers/pmc/pmc.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../sam/drivers/pmc/sleep.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>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>supc</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../sam/drivers/supc/supc.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../sam/drivers/supc/supc.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>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>
+ <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>
+ <group>
+ <name>thirdparty</name>
+ <group>
+ <name>prime</name>
+ <group>
+ <name>phy</name>
+ <group>
+ <name>atpl230</name>
+ <group>
+ <name>coupling_config</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../coupling_config/conf_atpl230.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../coupling_config/conf_atpl230.h</name>
+ </file>
+ </group>
+ <group>
+ <name>addons</name>
+ <group>
+ <name>sniffer_if</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../addons/sniffer_if/sniffer_if.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../addons/sniffer_if/sniffer_if.h</name>
+ </file>
+ </group>
+ </group>
+ <group>
+ <name>apps</name>
+ <group>
+ <name>phy_sniffer_tool</name>
+ <file>
+ <name>$PROJ_DIR$/../../phy_sniffer_tool.c</name>
+ </file>
+ <group>
+ <name>sam4c16c_sam4c_ek</name>
+ <file>
+ <name>$PROJ_DIR$/../conf_buart_if.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_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$/../conf_phy.h</name>
+ </file>
+ </group>
+ </group>
+ </group>
+ <group>
+ <name>source</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../source/atpl230_iir_filter.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../source/atpl230.c</name>
+ </file>
+ </group>
+ <group>
+ <name>include</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../include/atpl230_iir_filter.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../include/atpl230.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../include/atpl230_reg.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../include/atpl230_version.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/parts.h</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../common/utils/interrupt.h</name>
+ </file>
+ </group>
+ <group>
+ <name>services</name>
+ <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/pll.h</name>
+ </file>
+ <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>
+ </group>
+ <group>
+ <name>serial</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../common/services/serial/usart_serial.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../common/services/serial/serial.h</name>
+ </file>
+ <group>
+ <name>sam_uart</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../common/services/serial/sam_uart/uart_serial.h</name>
+ </file>
+ </group>
+ </group>
+ <group>
+ <name>ioport</name>
+ <group>
+ <name>sam</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../common/services/ioport/sam/ioport_pio.h</name>
+ </file>
+ </group>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../common/services/ioport/ioport.h</name>
+ </file>
+ </group>
+ </group>
+ <group>
+ <name>boards</name>
+ <file>
+ <name>$PROJ_DIR$/../../../../../../../../common/boards/board.h</name>
+ </file>
+ </group>
+ </group>
+</project>
diff --git a/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/iar/asf.h b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/iar/asf.h
new file mode 100644
index 00000000..44a6e238
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4c16c_sam4c_ek/iar/asf.h
@@ -0,0 +1,133 @@
+/**
+ * \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: 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 PHY Sniffer Interface Module
+#include <sniffer_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: Part identification macros
+#include <parts.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: SUPC - Supply Controller
+#include <supc.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: pio_handler support enabled
+#include <pio_handler.h>
+
+#endif // ASF_H
diff --git a/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_board.h b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_board.h
new file mode 100644
index 00000000..faf700a2
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/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/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_buart_if.h b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_buart_if.h
new file mode 100644
index 00000000..1feb8924
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_buart_if.h
@@ -0,0 +1,63 @@
+/**
+ * \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
+
+/** Configuration Size Buffers */
+#define RX_UART_BUF0_SIZE 1024
+#define TX_UART_BUF0_SIZE 1024
+
+#define RX_UART_BUF1_SIZE 1024
+#define TX_UART_BUF1_SIZE 1024
+
+#endif /* CONF_BUART_IF_H_INCLUDED */
diff --git a/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_busart_if.h b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_busart_if.h
new file mode 100644
index 00000000..8933a3f9
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_busart_if.h
@@ -0,0 +1,63 @@
+/**
+ * \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
+
+/** Configuration Size Buffers */
+#define RX_USART_BUF0_SIZE 1024
+#define TX_USART_BUF0_SIZE 1024
+
+#define RX_USART_BUF1_SIZE 1024
+#define TX_USART_BUF1_SIZE 1024
+
+#endif /* CONF_BUSART_IF_H_INCLUDED */
diff --git a/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_clock.h b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_clock.h
new file mode 100644
index 00000000..d2011fa1
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/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/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_phy.h b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_phy.h
new file mode 100644
index 00000000..7a292363
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/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/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_pplc_if.h b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_pplc_if.h
new file mode 100644
index 00000000..568c1bee
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_pplc_if.h
@@ -0,0 +1,95 @@
+/**
+ * \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
+
+/* Asynchronous PPLC Reset pin definition */
+//#define PPLC_ARST_GPIO (PIO_PB0_IDX)
+//#define PPLC_ARST_ACTIVE_LEVEL IOPORT_PIN_LEVEL_LOW
+//#define PPLC_ARST_INACTIVE_LEVEL IOPORT_PIN_LEVEL_HIGH
+
+/* Wrapper macros to ensure common naming across all boards */
+//#define PPLC_ARST {PIO_PB0, PIOB, ID_PIOB, PIO_OUTPUT_1, PIO_DEFAULT}
+//#define PPLC_ARST_MASK PIO_PB0
+//#define PPLC_ARST_PIO PIOB
+//#define PPLC_ARST_ID ID_PIOB
+//#define PPLC_ARST_TYPE PIO_OUTPUT_1
+//#define PPLC_ARST_ATTR PIO_DEFAULT
+
+/* Synchronous PPLC Reset pin definition */
+//#define PPLC_SRST_GPIO (PIO_PA25_IDX)
+//#define PPLC_SRST_ACTIVE_LEVEL IOPORT_PIN_LEVEL_LOW
+//#define PPLC_SRST_INACTIVE_LEVEL IOPORT_PIN_LEVEL_HIGH
+
+/* Wrapper macros to ensure common naming across all boards */
+//#define PPLC_SRST {PIO_PA25, PIOA, ID_PIOA, PIO_OUTPUT_1, PIO_DEFAULT}
+//#define PPLC_SRST_MASK PIO_PA25
+//#define PPLC_SRST_PIO PIOA
+//#define PPLC_SRST_ID ID_PIOA
+//#define PPLC_SRST_TYPE PIO_OUTPUT_1
+//#define PPLC_SRST_ATTR PIO_DEFAULT
+
+#endif /* CONF_PPLC_IF_H_INCLUDE */
diff --git a/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_uart_serial.h b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_uart_serial.h
new file mode 100644
index 00000000..2425a7b6
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_uart_serial.h
@@ -0,0 +1,56 @@
+/**
+ * \file
+ *
+ * \brief Serial USART 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
+#define CONF_UART_SERIAL_H
+
+/** UART Interface */
+#define CONF_UART CONSOLE_UART
+/** UART Interface */
+#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/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_usi.h b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_usi.h
new file mode 100644
index 00000000..6a6b1d14
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/conf_usi.h
@@ -0,0 +1,58 @@
+/**
+ * \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 1
+#define USE_PROTOCOL_SNIF_PRIME_PORT 0
+
+#endif /* CONF_USI_H_INCLUDED */
diff --git a/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/doxygen/doxyfile.doxygen b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/doxygen/doxyfile.doxygen
new file mode 100644
index 00000000..dd9aef1c
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/doxygen/doxyfile.doxygen
@@ -0,0 +1,1645 @@
+# Doxyfile 1.7.1
+
+# This file describes the settings to be used by the documentation system
+# doxygen (www.doxygen.org) for a project
+#
+# All text after a hash (#) is considered a comment and will be ignored
+# The format is:
+# TAG = value [value, ...]
+# For lists items can also be appended using:
+# TAG += value [value, ...]
+# Values that contain spaces should be placed between quotes (" ")
+
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+
+# This tag specifies the encoding used for all characters in the config file
+# that follow. The default is UTF-8 which is also the encoding used for all
+# text before the first occurrence of this tag. Doxygen uses libiconv (or the
+# iconv built into libc) for the transcoding. See
+# http://www.gnu.org/software/libiconv for the list of possible encodings.
+
+DOXYFILE_ENCODING = UTF-8
+
+# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
+# by quotes) that should identify the project.
+
+PROJECT_NAME = "PRIME Phy Sniffer Example on SAM4CMP-DB"
+
+# The PROJECT_NUMBER tag can be used to enter a project or revision number.
+# This could be handy for archiving the generated documentation or
+# if some version control system is used.
+
+PROJECT_NUMBER =
+
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
+# base path where the generated documentation will be put.
+# If a relative path is entered, it will be relative to the location
+# where doxygen was started. If left blank the current directory will be used.
+
+OUTPUT_DIRECTORY = .
+
+# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create
+# 4096 sub-directories (in 2 levels) under the output directory of each output
+# format and will distribute the generated files over these directories.
+# Enabling this option can be useful when feeding doxygen a huge amount of
+# source files, where putting all generated files in the same directory would
+# otherwise cause performance problems for the file system.
+
+CREATE_SUBDIRS = NO
+
+# The OUTPUT_LANGUAGE tag is used to specify the language in which all
+# documentation generated by doxygen is written. Doxygen will use this
+# information to generate all constant output in the proper language.
+# The default language is English, other supported languages are:
+# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional,
+# Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German,
+# Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English
+# messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian,
+# Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrilic, Slovak,
+# Slovene, Spanish, Swedish, Ukrainian, and Vietnamese.
+
+OUTPUT_LANGUAGE = English
+
+# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
+# include brief member descriptions after the members that are listed in
+# the file and class documentation (similar to JavaDoc).
+# Set to NO to disable this.
+
+BRIEF_MEMBER_DESC = YES
+
+# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
+# the brief description of a member or function before the detailed description.
+# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
+# brief descriptions will be completely suppressed.
+
+REPEAT_BRIEF = YES
+
+# This tag implements a quasi-intelligent brief description abbreviator
+# that is used to form the text in various listings. Each string
+# in this list, if found as the leading text of the brief description, will be
+# stripped from the text and the result after processing the whole list, is
+# used as the annotated text. Otherwise, the brief description is used as-is.
+# If left blank, the following values are used ("$name" is automatically
+# replaced with the name of the entity): "The $name class" "The $name widget"
+# "The $name file" "is" "provides" "specifies" "contains"
+# "represents" "a" "an" "the"
+
+ABBREVIATE_BRIEF =
+
+# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
+# Doxygen will generate a detailed section even if there is only a brief
+# description.
+
+ALWAYS_DETAILED_SEC = NO
+
+# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
+# inherited members of a class in the documentation of that class as if those
+# members were ordinary class members. Constructors, destructors and assignment
+# operators of the base classes will not be shown.
+
+INLINE_INHERITED_MEMB = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
+# path before files name in the file list and in the header files. If set
+# to NO the shortest path that makes the file name unique will be used.
+
+FULL_PATH_NAMES = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
+# can be used to strip a user-defined part of the path. Stripping is
+# only done if one of the specified strings matches the left-hand part of
+# the path. The tag can be used to show relative paths in the file list.
+# If left blank the directory from which doxygen is run is used as the
+# path to strip.
+
+STRIP_FROM_PATH =
+
+# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of
+# the path mentioned in the documentation of a class, which tells
+# the reader which header file to include in order to use a class.
+# If left blank only the name of the header file containing the class
+# definition is used. Otherwise one should specify the include paths that
+# are normally passed to the compiler using the -I flag.
+
+STRIP_FROM_INC_PATH =
+
+# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
+# (but less readable) file names. This can be useful is your file systems
+# doesn't support long names like on DOS, Mac, or CD-ROM.
+
+SHORT_NAMES = NO
+
+# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
+# will interpret the first line (until the first dot) of a JavaDoc-style
+# comment as the brief description. If set to NO, the JavaDoc
+# comments will behave just like regular Qt-style comments
+# (thus requiring an explicit @brief command for a brief description.)
+
+JAVADOC_AUTOBRIEF = YES
+
+# If the QT_AUTOBRIEF tag is set to YES then Doxygen will
+# interpret the first line (until the first dot) of a Qt-style
+# comment as the brief description. If set to NO, the comments
+# will behave just like regular Qt-style comments (thus requiring
+# an explicit \brief command for a brief description.)
+
+QT_AUTOBRIEF = NO
+
+# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
+# treat a multi-line C++ special comment block (i.e. a block of //! or ///
+# comments) as a brief description. This used to be the default behaviour.
+# The new default is to treat a multi-line C++ comment block as a detailed
+# description. Set this tag to YES if you prefer the old behaviour instead.
+
+MULTILINE_CPP_IS_BRIEF = NO
+
+# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
+# member inherits the documentation from any documented member that it
+# re-implements.
+
+INHERIT_DOCS = YES
+
+# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce
+# a new page for each member. If set to NO, the documentation of a member will
+# be part of the file/class/namespace that contains it.
+
+SEPARATE_MEMBER_PAGES = NO
+
+# The TAB_SIZE tag can be used to set the number of spaces in a tab.
+# Doxygen uses this value to replace tabs by spaces in code fragments.
+
+TAB_SIZE = 4
+
+# This tag can be used to specify a number of aliases that acts
+# as commands in the documentation. An alias has the form "name=value".
+# For example adding "sideeffect=\par Side Effects:\n" will allow you to
+# put the command \sideeffect (or @sideeffect) in the documentation, which
+# will result in a user-defined paragraph with heading "Side Effects:".
+# You can put \n's in the value part of an alias to insert newlines.
+
+ALIASES += asf_license_start=" "
+ALIASES += asf_license_stop=" "
+
+# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C
+# sources only. Doxygen will then generate output that is more tailored for C.
+# For instance, some of the names that are used will be different. The list
+# of all members will be omitted, etc.
+
+OPTIMIZE_OUTPUT_FOR_C = YES
+
+# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java
+# sources only. Doxygen will then generate output that is more tailored for
+# Java. For instance, namespaces will be presented as packages, qualified
+# scopes will look different, etc.
+
+OPTIMIZE_OUTPUT_JAVA = NO
+
+# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran
+# sources only. Doxygen will then generate output that is more tailored for
+# Fortran.
+
+OPTIMIZE_FOR_FORTRAN = NO
+
+# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL
+# sources. Doxygen will then generate output that is tailored for
+# VHDL.
+
+OPTIMIZE_OUTPUT_VHDL = NO
+
+# Doxygen selects the parser to use depending on the extension of the files it
+# parses. With this tag you can assign which parser to use for a given extension.
+# Doxygen has a built-in mapping, but you can override or extend it using this
+# tag. The format is ext=language, where ext is a file extension, and language
+# is one of the parsers supported by doxygen: IDL, Java, Javascript, CSharp, C,
+# C++, D, PHP, Objective-C, Python, Fortran, VHDL, C, C++. For instance to make
+# doxygen treat .inc files as Fortran files (default is PHP), and .f files as C
+# (default is Fortran), use: inc=Fortran f=C. Note that for custom extensions
+# you also need to set FILE_PATTERNS otherwise the files are not read by doxygen.
+
+EXTENSION_MAPPING =
+
+# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
+# to include (a tag file for) the STL sources as input, then you should
+# set this tag to YES in order to let doxygen match functions declarations and
+# definitions whose arguments contain STL classes (e.g. func(std::string); v.s.
+# func(std::string) {}). This also make the inheritance and collaboration
+# diagrams that involve STL classes more complete and accurate.
+
+BUILTIN_STL_SUPPORT = NO
+
+# If you use Microsoft's C++/CLI language, you should set this option to YES to
+# enable parsing support.
+
+CPP_CLI_SUPPORT = NO
+
+# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only.
+# Doxygen will parse them like normal C++ but will assume all classes use public
+# instead of private inheritance when no explicit protection keyword is present.
+
+SIP_SUPPORT = NO
+
+# For Microsoft's IDL there are propget and propput attributes to indicate getter
+# and setter methods for a property. Setting this option to YES (the default)
+# will make doxygen to replace the get and set methods by a property in the
+# documentation. This will only work if the methods are indeed getting or
+# setting a simple type. If this is not the case, or you want to show the
+# methods anyway, you should set this option to NO.
+
+IDL_PROPERTY_SUPPORT = YES
+
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
+# tag is set to YES, then doxygen will reuse the documentation of the first
+# member in the group (if any) for the other members of the group. By default
+# all members of a group must be documented explicitly.
+
+DISTRIBUTE_GROUP_DOC = NO
+
+# Set the SUBGROUPING tag to YES (the default) to allow class member groups of
+# the same type (for instance a group of public functions) to be put as a
+# subgroup of that type (e.g. under the Public Functions section). Set it to
+# NO to prevent subgrouping. Alternatively, this can be done per class using
+# the \nosubgrouping command.
+
+SUBGROUPING = YES
+
+# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum
+# is documented as struct, union, or enum with the name of the typedef. So
+# typedef struct TypeS {} TypeT, will appear in the documentation as a struct
+# with name TypeT. When disabled the typedef will appear as a member of a file,
+# namespace, or class. And the struct will be named TypeS. This can typically
+# be useful for C code in case the coding convention dictates that all compound
+# types are typedef'ed and only the typedef is referenced, never the tag name.
+
+TYPEDEF_HIDES_STRUCT = NO
+
+# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to
+# determine which symbols to keep in memory and which to flush to disk.
+# When the cache is full, less often used symbols will be written to disk.
+# For small to medium size projects (<1000 input files) the default value is
+# probably good enough. For larger projects a too small cache size can cause
+# doxygen to be busy swapping symbols to and from disk most of the time
+# causing a significant performance penality.
+# If the system has enough physical memory increasing the cache will improve the
+# performance by keeping more symbols in memory. Note that the value works on
+# a logarithmic scale so increasing the size by one will rougly double the
+# memory usage. The cache size is given by this formula:
+# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0,
+# corresponding to a cache size of 2^16 = 65536 symbols
+
+SYMBOL_CACHE_SIZE = 0
+
+#---------------------------------------------------------------------------
+# Build related configuration options
+#---------------------------------------------------------------------------
+
+# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
+# documentation are documented, even if no documentation was available.
+# Private class members and static file members will be hidden unless
+# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
+
+EXTRACT_ALL = YES
+
+# If the EXTRACT_PRIVATE tag is set to YES all private members of a class
+# will be included in the documentation.
+
+EXTRACT_PRIVATE = NO
+
+# If the EXTRACT_STATIC tag is set to YES all static members of a file
+# will be included in the documentation.
+
+EXTRACT_STATIC = YES
+
+# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
+# defined locally in source files will be included in the documentation.
+# If set to NO only classes defined in header files are included.
+
+EXTRACT_LOCAL_CLASSES = YES
+
+# This flag is only useful for Objective-C code. When set to YES local
+# methods, which are defined in the implementation section but not in
+# the interface are included in the documentation.
+# If set to NO (the default) only methods in the interface are included.
+
+EXTRACT_LOCAL_METHODS = NO
+
+# If this flag is set to YES, the members of anonymous namespaces will be
+# extracted and appear in the documentation as a namespace called
+# 'anonymous_namespace{file}', where file will be replaced with the base
+# name of the file that contains the anonymous namespace. By default
+# anonymous namespace are hidden.
+
+EXTRACT_ANON_NSPACES = NO
+
+# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
+# undocumented members of documented classes, files or namespaces.
+# If set to NO (the default) these members will be included in the
+# various overviews, but no documentation section is generated.
+# This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_MEMBERS = NO
+
+# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
+# undocumented classes that are normally visible in the class hierarchy.
+# If set to NO (the default) these classes will be included in the various
+# overviews. This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_CLASSES = NO
+
+# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
+# friend (class|struct|union) declarations.
+# If set to NO (the default) these declarations will be included in the
+# documentation.
+
+HIDE_FRIEND_COMPOUNDS = NO
+
+# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
+# documentation blocks found inside the body of a function.
+# If set to NO (the default) these blocks will be appended to the
+# function's detailed documentation block.
+
+HIDE_IN_BODY_DOCS = NO
+
+# The INTERNAL_DOCS tag determines if documentation
+# that is typed after a \internal command is included. If the tag is set
+# to NO (the default) then the documentation will be excluded.
+# Set it to YES to include the internal documentation.
+
+INTERNAL_DOCS = YES
+
+# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
+# file names in lower-case letters. If set to YES upper-case letters are also
+# allowed. This is useful if you have classes or files whose names only differ
+# in case and if your file system supports case sensitive file names. Windows
+# and Mac users are advised to set this option to NO.
+
+CASE_SENSE_NAMES = NO
+
+# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
+# will show members with their full class and namespace scopes in the
+# documentation. If set to YES the scope will be hidden.
+
+HIDE_SCOPE_NAMES = NO
+
+# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
+# will put a list of the files that are included by a file in the documentation
+# of that file.
+
+SHOW_INCLUDE_FILES = YES
+
+# If the FORCE_LOCAL_INCLUDES tag is set to YES then Doxygen
+# will list include files with double quotes in the documentation
+# rather than with sharp brackets.
+
+FORCE_LOCAL_INCLUDES = NO
+
+# If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
+# is inserted in the documentation for inline members.
+
+INLINE_INFO = YES
+
+# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen
+# will sort the (detailed) documentation of file and class members
+# alphabetically by member name. If set to NO the members will appear in
+# declaration order.
+
+SORT_MEMBER_DOCS = YES
+
+# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the
+# brief documentation of file, namespace and class members alphabetically
+# by member name. If set to NO (the default) the members will appear in
+# declaration order.
+
+SORT_BRIEF_DOCS = YES
+
+# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen
+# will sort the (brief and detailed) documentation of class members so that
+# constructors and destructors are listed first. If set to NO (the default)
+# the constructors will appear in the respective orders defined by
+# SORT_MEMBER_DOCS and SORT_BRIEF_DOCS.
+# This tag will be ignored for brief docs if SORT_BRIEF_DOCS is set to NO
+# and ignored for detailed docs if SORT_MEMBER_DOCS is set to NO.
+
+SORT_MEMBERS_CTORS_1ST = NO
+
+# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the
+# hierarchy of group names into alphabetical order. If set to NO (the default)
+# the group names will appear in their defined order.
+
+SORT_GROUP_NAMES = NO
+
+# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be
+# sorted by fully-qualified names, including namespaces. If set to
+# NO (the default), the class list will be sorted only by class name,
+# not including the namespace part.
+# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
+# Note: This option applies only to the class list, not to the
+# alphabetical list.
+
+SORT_BY_SCOPE_NAME = NO
+
+# The GENERATE_TODOLIST tag can be used to enable (YES) or
+# disable (NO) the todo list. This list is created by putting \todo
+# commands in the documentation.
+
+GENERATE_TODOLIST = YES
+
+# The GENERATE_TESTLIST tag can be used to enable (YES) or
+# disable (NO) the test list. This list is created by putting \test
+# commands in the documentation.
+
+GENERATE_TESTLIST = YES
+
+# The GENERATE_BUGLIST tag can be used to enable (YES) or
+# disable (NO) the bug list. This list is created by putting \bug
+# commands in the documentation.
+
+GENERATE_BUGLIST = YES
+
+# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
+# disable (NO) the deprecated list. This list is created by putting
+# \deprecated commands in the documentation.
+
+GENERATE_DEPRECATEDLIST= YES
+
+# The ENABLED_SECTIONS tag can be used to enable conditional
+# documentation sections, marked by \if sectionname ... \endif.
+
+ENABLED_SECTIONS =
+
+# The MAX_INITIALIZER_LINES tag determines the maximum number of lines
+# the initial value of a variable or define consists of for it to appear in
+# the documentation. If the initializer consists of more lines than specified
+# here it will be hidden. Use a value of 0 to hide initializers completely.
+# The appearance of the initializer of individual variables and defines in the
+# documentation can be controlled using \showinitializer or \hideinitializer
+# command in the documentation regardless of this setting.
+
+MAX_INITIALIZER_LINES = 30
+
+# Set the SHOW_USED_FILES tag to NO to disable the list of files generated
+# at the bottom of the documentation of classes and structs. If set to YES the
+# list will mention the files that were used to generate the documentation.
+
+SHOW_USED_FILES = NO
+
+# If the sources in your project are distributed over multiple directories
+# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy
+# in the documentation. The default is NO.
+
+SHOW_DIRECTORIES = NO
+
+# Set the SHOW_FILES tag to NO to disable the generation of the Files page.
+# This will remove the Files entry from the Quick Index and from the
+# Folder Tree View (if specified). The default is YES.
+
+SHOW_FILES = YES
+
+# Set the SHOW_NAMESPACES tag to NO to disable the generation of the
+# Namespaces page.
+# This will remove the Namespaces entry from the Quick Index
+# and from the Folder Tree View (if specified). The default is YES.
+
+SHOW_NAMESPACES = YES
+
+# The FILE_VERSION_FILTER tag can be used to specify a program or script that
+# doxygen should invoke to get the current version for each file (typically from
+# the version control system). Doxygen will invoke the program by executing (via
+# popen()) the command <command> <input-file>, where <command> is the value of
+# the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file
+# provided by doxygen. Whatever the program writes to standard output
+# is used as the file version. See the manual for examples.
+
+FILE_VERSION_FILTER =
+
+# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
+# by doxygen. The layout file controls the global structure of the generated
+# output files in an output format independent way. The create the layout file
+# that represents doxygen's defaults, run doxygen with the -l option.
+# You can optionally specify a file name after the option, if omitted
+# DoxygenLayout.xml will be used as the name of the layout file.
+
+LAYOUT_FILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+
+# The QUIET tag can be used to turn on/off the messages that are generated
+# by doxygen. Possible values are YES and NO. If left blank NO is used.
+
+QUIET = YES
+
+# The WARNINGS tag can be used to turn on/off the warning messages that are
+# generated by doxygen. Possible values are YES and NO. If left blank
+# NO is used.
+
+WARNINGS = YES
+
+# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings
+# for undocumented members. If EXTRACT_ALL is set to YES then this flag will
+# automatically be disabled.
+
+WARN_IF_UNDOCUMENTED = YES
+
+# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
+# potential errors in the documentation, such as not documenting some
+# parameters in a documented function, or documenting parameters that
+# don't exist or using markup commands wrongly.
+
+WARN_IF_DOC_ERROR = YES
+
+# This WARN_NO_PARAMDOC option can be abled to get warnings for
+# functions that are documented, but have no documentation for their parameters
+# or return value. If set to NO (the default) doxygen will only warn about
+# wrong or incomplete parameter documentation, but not about the absence of
+# documentation.
+
+WARN_NO_PARAMDOC = NO
+
+# The WARN_FORMAT tag determines the format of the warning messages that
+# doxygen can produce. The string should contain the $file, $line, and $text
+# tags, which will be replaced by the file and line number from which the
+# warning originated and the warning text. Optionally the format may contain
+# $version, which will be replaced by the version of the file (if it could
+# be obtained via FILE_VERSION_FILTER)
+
+WARN_FORMAT = "[WARNING]$file:$line: $text"
+
+# The WARN_LOGFILE tag can be used to specify a file to which warning
+# and error messages should be written. If left blank the output is written
+# to stderr.
+
+WARN_LOGFILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to the input files
+#---------------------------------------------------------------------------
+
+# The INPUT tag can be used to specify the files and/or directories that contain
+# documented source files. You may enter file names like "myfile.cpp" or
+# directories like "/usr/src/myproject". Separate the files or directories
+# with spaces.
+
+INPUT = ../../phy_sniffer_tool.c ../../../../../../../../common/services/clock/sam4cm/sysclk.c ../../../../../../../../sam/drivers/pmc/pmc.c ../../../../../../../../sam/drivers/pmc/sleep.c ../../../../../../../../common/utils/interrupt/interrupt_sam_nvic.c ../../../../../../../../sam/utils/cmsis/sam4cm/source/templates/system_sam4cm.c ../../../../../../../../common/services/serial/usart_serial.c ../../../../../../../../sam/drivers/uart/uart.c ../../../../../../../../sam/drivers/usart/usart.c ../../../../../../../../common/utils/stdio/read.c ../../../../../../../../common/utils/stdio/write.c ../../../../../../../../sam/drivers/supc/supc.c ../../../../addons/sniffer_if/sniffer_if.c ../../../../coupling_config/conf_atpl230.c ../../../../source/atpl230.c ../../../../source/atpl230_iir_filter.c ../../../../../../../../sam/services/plc/pplc_if/atpl230/pplc_if.c ../../../../../../../../sam/drivers/spi/spi.c ../../../../../../../../sam/drivers/pdc/pdc.c ../../../../../../../../sam/drivers/pio/pio.c ../../../../../../../../sam/drivers/pio/pio_handler.c ../../../../../../../../sam/services/plc/usi/usi.c ../../../../../../../../sam/services/plc/pcrc/pcrc.c ../../../../../../../../sam/services/plc/buart_if/buart_if.c ../../../../../../../../sam/drivers/tc/tc.c ../../../../../../../../sam/services/plc/busart_if/busart_if.c ../../../../../../../../sam/boards/sam4cmp_db/init.c ../conf_board.h ../conf_buart_if.h ../conf_busart_if.h ../conf_clock.h ../conf_phy.h ../conf_pplc_if.h ../conf_uart_serial.h ../conf_usi.h ../../../../../../../../common/utils/stdio/stdio_serial/stdio_serial.h ../../../../../../../../common/services/clock/genclk.h ../../../../../../../../common/services/clock/osc.h ../../../../../../../../common/services/clock/pll.h ../../../../../../../../common/services/clock/sam4cm/genclk.h ../../../../../../../../common/services/clock/sam4cm/osc.h ../../../../../../../../common/services/clock/sam4cm/pll.h ../../../../../../../../common/services/clock/sam4cm/sysclk.h ../../../../../../../../common/services/clock/sysclk.h ../../../../../../../../sam/drivers/pmc/pmc.h ../../../../../../../../sam/drivers/pmc/sleep.h ../../../../../../../../sam/utils/compiler.h ../../../../../../../../sam/utils/header_files/io.h ../../../../../../../../sam/utils/status_codes.h ../../../../../../../../sam/utils/preprocessor/mrepeat.h ../../../../../../../../sam/utils/preprocessor/preprocessor.h ../../../../../../../../sam/utils/preprocessor/stringz.h ../../../../../../../../sam/utils/preprocessor/tpaste.h ../../../../../../../../common/utils/interrupt.h ../../../../../../../../common/utils/interrupt/interrupt_sam_nvic.h ../../../../../../../../common/utils/parts.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/sam4cm.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/sam4cmp16c_0.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/sam4cmp16c_1.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/sam4cmp8c_0.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/sam4cmp8c_1.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/sam4cms16c_0.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/sam4cms16c_1.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/sam4cms4c_0.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/sam4cms4c_1.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/sam4cms8c_0.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/sam4cms8c_1.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/system_sam4cm.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/adc.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/aes.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/chipid.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/cmcc.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/efc.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/gpbr.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/icm.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/ipc.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/matrix.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/pdc.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/pio.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/pmc.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/pwm.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/rstc.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/rswdt.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/rtc.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/rtt.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/slcdc.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/smc.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/spi.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/supc.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/tc.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/trng.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/twi.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/uart.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/usart.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/component/wdt.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/adc.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/aes.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/chipid.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/cmcc0.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/cmcc1.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/efc.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/gpbr.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/icm.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/ipc0.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/ipc1.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/matrix0.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/matrix1.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/pioa.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/piob.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/pioc.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/pmc.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/pwm.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/rstc.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/rswdt.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/rtc.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/rtt.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/slcdc.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/smc0.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/smc1.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/spi0.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/spi1.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/supc.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/tc0.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/tc1.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/trng.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/twi0.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/twi1.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/uart0.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/uart1.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/usart0.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/usart1.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/usart2.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/usart3.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/instance/wdt.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/pio/sam4cmp16c.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/pio/sam4cmp8c.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/pio/sam4cms16c.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/pio/sam4cms4c.h ../../../../../../../../sam/utils/cmsis/sam4cm/include/pio/sam4cms8c.h ../../../../../../../../common/services/serial/sam_uart/uart_serial.h ../../../../../../../../common/services/serial/serial.h ../../../../../../../../sam/drivers/uart/uart.h ../../../../../../../../sam/drivers/usart/usart.h ../../../../../../../../sam/drivers/supc/supc.h ../../../../addons/sniffer_if/sniffer_if.h ../../../../coupling_config/conf_atpl230.h ../../../../include/atpl230.h ../../../../include/atpl230_iir_filter.h ../../../../include/atpl230_reg.h ../../../../include/atpl230_version.h ../../../../../../../../sam/services/plc/pplc_if/atpl230/pplc_if.h ../../../../../../../../common/services/ioport/ioport.h ../../../../../../../../common/services/ioport/sam/ioport_pio.h ../../../../../../../../sam/drivers/spi/spi.h ../../../../../../../../sam/drivers/pdc/pdc.h ../../../../../../../../sam/drivers/pdc/pdc_uart_example/pdc_uart_example.h ../../../../../../../../sam/drivers/pio/pio.h ../../../../../../../../sam/drivers/pio/pio_handler.h ../../../../../../../../sam/services/plc/usi/usi.h ../../../../../../../../sam/services/plc/pcrc/pcrc.h ../../../../../../../../sam/services/plc/buart_if/buart_if.h ../../../../../../../../sam/drivers/tc/tc.h ../../../../../../../../sam/services/plc/busart_if/busart_if.h ../../../../../../../../sam/boards/sam4cmp_db/sam4cmp_db.h ../../../../../../../../common/boards/board.h ../../../../../../../../sam/boards/sam4cmp_db/led.h
+
+# This tag can be used to specify the character encoding of the source files
+# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is
+# also the default input encoding. Doxygen uses libiconv (or the iconv built
+# into libc) for the transcoding. See http://www.gnu.org/software/libiconv for
+# the list of possible encodings.
+
+INPUT_ENCODING = UTF-8
+
+# If the value of the INPUT tag contains directories, you can use the
+# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank the following patterns are tested:
+# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx
+# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90
+
+FILE_PATTERNS = *.c \
+ *.h \
+ *.s \
+ *.S
+
+# The RECURSIVE tag can be used to turn specify whether or not subdirectories
+# should be searched for input files as well. Possible values are YES and NO.
+# If left blank NO is used.
+
+RECURSIVE = NO
+
+# The EXCLUDE tag can be used to specify files and/or directories that should
+# excluded from the INPUT source files. This way you can easily exclude a
+# subdirectory from a directory tree whose root is specified with the INPUT tag.
+
+EXCLUDE =
+
+# The EXCLUDE_SYMLINKS tag can be used select whether or not files or
+# directories that are symbolic links (a Unix filesystem feature) are excluded
+# from the input.
+
+EXCLUDE_SYMLINKS = NO
+
+# If the value of the INPUT tag contains directories, you can use the
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+# certain files from those directories. Note that the wildcards are matched
+# against the file with absolute path, so to exclude all test directories
+# for example use the pattern */test/*
+
+EXCLUDE_PATTERNS =
+
+# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
+# (namespaces, classes, functions, etc.) that should be excluded from the
+# output. The symbol name can be a fully qualified name, a word, or if the
+# wildcard * is used, a substring. Examples: ANamespace, AClass,
+# AClass::ANamespace, ANamespace::*Test
+
+EXCLUDE_SYMBOLS =
+
+# The EXAMPLE_PATH tag can be used to specify one or more files or
+# directories that contain example code fragments that are included (see
+# the \include command).
+
+EXAMPLE_PATH = ./ ../../../../../../../../sam/drivers/pdc/pdc_uart_example
+
+# If the value of the EXAMPLE_PATH tag contains directories, you can use the
+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank all files are included.
+
+EXAMPLE_PATTERNS =
+
+# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
+# searched for input files to be used with the \include or \dontinclude
+# commands irrespective of the value of the RECURSIVE tag.
+# Possible values are YES and NO. If left blank NO is used.
+
+EXAMPLE_RECURSIVE = NO
+
+# The IMAGE_PATH tag can be used to specify one or more files or
+# directories that contain image that are included in the documentation (see
+# the \image command).
+
+IMAGE_PATH =
+
+# The INPUT_FILTER tag can be used to specify a program that doxygen should
+# invoke to filter for each input file. Doxygen will invoke the filter program
+# by executing (via popen()) the command <filter> <input-file>, where <filter>
+# is the value of the INPUT_FILTER tag, and <input-file> is the name of an
+# input file. Doxygen will then use the output that the filter program writes
+# to standard output.
+# If FILTER_PATTERNS is specified, this tag will be
+# ignored.
+
+INPUT_FILTER =
+
+# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
+# basis.
+# Doxygen will compare the file name with each pattern and apply the
+# filter if there is a match.
+# The filters are a list of the form:
+# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further
+# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER
+# is applied to all files.
+
+FILTER_PATTERNS =
+
+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
+# INPUT_FILTER) will be used to filter the input files when producing source
+# files to browse (i.e. when SOURCE_BROWSER is set to YES).
+
+FILTER_SOURCE_FILES = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to source browsing
+#---------------------------------------------------------------------------
+
+# If the SOURCE_BROWSER tag is set to YES then a list of source files will
+# be generated. Documented entities will be cross-referenced with these sources.
+# Note: To get rid of all source code in the generated output, make sure also
+# VERBATIM_HEADERS is set to NO.
+
+SOURCE_BROWSER = YES
+
+# Setting the INLINE_SOURCES tag to YES will include the body
+# of functions and classes directly in the documentation.
+
+INLINE_SOURCES = YES
+
+# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
+# doxygen to hide any special comment blocks from generated source code
+# fragments. Normal C and C++ comments will always remain visible.
+
+STRIP_CODE_COMMENTS = YES
+
+# If the REFERENCED_BY_RELATION tag is set to YES
+# then for each documented function all documented
+# functions referencing it will be listed.
+
+REFERENCED_BY_RELATION = YES
+
+# If the REFERENCES_RELATION tag is set to YES
+# then for each documented function all documented entities
+# called/used by that function will be listed.
+
+REFERENCES_RELATION = YES
+
+# If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
+# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
+# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will
+# link to the source code.
+# Otherwise they will link to the documentation.
+
+REFERENCES_LINK_SOURCE = YES
+
+# If the USE_HTAGS tag is set to YES then the references to source code
+# will point to the HTML generated by the htags(1) tool instead of doxygen
+# built-in source browser. The htags tool is part of GNU's global source
+# tagging system (see http://www.gnu.org/software/global/global.html). You
+# will need version 4.8.6 or higher.
+
+USE_HTAGS = NO
+
+# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
+# will generate a verbatim copy of the header file for each class for
+# which an include is specified. Set to NO to disable this.
+
+VERBATIM_HEADERS = YES
+
+#---------------------------------------------------------------------------
+# configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+
+# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index
+# of all compounds will be generated. Enable this if the project
+# contains a lot of classes, structs, unions or interfaces.
+
+ALPHABETICAL_INDEX = NO
+
+# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
+# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
+# in which this list will be split (can be a number in the range [1..20])
+
+COLS_IN_ALPHA_INDEX = 5
+
+# In case all classes in a project start with a common prefix, all
+# classes will be put under the same header in the alphabetical index.
+# The IGNORE_PREFIX tag can be used to specify one or more prefixes that
+# should be ignored while generating the index headers.
+
+IGNORE_PREFIX =
+
+#---------------------------------------------------------------------------
+# configuration options related to the HTML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_HTML tag is set to YES (the default) Doxygen will
+# generate HTML output.
+
+GENERATE_HTML = YES
+
+# The HTML_OUTPUT tag is used to specify where the HTML docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `html' will be used as the default path.
+
+HTML_OUTPUT = html
+
+# The HTML_FILE_EXTENSION tag can be used to specify the file extension for
+# each generated HTML page (for example: .htm,.php,.asp). If it is left blank
+# doxygen will generate files with .html extension.
+
+HTML_FILE_EXTENSION = .html
+
+# The HTML_HEADER tag can be used to specify a personal HTML header for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard header.
+
+HTML_HEADER =
+
+# The HTML_FOOTER tag can be used to specify a personal HTML footer for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard footer.
+
+HTML_FOOTER =
+
+# The HTML_STYLESHEET tag can be used to specify a user-defined cascading
+# style sheet that is used by each HTML page. It can be used to
+# fine-tune the look of the HTML output. If the tag is left blank doxygen
+# will generate a default style sheet. Note that doxygen will try to copy
+# the style sheet file to the HTML output directory, so don't put your own
+# stylesheet in the HTML output directory as well, or it will be erased!
+
+HTML_STYLESHEET =
+
+# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output.
+# Doxygen will adjust the colors in the stylesheet and background images
+# according to this color. Hue is specified as an angle on a colorwheel,
+# see http://en.wikipedia.org/wiki/Hue for more information.
+# For instance the value 0 represents red, 60 is yellow, 120 is green,
+# 180 is cyan, 240 is blue, 300 purple, and 360 is red again.
+# The allowed range is 0 to 359.
+
+HTML_COLORSTYLE_HUE = 220
+
+# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of
+# the colors in the HTML output. For a value of 0 the output will use
+# grayscales only. A value of 255 will produce the most vivid colors.
+
+HTML_COLORSTYLE_SAT = 100
+
+# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to
+# the luminance component of the colors in the HTML output. Values below
+# 100 gradually make the output lighter, whereas values above 100 make
+# the output darker. The value divided by 100 is the actual gamma applied,
+# so 80 represents a gamma of 0.8, The value 220 represents a gamma of 2.2,
+# and 100 does not change the gamma.
+
+HTML_COLORSTYLE_GAMMA = 80
+
+# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
+# page will contain the date and time when the page was generated. Setting
+# this to NO can help when comparing the output of multiple runs.
+
+HTML_TIMESTAMP = YES
+
+# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
+# files or namespaces will be aligned in HTML using tables. If set to
+# NO a bullet list will be used.
+
+HTML_ALIGN_MEMBERS = YES
+
+# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
+# documentation will contain sections that can be hidden and shown after the
+# page has loaded. For this to work a browser that supports
+# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox
+# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari).
+
+HTML_DYNAMIC_SECTIONS = NO
+
+# If the GENERATE_DOCSET tag is set to YES, additional index files
+# will be generated that can be used as input for Apple's Xcode 3
+# integrated development environment, introduced with OSX 10.5 (Leopard).
+# To create a documentation set, doxygen will generate a Makefile in the
+# HTML output directory. Running make will produce the docset in that
+# directory and running "make install" will install the docset in
+# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find
+# it at startup.
+# See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html
+# for more information.
+
+GENERATE_DOCSET = NO
+
+# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the
+# feed. A documentation feed provides an umbrella under which multiple
+# documentation sets from a single provider (such as a company or product suite)
+# can be grouped.
+
+DOCSET_FEEDNAME = "Doxygen generated docs"
+
+# When GENERATE_DOCSET tag is set to YES, this tag specifies a string that
+# should uniquely identify the documentation set bundle. This should be a
+# reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen
+# will append .docset to the name.
+
+DOCSET_BUNDLE_ID = org.doxygen.Project
+
+# When GENERATE_PUBLISHER_ID tag specifies a string that should uniquely identify
+# the documentation publisher. This should be a reverse domain-name style
+# string, e.g. com.mycompany.MyDocSet.documentation.
+
+DOCSET_PUBLISHER_ID = org.doxygen.Publisher
+
+# The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher.
+
+DOCSET_PUBLISHER_NAME = Publisher
+
+# If the GENERATE_HTMLHELP tag is set to YES, additional index files
+# will be generated that can be used as input for tools like the
+# Microsoft HTML help workshop to generate a compiled HTML help file (.chm)
+# of the generated HTML documentation.
+
+GENERATE_HTMLHELP = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
+# be used to specify the file name of the resulting .chm file. You
+# can add a path in front of the file if the result should not be
+# written to the html output directory.
+
+CHM_FILE =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
+# be used to specify the location (absolute path including file name) of
+# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
+# the HTML help compiler on the generated index.hhp.
+
+HHC_LOCATION =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
+# controls if a separate .chi index file is generated (YES) or that
+# it should be included in the master .chm file (NO).
+
+GENERATE_CHI = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING
+# is used to encode HtmlHelp index (hhk), content (hhc) and project file
+# content.
+
+CHM_INDEX_ENCODING =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag
+# controls whether a binary table of contents is generated (YES) or a
+# normal table of contents (NO) in the .chm file.
+
+BINARY_TOC = NO
+
+# The TOC_EXPAND flag can be set to YES to add extra items for group members
+# to the contents of the HTML help documentation and to the tree view.
+
+TOC_EXPAND = NO
+
+# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and
+# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated
+# that can be used as input for Qt's qhelpgenerator to generate a
+# Qt Compressed Help (.qch) of the generated HTML documentation.
+
+GENERATE_QHP = NO
+
+# If the QHG_LOCATION tag is specified, the QCH_FILE tag can
+# be used to specify the file name of the resulting .qch file.
+# The path specified is relative to the HTML output folder.
+
+QCH_FILE =
+
+# The QHP_NAMESPACE tag specifies the namespace to use when generating
+# Qt Help Project output. For more information please see
+# http://doc.trolltech.com/qthelpproject.html#namespace
+
+QHP_NAMESPACE = org.doxygen.Project
+
+# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating
+# Qt Help Project output. For more information please see
+# http://doc.trolltech.com/qthelpproject.html#virtual-folders
+
+QHP_VIRTUAL_FOLDER = doc
+
+# If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to
+# add. For more information please see
+# http://doc.trolltech.com/qthelpproject.html#custom-filters
+
+QHP_CUST_FILTER_NAME =
+
+# The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the
+# custom filter to add. For more information please see
+# <a href="http://doc.trolltech.com/qthelpproject.html#custom-filters">
+# Qt Help Project / Custom Filters</a>.
+
+QHP_CUST_FILTER_ATTRS =
+
+# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
+# project's
+# filter section matches.
+# <a href="http://doc.trolltech.com/qthelpproject.html#filter-attributes">
+# Qt Help Project / Filter Attributes</a>.
+
+QHP_SECT_FILTER_ATTRS =
+
+# If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can
+# be used to specify the location of Qt's qhelpgenerator.
+# If non-empty doxygen will try to run qhelpgenerator on the generated
+# .qhp file.
+
+QHG_LOCATION =
+
+# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files
+# will be generated, which together with the HTML files, form an Eclipse help
+# plugin. To install this plugin and make it available under the help contents
+# menu in Eclipse, the contents of the directory containing the HTML and XML
+# files needs to be copied into the plugins directory of eclipse. The name of
+# the directory within the plugins directory should be the same as
+# the ECLIPSE_DOC_ID value. After copying Eclipse needs to be restarted before
+# the help appears.
+
+GENERATE_ECLIPSEHELP = NO
+
+# A unique identifier for the eclipse help plugin. When installing the plugin
+# the directory name containing the HTML and XML files should also have
+# this name.
+
+ECLIPSE_DOC_ID = org.doxygen.Project
+
+# The DISABLE_INDEX tag can be used to turn on/off the condensed index at
+# top of each HTML page. The value NO (the default) enables the index and
+# the value YES disables it.
+
+DISABLE_INDEX = NO
+
+# This tag can be used to set the number of enum values (range [1..20])
+# that doxygen will group on one line in the generated HTML documentation.
+
+ENUM_VALUES_PER_LINE = 1
+
+# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
+# structure should be generated to display hierarchical information.
+# If the tag value is set to YES, a side panel will be generated
+# containing a tree-like index structure (just like the one that
+# is generated for HTML Help). For this to work a browser that supports
+# JavaScript, DHTML, CSS and frames is required (i.e. any modern browser).
+# Windows users are probably better off using the HTML help feature.
+
+GENERATE_TREEVIEW = NO
+
+# By enabling USE_INLINE_TREES, doxygen will generate the Groups, Directories,
+# and Class Hierarchy pages using a tree view instead of an ordered list.
+
+USE_INLINE_TREES = NO
+
+# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
+# used to set the initial width (in pixels) of the frame in which the tree
+# is shown.
+
+TREEVIEW_WIDTH = 250
+
+# When the EXT_LINKS_IN_WINDOW option is set to YES doxygen will open
+# links to external symbols imported via tag files in a separate window.
+
+EXT_LINKS_IN_WINDOW = NO
+
+# Use this tag to change the font size of Latex formulas included
+# as images in the HTML documentation. The default is 10. Note that
+# when you change the font size after a successful doxygen run you need
+# to manually remove any form_*.png images from the HTML output directory
+# to force them to be regenerated.
+
+FORMULA_FONTSIZE = 10
+
+# Use the FORMULA_TRANPARENT tag to determine whether or not the images
+# generated for formulas are transparent PNGs. Transparent PNGs are
+# not supported properly for IE 6.0, but are supported on all modern browsers.
+# Note that when changing this option you need to delete any form_*.png files
+# in the HTML output before the changes have effect.
+
+FORMULA_TRANSPARENT = YES
+
+# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see
+# http://www.mathjax.org) which uses client side Javascript for the rendering
+# instead of using prerendered bitmaps. Use this if you do not have LaTeX
+# installed or if you want to formulas look prettier in the HTML output. When
+# enabled you may also need to install MathJax separately and configure the path
+# to it using the MATHJAX_RELPATH option.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+USE_MATHJAX = NO
+
+# When the SEARCHENGINE tag is enabled doxygen will generate a search box
+# for the HTML output. The underlying search engine uses javascript
+# and DHTML and should work on any modern browser. Note that when using
+# HTML help (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets
+# (GENERATE_DOCSET) there is already a search function so this one should
+# typically be disabled. For large projects the javascript based search engine
+# can be slow, then enabling SERVER_BASED_SEARCH may provide a better solution.
+
+SEARCHENGINE = YES
+
+# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
+# implemented using a PHP enabled web server instead of at the web client
+# using Javascript. Doxygen will generate the search PHP script and index
+# file to put on the web server. The advantage of the server
+# based approach is that it scales better to large projects and allows
+# full text search. The disadvances is that it is more difficult to setup
+# and does not have live searching capabilities.
+
+SERVER_BASED_SEARCH = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
+# generate Latex output.
+
+GENERATE_LATEX = NO
+
+# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `latex' will be used as the default path.
+
+LATEX_OUTPUT = latex
+
+# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
+# invoked. If left blank `latex' will be used as the default command name.
+# Note that when enabling USE_PDFLATEX this option is only used for
+# generating bitmaps for formulas in the HTML output, but not in the
+# Makefile that is written to the output directory.
+
+LATEX_CMD_NAME = latex
+
+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
+# generate index for LaTeX. If left blank `makeindex' will be used as the
+# default command name.
+
+MAKEINDEX_CMD_NAME = makeindex
+
+# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact
+# LaTeX documents. This may be useful for small projects and may help to
+# save some trees in general.
+
+COMPACT_LATEX = NO
+
+# The PAPER_TYPE tag can be used to set the paper type that is used
+# by the printer. Possible values are: a4, a4wide, letter, legal and
+# executive. If left blank a4wide will be used.
+
+PAPER_TYPE = a4wide
+
+# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
+# packages that should be included in the LaTeX output.
+
+EXTRA_PACKAGES =
+
+# The LATEX_HEADER tag can be used to specify a personal LaTeX header for
+# the generated latex document. The header should contain everything until
+# the first chapter. If it is left blank doxygen will generate a
+# standard header. Notice: only use this tag if you know what you are doing!
+
+LATEX_HEADER =
+
+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
+# is prepared for conversion to pdf (using ps2pdf). The pdf file will
+# contain links (just like the HTML output) instead of page references
+# This makes the output suitable for online browsing using a pdf viewer.
+
+PDF_HYPERLINKS = NO
+
+# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
+# plain latex in the generated Makefile. Set this option to YES to get a
+# higher quality PDF documentation.
+
+USE_PDFLATEX = NO
+
+# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
+# command to the generated LaTeX files. This will instruct LaTeX to keep
+# running if errors occur, instead of asking the user for help.
+# This option is also used when generating formulas in HTML.
+
+LATEX_BATCHMODE = NO
+
+# If LATEX_HIDE_INDICES is set to YES then doxygen will not
+# include the index chapters (such as File Index, Compound Index, etc.)
+# in the output.
+
+LATEX_HIDE_INDICES = NO
+
+# If LATEX_SOURCE_CODE is set to YES then doxygen will include
+# source code with syntax highlighting in the LaTeX output.
+# Note that which sources are shown also depends on other settings
+# such as SOURCE_BROWSER.
+
+LATEX_SOURCE_CODE = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the RTF output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
+# The RTF output is optimized for Word 97 and may not look very pretty with
+# other RTF readers or editors.
+
+GENERATE_RTF = NO
+
+# The RTF_OUTPUT tag is used to specify where the RTF docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `rtf' will be used as the default path.
+
+RTF_OUTPUT = RTF
+
+# If the COMPACT_RTF tag is set to YES Doxygen generates more compact
+# RTF documents. This may be useful for small projects and may help to
+# save some trees in general.
+
+COMPACT_RTF = NO
+
+# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
+# will contain hyperlink fields. The RTF file will
+# contain links (just like the HTML output) instead of page references.
+# This makes the output suitable for online browsing using WORD or other
+# programs which support those fields.
+# Note: wordpad (write) and others do not support links.
+
+RTF_HYPERLINKS = YES
+
+# Load stylesheet definitions from file. Syntax is similar to doxygen's
+# config file, i.e. a series of assignments. You only have to provide
+# replacements, missing definitions are set to their default value.
+
+RTF_STYLESHEET_FILE =
+
+# Set optional variables used in the generation of an rtf document.
+# Syntax is similar to doxygen's config file.
+
+RTF_EXTENSIONS_FILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to the man page output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_MAN tag is set to YES (the default) Doxygen will
+# generate man pages
+
+GENERATE_MAN = NO
+
+# The MAN_OUTPUT tag is used to specify where the man pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `man' will be used as the default path.
+
+MAN_OUTPUT = man
+
+# The MAN_EXTENSION tag determines the extension that is added to
+# the generated man pages (default is the subroutine's section .3)
+
+MAN_EXTENSION = .3
+
+# If the MAN_LINKS tag is set to YES and Doxygen generates man output,
+# then it will generate one additional man file for each entity
+# documented in the real man page(s). These additional files
+# only source the real man page, but without them the man command
+# would be unable to find the correct page. The default is NO.
+
+MAN_LINKS = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the XML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_XML tag is set to YES Doxygen will
+# generate an XML file that captures the structure of
+# the code including all documentation.
+
+GENERATE_XML = NO
+
+# The XML_OUTPUT tag is used to specify where the XML pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `xml' will be used as the default path.
+
+XML_OUTPUT = xml
+
+# The XML_SCHEMA tag can be used to specify an XML schema,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
+XML_SCHEMA =
+
+# The XML_DTD tag can be used to specify an XML DTD,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
+XML_DTD =
+
+# If the XML_PROGRAMLISTING tag is set to YES Doxygen will
+# dump the program listings (including syntax highlighting
+# and cross-referencing information) to the XML output. Note that
+# enabling this will significantly increase the size of the XML output.
+
+XML_PROGRAMLISTING = YES
+
+#---------------------------------------------------------------------------
+# configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
+# generate an AutoGen Definitions (see autogen.sf.net) file
+# that captures the structure of the code including all
+# documentation. Note that this feature is still experimental
+# and incomplete at the moment.
+
+GENERATE_AUTOGEN_DEF = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_PERLMOD tag is set to YES Doxygen will
+# generate a Perl module file that captures the structure of
+# the code including all documentation. Note that this
+# feature is still experimental and incomplete at the
+# moment.
+
+GENERATE_PERLMOD = NO
+
+# If the PERLMOD_LATEX tag is set to YES Doxygen will generate
+# the necessary Makefile rules, Perl scripts and LaTeX code to be able
+# to generate PDF and DVI output from the Perl module output.
+
+PERLMOD_LATEX = NO
+
+# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
+# nicely formatted so it can be parsed by a human reader.
+# This is useful
+# if you want to understand what is going on.
+# On the other hand, if this
+# tag is set to NO the size of the Perl module output will be much smaller
+# and Perl will parse it just the same.
+
+PERLMOD_PRETTY = YES
+
+# The names of the make variables in the generated doxyrules.make file
+# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
+# This is useful so different doxyrules.make files included by the same
+# Makefile don't overwrite each other's variables.
+
+PERLMOD_MAKEVAR_PREFIX =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor
+#---------------------------------------------------------------------------
+
+# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
+# evaluate all C-preprocessor directives found in the sources and include
+# files.
+
+ENABLE_PREPROCESSING = YES
+
+# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
+# names in the source code. If set to NO (the default) only conditional
+# compilation will be performed. Macro expansion can be done in a controlled
+# way by setting EXPAND_ONLY_PREDEF to YES.
+
+MACRO_EXPANSION = YES
+
+# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
+# then the macro expansion is limited to the macros specified with the
+# PREDEFINED and EXPAND_AS_DEFINED tags.
+
+EXPAND_ONLY_PREDEF = YES
+
+# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
+# in the INCLUDE_PATH (see below) will be search if a #include is found.
+
+SEARCH_INCLUDES = YES
+
+# The INCLUDE_PATH tag can be used to specify one or more directories that
+# contain include files that are not input files but should be processed by
+# the preprocessor.
+
+INCLUDE_PATH = .. ../.. ../../../../../../../../common/utils/stdio/stdio_serial ../../../../../../../../common/services/clock ../../../../../../../../sam/drivers/pmc ../../../../../../../../sam/utils ../../../../../../../../sam/utils/header_files ../../../../../../../../sam/utils/preprocessor ../../../../../../../../common/utils ../../../../../../../../sam/utils/cmsis/sam4cm/include ../../../../../../../../sam/utils/cmsis/sam4cm/source/templates ../../../../../../../../common/services/serial ../../../../../../../../common/services/serial/sam_uart ../../../../../../../../sam/drivers/uart ../../../../../../../../sam/drivers/usart ../../../../../../../../sam/drivers/supc ../../../../addons/sniffer_if ../../../../coupling_config ../../../../include ../../../../../../../../sam/services/plc/pplc_if/atpl230 ../../../../../../../../common/services/ioport ../../../../../../../../sam/drivers/spi ../../../../../../../../sam/drivers/pdc ../../../../../../../../sam/drivers/pdc/pdc_uart_example ../../../../../../../../sam/drivers/pio ../../../../../../../../sam/services/plc/usi ../../../../../../../../sam/services/plc/pcrc ../../../../../../../../sam/services/plc/buart_if ../../../../../../../../sam/drivers/tc ../../../../../../../../sam/services/plc/busart_if ../../../../../../../../sam/boards ../../../../../../../../sam/boards/sam4cmp_db ../../../../../../../../common/boards
+
+# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+# patterns (like *.h and *.hpp) to filter out the header-files in the
+# directories. If left blank, the patterns specified with FILE_PATTERNS will
+# be used.
+
+INCLUDE_FILE_PATTERNS =
+
+# The PREDEFINED tag can be used to specify one or more macro names that
+# are defined before the preprocessor is started (similar to the -D option of
+# gcc). The argument of the tag is a list of macros of the form: name
+# or name=definition (no spaces). If the definition and the = are
+# omitted =1 is assumed. To prevent a macro definition from being
+# undefined via #undef or recursively expanded use the := operator
+# instead of the = operator.
+
+PREDEFINED = __DOXYGEN__ __AVR32_ABI_COMPILER__ __attribute__()= __GNUC__=4 ARM_MATH_CM4=true BOARD=SAM4CMP_DB __SAM4CMP16C_0__ __SAM4CMP16C__
+
+# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
+# this tag can be used to specify a list of macro names that should be expanded.
+# The macro definition that is found in the sources will be used.
+# Use the PREDEFINED tag if you want to use a different macro definition.
+
+EXPAND_AS_DEFINED =
+
+# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
+# doxygen's preprocessor will remove all function-like macros that are alone
+# on a line, have an all uppercase name, and do not end with a semicolon. Such
+# function macros are typically used for boiler-plate code, and will confuse
+# the parser if not removed.
+
+SKIP_FUNCTION_MACROS = YES
+
+#---------------------------------------------------------------------------
+# Configuration::additions related to external references
+#---------------------------------------------------------------------------
+
+# The TAGFILES option can be used to specify one or more tagfiles.
+# Optionally an initial location of the external documentation
+# can be added for each tagfile. The format of a tag file without
+# this location is as follows:
+#
+# TAGFILES = file1 file2 ...
+# Adding location for the tag files is done as follows:
+#
+# TAGFILES = file1=loc1 "file2 = loc2" ...
+# where "loc1" and "loc2" can be relative or absolute paths or
+# URLs. If a location is present for each tag, the installdox tool
+# does not have to be run to correct the links.
+# Note that each tag file must have a unique name
+# (where the name does NOT include the path)
+# If a tag file is not located in the directory in which doxygen
+# is run, you must also specify the path to the tagfile here.
+
+TAGFILES =
+
+# When a file name is specified after GENERATE_TAGFILE, doxygen will create
+# a tag file that is based on the input files it reads.
+
+GENERATE_TAGFILE =
+
+# If the ALLEXTERNALS tag is set to YES all external classes will be listed
+# in the class index. If set to NO only the inherited external classes
+# will be listed.
+
+ALLEXTERNALS = NO
+
+# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
+# in the modules index. If set to NO, only the current project's groups will
+# be listed.
+
+EXTERNAL_GROUPS = YES
+
+# The PERL_PATH should be the absolute path and name of the perl script
+# interpreter (i.e. the result of `which perl').
+
+PERL_PATH = /usr/bin/perl
+
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool
+#---------------------------------------------------------------------------
+
+# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
+# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base
+# or super classes. Setting the tag to NO turns the diagrams off. Note that
+# this option is superseded by the HAVE_DOT option below. This is only a
+# fallback. It is recommended to install and use dot, since it yields more
+# powerful graphs.
+
+CLASS_DIAGRAMS = YES
+
+# You can define message sequence charts within doxygen comments using the \msc
+# command. Doxygen will then run the mscgen tool (see
+# http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the
+# documentation. The MSCGEN_PATH tag allows you to specify the directory where
+# the mscgen tool resides. If left empty the tool is assumed to be found in the
+# default search path.
+
+MSCGEN_PATH =
+
+# If set to YES, the inheritance and collaboration graphs will hide
+# inheritance and usage relations if the target is undocumented
+# or is not a class.
+
+HIDE_UNDOC_RELATIONS = YES
+
+# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
+# available from the path. This tool is part of Graphviz, a graph visualization
+# toolkit from AT&T and Lucent Bell Labs. The other options in this section
+# have no effect if this option is set to NO (the default)
+
+HAVE_DOT = YES
+
+# The DOT_NUM_THREADS specifies the number of dot invocations doxygen is
+# allowed to run in parallel. When set to 0 (the default) doxygen will
+# base this on the number of processors available in the system. You can set it
+# explicitly to a value larger than 0 to get control over the balance
+# between CPU load and processing speed.
+
+DOT_NUM_THREADS = 0
+
+# By default doxygen will write a font called FreeSans.ttf to the output
+# directory and reference it in all dot files that doxygen generates. This
+# font does not include all possible unicode characters however, so when you need
+# these (or just want a differently looking font) you can specify the font name
+# using DOT_FONTNAME. You need need to make sure dot is able to find the font,
+# which can be done by putting it in a standard location or by setting the
+# DOTFONTPATH environment variable or by setting DOT_FONTPATH to the directory
+# containing the font.
+
+DOT_FONTNAME = FreeSans
+
+# The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs.
+# The default size is 10pt.
+
+DOT_FONTSIZE = 10
+
+# By default doxygen will tell dot to use the output directory to look for the
+# FreeSans.ttf font (which doxygen will put there itself). If you specify a
+# different font using DOT_FONTNAME you can set the path where dot
+# can find it using this tag.
+
+DOT_FONTPATH =
+
+# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect inheritance relations. Setting this tag to YES will force the
+# the CLASS_DIAGRAMS tag to NO.
+
+CLASS_GRAPH = YES
+
+# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect implementation dependencies (inheritance, containment, and
+# class references variables) of the class with other documented classes.
+
+COLLABORATION_GRAPH = YES
+
+# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for groups, showing the direct groups dependencies
+
+GROUP_GRAPHS = YES
+
+# If the UML_LOOK tag is set to YES doxygen will generate inheritance and
+# collaboration diagrams in a style similar to the OMG's Unified Modeling
+# Language.
+
+UML_LOOK = YES
+
+# If set to YES, the inheritance and collaboration graphs will show the
+# relations between templates and their instances.
+
+TEMPLATE_RELATIONS = YES
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT
+# tags are set to YES then doxygen will generate a graph for each documented
+# file showing the direct and indirect include dependencies of the file with
+# other documented files.
+
+INCLUDE_GRAPH = YES
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
+# HAVE_DOT tags are set to YES then doxygen will generate a graph for each
+# documented header file showing the documented files that directly or
+# indirectly include this file.
+
+INCLUDED_BY_GRAPH = YES
+
+# If the CALL_GRAPH and HAVE_DOT options are set to YES then
+# doxygen will generate a call dependency graph for every global function
+# or class method. Note that enabling this option will significantly increase
+# the time of a run. So in most cases it will be better to enable call graphs
+# for selected functions only using the \callgraph command.
+
+CALL_GRAPH = YES
+
+# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then
+# doxygen will generate a caller dependency graph for every global function
+# or class method. Note that enabling this option will significantly increase
+# the time of a run. So in most cases it will be better to enable caller
+# graphs for selected functions only using the \callergraph command.
+
+CALLER_GRAPH = NO
+
+# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
+# will graphical hierarchy of all classes instead of a textual one.
+
+GRAPHICAL_HIERARCHY = YES
+
+# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES
+# then doxygen will show the dependencies a directory has on other directories
+# in a graphical way. The dependency relations are determined by the #include
+# relations between the files in the directories.
+
+DIRECTORY_GRAPH = YES
+
+# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+# generated by dot. Possible values are png, jpg, or gif
+# If left blank png will be used.
+
+DOT_IMAGE_FORMAT = gif
+
+# The tag DOT_PATH can be used to specify the path where the dot tool can be
+# found. If left blank, it is assumed the dot tool can be found in the path.
+
+DOT_PATH =
+
+# The DOTFILE_DIRS tag can be used to specify one or more directories that
+# contain dot files that are included in the documentation (see the
+# \dotfile command).
+
+DOTFILE_DIRS =
+
+# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of
+# nodes that will be shown in the graph. If the number of nodes in a graph
+# becomes larger than this value, doxygen will truncate the graph, which is
+# visualized by representing a node as a red box. Note that doxygen if the
+# number of direct children of the root node in a graph is already larger than
+# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note
+# that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
+
+DOT_GRAPH_MAX_NODES = 50
+
+# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
+# graphs generated by dot. A depth value of 3 means that only nodes reachable
+# from the root by following a path via at most 3 edges will be shown. Nodes
+# that lay further from the root node will be omitted. Note that setting this
+# option to 1 or 2 may greatly reduce the computation time needed for large
+# code bases. Also note that the size of a graph can be further restricted by
+# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.
+
+MAX_DOT_GRAPH_DEPTH = 0
+
+# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
+# background. This is disabled by default, because dot on Windows does not
+# seem to support this out of the box. Warning: Depending on the platform used,
+# enabling this option may lead to badly anti-aliased labels on the edges of
+# a graph (i.e. they become hard to read).
+
+DOT_TRANSPARENT = NO
+
+# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output
+# files in one run (i.e. multiple -o and -T options on the command line). This
+# makes dot run faster, but since only newer versions of dot (>1.8.10)
+# support this, this feature is disabled by default.
+
+DOT_MULTI_TARGETS = YES
+
+# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
+# generate a legend page explaining the meaning of the various boxes and
+# arrows in the dot generated graphs.
+
+GENERATE_LEGEND = YES
+
+# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
+# remove the intermediate dot files that are used to generate
+# the various graphs.
+
+DOT_CLEANUP = YES
diff --git a/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/gcc/Makefile b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/gcc/Makefile
new file mode 100644
index 00000000..ed8eb761
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/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/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/gcc/asf.h b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/gcc/asf.h
new file mode 100644
index 00000000..c2d1c884
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/gcc/asf.h
@@ -0,0 +1,133 @@
+/**
+ * \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: 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 PHY Sniffer Interface Module
+#include <sniffer_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: Part identification macros
+#include <parts.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: SUPC - Supply Controller
+#include <supc.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: pio_handler support enabled
+#include <pio_handler.h>
+
+#endif // ASF_H
diff --git a/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/gcc/config.mk b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/gcc/config.mk
new file mode 100644
index 00000000..09b26e15
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/gcc/config.mk
@@ -0,0 +1,185 @@
+#
+# 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_phy_sniffer_tool_flash.elf
+TARGET_SRAM = apps_phy_sniffer_tool_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/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/supc/supc.c \
+ sam/drivers/tc/tc.c \
+ sam/drivers/uart/uart.c \
+ sam/drivers/usart/usart.c \
+ sam/services/plc/buart_if/buart_if.c \
+ sam/services/plc/busart_if/busart_if.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/prime/phy/atpl230/addons/sniffer_if/sniffer_if.c \
+ thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/phy_sniffer_tool.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/pdc \
+ sam/drivers/pdc/pdc_uart_example \
+ sam/drivers/pio \
+ sam/drivers/pmc \
+ sam/drivers/spi \
+ sam/drivers/supc \
+ sam/drivers/tc \
+ sam/drivers/uart \
+ sam/drivers/usart \
+ sam/services/plc/buart_if \
+ sam/services/plc/busart_if \
+ 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/prime/phy/atpl230/addons/sniffer_if \
+ thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool \
+ thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db \
+ thirdparty/prime/phy/atpl230/coupling_config \
+ thirdparty/prime/phy/atpl230/include \
+ thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/gcc
+
+# Additional search paths for libraries.
+LIB_PATH = \
+ thirdparty/CMSIS/Lib/GCC
+
+# List of libraries to use during linking.
+LIBS = \
+ arm_cortexM4l_math \
+ m
+
+# Path relative to top level directory pointing to a linker script.
+LINKER_SCRIPT_FLASH = sam/utils/linker_scripts/sam4cm/gcc/sam4cmp16c_0_flash.ld
+LINKER_SCRIPT_SRAM = sam/utils/linker_scripts/sam4cm/gcc/sam4cmp16c_0_sram.ld
+
+# Path relative to top level directory pointing to a linker script.
+DEBUG_SCRIPT_FLASH = sam/boards/sam4cmp_db/debug_scripts/gcc/sam4cmp_db_flash_0.gdb
+DEBUG_SCRIPT_SRAM = sam/boards/sam4cmp_db/debug_scripts/gcc/sam4cmp_db_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=SAM4CMP_DB \
+ -D __SAM4CMP16C_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/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/iar/apps_phy_sniffer_tool.eww b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/iar/apps_phy_sniffer_tool.eww
new file mode 100644
index 00000000..d99a7f6b
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/iar/apps_phy_sniffer_tool.eww
@@ -0,0 +1,6 @@
+<workspace>
+ <batchBuild></batchBuild>
+ <project>
+ <path>$WS_DIR$\apps_phy_sniffer_tool_flash.ewp</path>
+ </project>
+</workspace>
diff --git a/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/iar/apps_phy_sniffer_tool_flash.ewd b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/iar/apps_phy_sniffer_tool_flash.ewd
new file mode 100644
index 00000000..6d44aa79
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/iar/apps_phy_sniffer_tool_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/sam4cmp_db/debug_scripts/iar/sam4cmp_db_flash_0.mac</state>
+ </option>
+ <option>
+ <name>MemOverride</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>MemFile</name>
+ <state>$TOOLKIT_DIR$\CONFIG\debugger\Atmel\ATSAM4CMP16C_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\sam4cmp16c\sam4cmp16c-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/sam4cmp_db/debug_scripts/iar/sam4cmp_db_flash_0.mac</state>
+ </option>
+ <option>
+ <name>MemOverride</name>
+ <state>0</state>
+ </option>
+ <option>
+ <name>MemFile</name>
+ <state>$TOOLKIT_DIR$\CONFIG\debugger\Atmel\ATSAM4CMP16C_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\sam4cmp16c\sam4cmp16c-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/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/iar/apps_phy_sniffer_tool_flash.ewp b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/iar/apps_phy_sniffer_tool_flash.ewp
new file mode 100644
index 00000000..618bff7d
--- /dev/null
+++ b/thirdparty/prime/phy/atpl230/apps/phy_sniffer_tool/sam4cmp16c_sam4cmp_db/iar/apps_phy_sniffer_tool_flash.ewp
@@ -0,0 +1,2586 @@
+<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>ATSAM4CMP16C_0 Atmel ATSAM4CMP16C 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>__SAM4CMP16C_0__</state>
+ <state>ARM_MATH_CM4=true</state>
+ <state>BOARD=SAM4CMP_DB</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$/../../../../include</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/boards</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/preprocessor</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/pmc</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/header_files</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/boards/sam4cmp_db</state>
+ <state>$PROJ_DIR$/../..</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/services/serial</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/cmsis/sam4cm/source/templates</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/spi</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/supc</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/services/plc/busart_if</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/utils/stdio/stdio_serial</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/services/clock</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/boards</state>
+ <state>$PROJ_DIR$/..</state>
+ <state>$PROJ_DIR$/../../../../addons/sniffer_if</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/drivers/usart</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/services/serial/sam_uart</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/services/plc/buart_if</state>
+ <state>$PROJ_DIR$/../../../../coupling_config</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$/../../../../../../../../sam/utils/cmsis/sam4cm/include</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/services/plc/pcrc</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>__SAM4CMP16C_0__</state>
+ <state>ARM_MATH_CM4=true</state>
+ <state>BOARD=SAM4CMP_DB</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$/../../../../include</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/boards</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/preprocessor</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/pmc</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/header_files</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/boards/sam4cmp_db</state>
+ <state>$PROJ_DIR$/../..</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/services/serial</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/cmsis/sam4cm/source/templates</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/spi</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/supc</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/services/plc/busart_if</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/utils/stdio/stdio_serial</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/services/clock</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/boards</state>
+ <state>$PROJ_DIR$/..</state>
+ <state>$PROJ_DIR$/../../../../addons/sniffer_if</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/drivers/usart</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/services/serial/sam_uart</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/services/plc/buart_if</state>
+ <state>$PROJ_DIR$/../../../../coupling_config</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$/../../../../../../../../sam/utils/cmsis/sam4cm/include</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/services/plc/pcrc</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_phy_sniffer_tool_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_phy_sniffer_tool_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/sam4cm/iar/sam4cmp16c_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>ATSAM4CMP16C_0 Atmel ATSAM4CMP16C 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>__SAM4CMP16C_0__</state>
+ <state>ARM_MATH_CM4=true</state>
+ <state>BOARD=SAM4CMP_DB</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$/../../../../include</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/boards</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/preprocessor</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/pmc</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/header_files</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/boards/sam4cmp_db</state>
+ <state>$PROJ_DIR$/../..</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/services/serial</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/cmsis/sam4cm/source/templates</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/spi</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/supc</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/services/plc/busart_if</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/utils/stdio/stdio_serial</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/services/clock</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/boards</state>
+ <state>$PROJ_DIR$/..</state>
+ <state>$PROJ_DIR$/../../../../addons/sniffer_if</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/drivers/usart</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/services/serial/sam_uart</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/services/plc/buart_if</state>
+ <state>$PROJ_DIR$/../../../../coupling_config</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$/../../../../../../../../sam/utils/cmsis/sam4cm/include</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/services/plc/pcrc</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>__SAM4CMP16C_0__</state>
+ <state>ARM_MATH_CM4=true</state>
+ <state>BOARD=SAM4CMP_DB</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$/../../../../include</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/boards</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/preprocessor</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/pmc</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/header_files</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/boards/sam4cmp_db</state>
+ <state>$PROJ_DIR$/../..</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/services/serial</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/utils/cmsis/sam4cm/source/templates</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/spi</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/drivers/supc</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/services/plc/busart_if</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/utils/stdio/stdio_serial</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/services/clock</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/boards</state>
+ <state>$PROJ_DIR$/..</state>
+ <state>$PROJ_DIR$/../../../../addons/sniffer_if</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/drivers/usart</state>
+ <state>$PROJ_DIR$/../../../../../../../../common/services/serial/sam_uart</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/services/plc/buart_if</state>
+ <state>$PROJ_DIR$/../../../../coupling_config</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$/../../../../../../../../sam/utils/cmsis/sam4cm/include</state>
+ <state>$PROJ_DIR$/../../../../../../../../sam/services/plc/pcrc</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_phy_sniffer_tool_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_phy_sniffer_tool_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/sam4cm/iar/sam4cmp16c_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>
+ <