60 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			60 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
|  | /****************************************************************************
 | ||
|  | 
 | ||
|  | Copyright(c) 2019 by Aerospace C.Power (Chongqing) Microelectronics. ALL RIGHTS RESERVED. | ||
|  | 
 | ||
|  | This Information is proprietary to Aerospace C.Power (Chongqing) Microelectronics and MAY NOT | ||
|  | be copied by any method or incorporated into another program without | ||
|  | the express written consent of Aerospace C.Power. This Information or any portion | ||
|  | thereof remains the property of Aerospace C.Power. The Information contained herein | ||
|  | is believed to be accurate and Aerospace C.Power assumes no responsibility or | ||
|  | liability for its use in any way and conveys no license or title under | ||
|  | any patent or copyright and makes no representation or warranty that this | ||
|  | Information is free from patent or copyright infringement. | ||
|  | 
 | ||
|  | ****************************************************************************/ | ||
|  | #include "os_types.h"
 | ||
|  | #include "os_mem.h"
 | ||
|  | 
 | ||
|  | 
 | ||
|  | #include "iot_io_api.h"
 | ||
|  | #include "iot_cli.h"
 | ||
|  | #include "cli_rf_ic_tool_def.h"
 | ||
|  | #include "cli_rf_ic_tool.h"
 | ||
|  | #include "cli_plc_ic_tool.h"
 | ||
|  | #include "iot_ftm_msg.h"
 | ||
|  | #include "iot_ftm_internal.h"
 | ||
|  | #include "iot_cli_msg_id_definition.h"
 | ||
|  | #include "iot_config.h"
 | ||
|  | 
 | ||
|  | #if IOT_CLI_IC_TOOL_EN
 | ||
|  | 
 | ||
|  | #include "phy_bb.h"
 | ||
|  | #include "phy_phase.h"
 | ||
|  | #include "phy_ada_dump.h"
 | ||
|  | #include "phy_tools.h"
 | ||
|  | #include "hw_phy_init.h"
 | ||
|  | #include "mac_reset.h"
 | ||
|  | 
 | ||
|  | 
 | ||
|  | extern uint32_t phy_ada_dump_entry(uint32_t dump_addr, uint32_t dump_len); | ||
|  | 
 | ||
|  | void cli_plc_ada_dump_handler(iot_pkt_t *buffer, uint32_t len) | ||
|  | { | ||
|  |     cli_kl_cmd_ack ack = { 0 }; | ||
|  |     uint32_t dump_addr; | ||
|  |     uint32_t buf_len; | ||
|  | 
 | ||
|  |     cli_plc_ada_dump *ada_dump = (cli_plc_ada_dump *)iot_pkt_data(buffer); | ||
|  |     buf_len = phy_ada_dump_addr_get(&dump_addr); | ||
|  |     IOT_ASSERT(ada_dump->dump_len <= buf_len); | ||
|  |     os_mem_set((uint32_t *)dump_addr, 0, ada_dump->dump_len); | ||
|  |     iot_printf("plc dump addr:%x len:%d\n", dump_addr, ada_dump->dump_len); | ||
|  |     phy_ada_dump_entry(dump_addr, ada_dump->dump_len); | ||
|  | 
 | ||
|  |     ack.result = 0; | ||
|  | 
 | ||
|  |     cli_send_module_msg(CLI_MODULEID_FTM, | ||
|  |         CLI_MSGID_FTM_PLC_ADA_DUMP, (uint8_t *)&ack, sizeof(ack)); | ||
|  | } | ||
|  | 
 | ||
|  | #endif  /* IOT_CLI_IC_TOOL_EN */
 |