From 865072aac700c463c12e5b83b8f9b2cfa645f100 Mon Sep 17 00:00:00 2001 From: HUOHUO Date: Mon, 21 Apr 2025 10:23:53 -0700 Subject: [PATCH] =?UTF-8?q?=E5=B0=86PCIE=E4=BB=BB=E5=8A=A1=E6=B3=A8?= =?UTF-8?q?=E5=86=8C=E4=B8=BA=E8=A7=A6=E5=8F=91=E4=BB=BB=E5=8A=A1=EF=BC=8C?= =?UTF-8?q?=E5=B0=86=E4=BB=BB=E5=8A=A1=E9=83=A8=E7=BD=B2=E8=BF=81=E7=A7=BB?= =?UTF-8?q?=E5=88=B0APE7=EF=BC=8C=E4=BF=AE=E6=94=B9=E7=8A=B6=E6=80=81?= =?UTF-8?q?=E6=9C=BA=EF=BC=8C=E6=96=B0=E5=A2=9E=E7=AD=89=E5=BE=85RK3588?= =?UTF-8?q?=E8=AE=A1=E7=AE=97=E7=BB=93=E6=9E=9C=E7=9A=84=E4=B8=AD=E9=97=B4?= =?UTF-8?q?=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vscode/settings.json | 4 +- APE3/ApeTask/src/Fucp_Ape3_Init.s.c | 2 +- APE4/ApeTask/src/Fucp_Ape4_Init.s.c | 8 +--- APE5/ApeTask/src/Fucp_Ape5_Init.s.c | 2 +- APE6/ApeTask/src/Fucp_Ape6_Init.s.c | 2 +- .../ApeTask/inc/Fucp_Ape7_pcie_testcase.h | 5 ++- {APE4 => APE7}/ApeTask/inc/hwque.h | 0 {APE4 => APE7}/ApeTask/inc/inter_vector.h | 0 {APE4 => APE7}/ApeTask/inc/jesd_csu_nr_fdd.h | 0 {APE4 => APE7}/ApeTask/inc/jesd_test.h | 0 {APE4 => APE7}/ApeTask/inc/jesd_timer.h | 0 {APE4 => APE7}/ApeTask/inc/log_client.h | 0 {APE4 => APE7}/ApeTask/inc/mem_sections.h | 0 .../ApeTask/inc/msg_transfer_mbuffer.h | 0 {APE4 => APE7}/ApeTask/inc/msg_transfer_mem.h | 0 .../ApeTask/inc/msg_transfer_queue.h | 0 {APE4 => APE7}/ApeTask/inc/osp_io.h | 0 {APE4 => APE7}/ApeTask/inc/osp_msg.h | 0 {APE4 => APE7}/ApeTask/inc/osp_sw_queue.h | 0 {APE4 => APE7}/ApeTask/inc/osp_task.h | 0 {APE4 => APE7}/ApeTask/inc/osp_timer.h | 0 {APE4 => APE7}/ApeTask/inc/osp_type_def.h | 0 {APE4 => APE7}/ApeTask/inc/pet_sm_mgt.h | 0 {APE4 => APE7}/ApeTask/inc/phy_para.h | 0 .../ApeTask/inc/platform/inc/lib_debug_init.h | 0 .../ApeTask/inc/platform/inc/log_client.h | 0 .../ApeTask/inc/platform/inc/spu_hw_queue.h | 0 .../ApeTask/inc/platform/inc/spu_log.h | 0 .../ApeTask/inc/platform/inc/spu_shell.h | 0 .../ApeTask/inc/platform/inc/spu_sw_queue.h | 0 .../ApeTask/inc/platform/inc/spu_version.h | 0 .../inc/platform/src/lib_debug_init.s.c | 0 .../ApeTask/inc/platform/src/log_client.s.c | 0 .../ApeTask/inc/platform/src/spu_hw_queue.s.c | 0 .../ApeTask/inc/platform/src/spu_log.s.c | 0 .../ApeTask/inc/platform/src/spu_shell.s.c | 0 .../ApeTask/inc/platform/src/spu_sw_queue.s.c | 0 .../ApeTask/inc/platform/src/spu_version.c | 0 {APE4 => APE7}/ApeTask/inc/rfm1_drv.h | 0 {APE4 => APE7}/ApeTask/inc/smartos.h | 0 {APE4 => APE7}/ApeTask/inc/spinlock.h | 0 {APE4 => APE7}/ApeTask/inc/spu_log.h | 0 {APE4 => APE7}/ApeTask/inc/stc_timer.h | 0 {APE4 => APE7}/ApeTask/inc/typedef.h | 0 {APE4 => APE7}/ApeTask/inc/ucp_cpri.h | 0 {APE4 => APE7}/ApeTask/inc/ucp_drv_common.h | 0 {APE4 => APE7}/ApeTask/inc/ucp_handshake.h | 0 {APE4 => APE7}/ApeTask/inc/ucp_js_subcrg.h | 0 {APE4 => APE7}/ApeTask/inc/ucp_param.h | 0 {APE4 => APE7}/ApeTask/inc/ucp_port.h | 0 {APE4 => APE7}/ApeTask/inc/ucp_printf.h | 0 {APE4 => APE7}/ApeTask/inc/ucp_tick.h | 0 {APE4 => APE7}/ApeTask/inc/ucp_utility.h | 0 APE7/ApeTask/src/Fucp_Ape7_Init.s.c | 8 +++- .../ApeTask/src/Fucp_Ape7_pcie_testcase.s.c | 37 +++++++++++++++-- .../Receiver_symb/src/receiver_Symb_Proc.s.c | 4 +- APELib/Receiver_sync/inc/receiver_sync_func.h | 3 +- .../Receiver_sync/inc/receiver_sync_struct.h | 1 + .../Receiver_sync/src/receiver_Sync_Proc.s.c | 41 ++++++++++++------- .../inc/receiver_sync_first_struct.h | 1 + .../src/receiver_Sync_First_Proc.s.c | 2 +- Common/inc/task_define.h | 12 +++--- Interface/interface_rec_sync2_pcie.h | 21 ++++++++++ 63 files changed, 113 insertions(+), 40 deletions(-) rename APE4/ApeTask/inc/Fucp_Ape4_pcie_testcase.h => APE7/ApeTask/inc/Fucp_Ape7_pcie_testcase.h (86%) rename {APE4 => APE7}/ApeTask/inc/hwque.h (100%) rename {APE4 => APE7}/ApeTask/inc/inter_vector.h (100%) rename {APE4 => APE7}/ApeTask/inc/jesd_csu_nr_fdd.h (100%) rename {APE4 => APE7}/ApeTask/inc/jesd_test.h (100%) rename {APE4 => APE7}/ApeTask/inc/jesd_timer.h (100%) rename {APE4 => APE7}/ApeTask/inc/log_client.h (100%) rename {APE4 => APE7}/ApeTask/inc/mem_sections.h (100%) rename {APE4 => APE7}/ApeTask/inc/msg_transfer_mbuffer.h (100%) rename {APE4 => APE7}/ApeTask/inc/msg_transfer_mem.h (100%) rename {APE4 => APE7}/ApeTask/inc/msg_transfer_queue.h (100%) rename {APE4 => APE7}/ApeTask/inc/osp_io.h (100%) rename {APE4 => APE7}/ApeTask/inc/osp_msg.h (100%) rename {APE4 => APE7}/ApeTask/inc/osp_sw_queue.h (100%) rename {APE4 => APE7}/ApeTask/inc/osp_task.h (100%) rename {APE4 => APE7}/ApeTask/inc/osp_timer.h (100%) rename {APE4 => APE7}/ApeTask/inc/osp_type_def.h (100%) rename {APE4 => APE7}/ApeTask/inc/pet_sm_mgt.h (100%) rename {APE4 => APE7}/ApeTask/inc/phy_para.h (100%) rename {APE4 => APE7}/ApeTask/inc/platform/inc/lib_debug_init.h (100%) rename {APE4 => APE7}/ApeTask/inc/platform/inc/log_client.h (100%) rename {APE4 => APE7}/ApeTask/inc/platform/inc/spu_hw_queue.h (100%) rename {APE4 => APE7}/ApeTask/inc/platform/inc/spu_log.h (100%) rename {APE4 => APE7}/ApeTask/inc/platform/inc/spu_shell.h (100%) rename {APE4 => APE7}/ApeTask/inc/platform/inc/spu_sw_queue.h (100%) rename {APE4 => APE7}/ApeTask/inc/platform/inc/spu_version.h (100%) rename {APE4 => APE7}/ApeTask/inc/platform/src/lib_debug_init.s.c (100%) rename {APE4 => APE7}/ApeTask/inc/platform/src/log_client.s.c (100%) rename {APE4 => APE7}/ApeTask/inc/platform/src/spu_hw_queue.s.c (100%) rename {APE4 => APE7}/ApeTask/inc/platform/src/spu_log.s.c (100%) rename {APE4 => APE7}/ApeTask/inc/platform/src/spu_shell.s.c (100%) rename {APE4 => APE7}/ApeTask/inc/platform/src/spu_sw_queue.s.c (100%) rename {APE4 => APE7}/ApeTask/inc/platform/src/spu_version.c (100%) rename {APE4 => APE7}/ApeTask/inc/rfm1_drv.h (100%) rename {APE4 => APE7}/ApeTask/inc/smartos.h (100%) rename {APE4 => APE7}/ApeTask/inc/spinlock.h (100%) rename {APE4 => APE7}/ApeTask/inc/spu_log.h (100%) rename {APE4 => APE7}/ApeTask/inc/stc_timer.h (100%) rename {APE4 => APE7}/ApeTask/inc/typedef.h (100%) rename {APE4 => APE7}/ApeTask/inc/ucp_cpri.h (100%) rename {APE4 => APE7}/ApeTask/inc/ucp_drv_common.h (100%) rename {APE4 => APE7}/ApeTask/inc/ucp_handshake.h (100%) rename {APE4 => APE7}/ApeTask/inc/ucp_js_subcrg.h (100%) rename {APE4 => APE7}/ApeTask/inc/ucp_param.h (100%) rename {APE4 => APE7}/ApeTask/inc/ucp_port.h (100%) rename {APE4 => APE7}/ApeTask/inc/ucp_printf.h (100%) rename {APE4 => APE7}/ApeTask/inc/ucp_tick.h (100%) rename {APE4 => APE7}/ApeTask/inc/ucp_utility.h (100%) rename APE4/ApeTask/src/Fucp_Ape4_pcie_testcase.s.c => APE7/ApeTask/src/Fucp_Ape7_pcie_testcase.s.c (91%) create mode 100644 Interface/interface_rec_sync2_pcie.h diff --git a/.vscode/settings.json b/.vscode/settings.json index bd93548..01cc7e3 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -35,6 +35,8 @@ "fft4096int32.h": "c", "channelestimpl.h": "c", "ucps2.h": "c", - "channelest.h": "c" + "channelest.h": "c", + "interface_rec_sync2_pcie.h": "c", + "fucp_ape7_pcie_testcase.h": "c" } } \ No newline at end of file diff --git a/APE3/ApeTask/src/Fucp_Ape3_Init.s.c b/APE3/ApeTask/src/Fucp_Ape3_Init.s.c index 874d943..e975d93 100644 --- a/APE3/ApeTask/src/Fucp_Ape3_Init.s.c +++ b/APE3/ApeTask/src/Fucp_Ape3_Init.s.c @@ -53,7 +53,7 @@ void Phy_Task_Ape3_Reg() { // osp_task_info_ex ape3_event_task_info = {50, "ape3_event_task1", 50, 2048, OSP_EVENT_TYPE, 0, 0, 0, NULL, (OSP_TASKENTRY_FUNC)ape3_event_task}; // osp_task_info_ex ape3_event_task_info_del = {51, "ape3_event_task_del1", 51, 2048, OSP_EVENT_TYPE, 0, 0, 0, NULL, (OSP_TASKENTRY_FUNC)ape3_event_task_del}; - osp_task_info_ex mgr_task = {PHY_TASK_RECIEVER_SYMB, "Receiver_Symb", PHY_TASK_PRI_RECEIVER_SYMB, 4096, OSP_EVENT_TYPE, 0x000, 0x000, 0, (OSP_TASKINIT_FUNC)Receiver_Symb_Init, (OSP_TASKENTRY_FUNC)Receiver_Symb_Task}; + osp_task_info_ex mgr_task = {PHY_TASK_RECEIVER_SYMB, "Receiver_Symb", PHY_TASK_PRI_RECEIVER_SYMB, 4096, OSP_EVENT_TYPE, 0x000, 0x000, 0, (OSP_TASKINIT_FUNC)Receiver_Symb_Init, (OSP_TASKENTRY_FUNC)Receiver_Symb_Task}; // osp_task_create(&ape3_event_task_info); // osp_task_create(&ape3_event_task_info_del); diff --git a/APE4/ApeTask/src/Fucp_Ape4_Init.s.c b/APE4/ApeTask/src/Fucp_Ape4_Init.s.c index dcd9a94..9df622d 100644 --- a/APE4/ApeTask/src/Fucp_Ape4_Init.s.c +++ b/APE4/ApeTask/src/Fucp_Ape4_Init.s.c @@ -19,7 +19,7 @@ #include "Frame_test.h" #include "receiver_sync_func.h" #include "trace.h" -#include "Fucp_Ape4_pcie_testcase.h" + /**************************function******************************/ @@ -30,18 +30,14 @@ void ape4_event_task(uint32_t addr, uint32_t size) uint32_t ape_id = get_core_id(); osp_task_info_ex mgr_task2 = - {PHY_TASK_RECIEVER_SYNC, "Receiver_Sync", PHY_TASK_PRI_RECEIVER_SYNC, 2048, OSP_TIMER_TYPE, 0x000, 0x3FF, 50, (OSP_TASKINIT_FUNC)Receiver_Sync_Init, (OSP_TASKENTRY_FUNC)Receiver_Sync_Task}; + {PHY_TASK_RECEIVER_SYNC, "Receiver_Sync", PHY_TASK_PRI_RECEIVER_SYNC, 2048, OSP_TIMER_TYPE, 0x000, 0x3FF, 50, (OSP_TASKINIT_FUNC)Receiver_Sync_Init, (OSP_TASKENTRY_FUNC)Receiver_Sync_Task}; osp_task_info_ex mgr_task3 = {PHY_TASK_TEST, "Test_Task", PHY_TASK_PRI_TEST, 4096, OSP_TIMER_TYPE, 0x000, 0x3FF, 50, NULL, (OSP_TASKENTRY_FUNC)Test_Task}; - osp_task_info_ex pcie_normal_task_info = {PCIE_TASK_RECEIVER, (int8_t*)"pcie_normal_task", PCIE_TASK_PRI_RECEIVER, 4096, OSP_NORMAL_TYPE, 1, 0, 0, NULL, (OSP_TASKENTRY_FUNC)pcie_test_task_func}; TRACE(TRACE_RECV_INIT_ADDR, 2, 1); osp_task_create(&mgr_task2); - test_case_cfgpar_pcie(); - - osp_task_create(&pcie_normal_task_info); TRACE(TRACE_RECV_INIT_ADDR, 3, 1); LOG_INFO_S("APE4 finish task create!\n"); diff --git a/APE5/ApeTask/src/Fucp_Ape5_Init.s.c b/APE5/ApeTask/src/Fucp_Ape5_Init.s.c index e82649f..a67e315 100644 --- a/APE5/ApeTask/src/Fucp_Ape5_Init.s.c +++ b/APE5/ApeTask/src/Fucp_Ape5_Init.s.c @@ -53,7 +53,7 @@ void Phy_Task_Ape5_Reg() { // osp_task_info_ex ape5_event_task_info = {50, "ape5_event_task1", 50, 2048, OSP_EVENT_TYPE, 0, 0, 0, NULL, (OSP_TASKENTRY_FUNC)ape5_event_task}; // osp_task_info_ex ape5_event_task_info_del = {51, "ape5_event_task_del1", 51, 2048, OSP_EVENT_TYPE, 0, 0, 0, NULL, (OSP_TASKENTRY_FUNC)ape5_event_task_del}; - osp_task_info_ex mgr_task = {PHY_TASK_RECIEVER_SYMB, "Receiver_Symb", PHY_TASK_PRI_RECEIVER_SYMB, 4096, OSP_EVENT_TYPE, 0x000, 0x000, 0, (OSP_TASKINIT_FUNC)Receiver_Symb_Init, (OSP_TASKENTRY_FUNC)Receiver_Symb_Task}; + osp_task_info_ex mgr_task = {PHY_TASK_RECEIVER_SYMB, "Receiver_Symb", PHY_TASK_PRI_RECEIVER_SYMB, 4096, OSP_EVENT_TYPE, 0x000, 0x000, 0, (OSP_TASKINIT_FUNC)Receiver_Symb_Init, (OSP_TASKENTRY_FUNC)Receiver_Symb_Task}; // osp_task_create(&ape5_event_task_info); // osp_task_create(&ape5_event_task_info_del); diff --git a/APE6/ApeTask/src/Fucp_Ape6_Init.s.c b/APE6/ApeTask/src/Fucp_Ape6_Init.s.c index 04a0bd3..90848be 100644 --- a/APE6/ApeTask/src/Fucp_Ape6_Init.s.c +++ b/APE6/ApeTask/src/Fucp_Ape6_Init.s.c @@ -55,7 +55,7 @@ void Phy_Task_Ape6_Reg() // osp_task_info_ex ape6_event_task_info_del = {51, "ape6_event_task_del1", 51, 2048, OSP_EVENT_TYPE, 0, 0, 0, NULL, (OSP_TASKENTRY_FUNC)ape6_event_task_del}; osp_task_info_ex mgr_task = - {PHY_TASK_RECIEVER_BIT, "Receiver_Bit", PHY_TASK_PRI_RECEIVER_BIT, 4096, OSP_EVENT_TYPE, 0x000, 0x000, 0, (OSP_TASKINIT_FUNC)Receiver_Bit_Init, (OSP_TASKENTRY_FUNC)Receiver_Bit_Task}; + {PHY_TASK_RECEIVER_BIT, "Receiver_Bit", PHY_TASK_PRI_RECEIVER_BIT, 4096, OSP_EVENT_TYPE, 0x000, 0x000, 0, (OSP_TASKINIT_FUNC)Receiver_Bit_Init, (OSP_TASKENTRY_FUNC)Receiver_Bit_Task}; // osp_task_create(&ape6_event_task_info); // osp_task_create(&ape6_event_task_info_del); osp_task_create(&mgr_task); diff --git a/APE4/ApeTask/inc/Fucp_Ape4_pcie_testcase.h b/APE7/ApeTask/inc/Fucp_Ape7_pcie_testcase.h similarity index 86% rename from APE4/ApeTask/inc/Fucp_Ape4_pcie_testcase.h rename to APE7/ApeTask/inc/Fucp_Ape7_pcie_testcase.h index 30792f5..e85fbf1 100644 --- a/APE4/ApeTask/inc/Fucp_Ape4_pcie_testcase.h +++ b/APE7/ApeTask/inc/Fucp_Ape7_pcie_testcase.h @@ -13,7 +13,7 @@ // -FHDR------------------------------------------------------------ #ifndef __PCIE_TESTCASE_H__ #define __PCIE_TESTCASE_H__ - +#include "interface_rec_sync2_pcie.h" uint32_t pcie_rx_callback_data(const char* buf,uint32_t payloadSize); uint32_t pcie_rx_callback_ctrl(const char* buf,uint32_t payloadSize); uint32_t pcie_rx_callback_oam(const char* buf,uint32_t payloadSize); @@ -22,7 +22,8 @@ void test_case_sendmsg_pcie(); void test_case_recv_msg_pcie(); void test_speed_sendmsg_pcie(); void test_speed_recv_msg_pcie(); -void pcie_test_task_func(void); +void pcie_test_task_func(receiver_sync2pcie_t* msg_ptr, uint32_t msg_len); + #endif diff --git a/APE4/ApeTask/inc/hwque.h b/APE7/ApeTask/inc/hwque.h similarity index 100% rename from APE4/ApeTask/inc/hwque.h rename to APE7/ApeTask/inc/hwque.h diff --git a/APE4/ApeTask/inc/inter_vector.h b/APE7/ApeTask/inc/inter_vector.h similarity index 100% rename from APE4/ApeTask/inc/inter_vector.h rename to APE7/ApeTask/inc/inter_vector.h diff --git a/APE4/ApeTask/inc/jesd_csu_nr_fdd.h b/APE7/ApeTask/inc/jesd_csu_nr_fdd.h similarity index 100% rename from APE4/ApeTask/inc/jesd_csu_nr_fdd.h rename to APE7/ApeTask/inc/jesd_csu_nr_fdd.h diff --git a/APE4/ApeTask/inc/jesd_test.h b/APE7/ApeTask/inc/jesd_test.h similarity index 100% rename from APE4/ApeTask/inc/jesd_test.h rename to APE7/ApeTask/inc/jesd_test.h diff --git a/APE4/ApeTask/inc/jesd_timer.h b/APE7/ApeTask/inc/jesd_timer.h similarity index 100% rename from APE4/ApeTask/inc/jesd_timer.h rename to APE7/ApeTask/inc/jesd_timer.h diff --git a/APE4/ApeTask/inc/log_client.h b/APE7/ApeTask/inc/log_client.h similarity index 100% rename from APE4/ApeTask/inc/log_client.h rename to APE7/ApeTask/inc/log_client.h diff --git a/APE4/ApeTask/inc/mem_sections.h b/APE7/ApeTask/inc/mem_sections.h similarity index 100% rename from APE4/ApeTask/inc/mem_sections.h rename to APE7/ApeTask/inc/mem_sections.h diff --git a/APE4/ApeTask/inc/msg_transfer_mbuffer.h b/APE7/ApeTask/inc/msg_transfer_mbuffer.h similarity index 100% rename from APE4/ApeTask/inc/msg_transfer_mbuffer.h rename to APE7/ApeTask/inc/msg_transfer_mbuffer.h diff --git a/APE4/ApeTask/inc/msg_transfer_mem.h b/APE7/ApeTask/inc/msg_transfer_mem.h similarity index 100% rename from APE4/ApeTask/inc/msg_transfer_mem.h rename to APE7/ApeTask/inc/msg_transfer_mem.h diff --git a/APE4/ApeTask/inc/msg_transfer_queue.h b/APE7/ApeTask/inc/msg_transfer_queue.h similarity index 100% rename from APE4/ApeTask/inc/msg_transfer_queue.h rename to APE7/ApeTask/inc/msg_transfer_queue.h diff --git a/APE4/ApeTask/inc/osp_io.h b/APE7/ApeTask/inc/osp_io.h similarity index 100% rename from APE4/ApeTask/inc/osp_io.h rename to APE7/ApeTask/inc/osp_io.h diff --git a/APE4/ApeTask/inc/osp_msg.h b/APE7/ApeTask/inc/osp_msg.h similarity index 100% rename from APE4/ApeTask/inc/osp_msg.h rename to APE7/ApeTask/inc/osp_msg.h diff --git a/APE4/ApeTask/inc/osp_sw_queue.h b/APE7/ApeTask/inc/osp_sw_queue.h similarity index 100% rename from APE4/ApeTask/inc/osp_sw_queue.h rename to APE7/ApeTask/inc/osp_sw_queue.h diff --git a/APE4/ApeTask/inc/osp_task.h b/APE7/ApeTask/inc/osp_task.h similarity index 100% rename from APE4/ApeTask/inc/osp_task.h rename to APE7/ApeTask/inc/osp_task.h diff --git a/APE4/ApeTask/inc/osp_timer.h b/APE7/ApeTask/inc/osp_timer.h similarity index 100% rename from APE4/ApeTask/inc/osp_timer.h rename to APE7/ApeTask/inc/osp_timer.h diff --git a/APE4/ApeTask/inc/osp_type_def.h b/APE7/ApeTask/inc/osp_type_def.h similarity index 100% rename from APE4/ApeTask/inc/osp_type_def.h rename to APE7/ApeTask/inc/osp_type_def.h diff --git a/APE4/ApeTask/inc/pet_sm_mgt.h b/APE7/ApeTask/inc/pet_sm_mgt.h similarity index 100% rename from APE4/ApeTask/inc/pet_sm_mgt.h rename to APE7/ApeTask/inc/pet_sm_mgt.h diff --git a/APE4/ApeTask/inc/phy_para.h b/APE7/ApeTask/inc/phy_para.h similarity index 100% rename from APE4/ApeTask/inc/phy_para.h rename to APE7/ApeTask/inc/phy_para.h diff --git a/APE4/ApeTask/inc/platform/inc/lib_debug_init.h b/APE7/ApeTask/inc/platform/inc/lib_debug_init.h similarity index 100% rename from APE4/ApeTask/inc/platform/inc/lib_debug_init.h rename to APE7/ApeTask/inc/platform/inc/lib_debug_init.h diff --git a/APE4/ApeTask/inc/platform/inc/log_client.h b/APE7/ApeTask/inc/platform/inc/log_client.h similarity index 100% rename from APE4/ApeTask/inc/platform/inc/log_client.h rename to APE7/ApeTask/inc/platform/inc/log_client.h diff --git a/APE4/ApeTask/inc/platform/inc/spu_hw_queue.h b/APE7/ApeTask/inc/platform/inc/spu_hw_queue.h similarity index 100% rename from APE4/ApeTask/inc/platform/inc/spu_hw_queue.h rename to APE7/ApeTask/inc/platform/inc/spu_hw_queue.h diff --git a/APE4/ApeTask/inc/platform/inc/spu_log.h b/APE7/ApeTask/inc/platform/inc/spu_log.h similarity index 100% rename from APE4/ApeTask/inc/platform/inc/spu_log.h rename to APE7/ApeTask/inc/platform/inc/spu_log.h diff --git a/APE4/ApeTask/inc/platform/inc/spu_shell.h b/APE7/ApeTask/inc/platform/inc/spu_shell.h similarity index 100% rename from APE4/ApeTask/inc/platform/inc/spu_shell.h rename to APE7/ApeTask/inc/platform/inc/spu_shell.h diff --git a/APE4/ApeTask/inc/platform/inc/spu_sw_queue.h b/APE7/ApeTask/inc/platform/inc/spu_sw_queue.h similarity index 100% rename from APE4/ApeTask/inc/platform/inc/spu_sw_queue.h rename to APE7/ApeTask/inc/platform/inc/spu_sw_queue.h diff --git a/APE4/ApeTask/inc/platform/inc/spu_version.h b/APE7/ApeTask/inc/platform/inc/spu_version.h similarity index 100% rename from APE4/ApeTask/inc/platform/inc/spu_version.h rename to APE7/ApeTask/inc/platform/inc/spu_version.h diff --git a/APE4/ApeTask/inc/platform/src/lib_debug_init.s.c b/APE7/ApeTask/inc/platform/src/lib_debug_init.s.c similarity index 100% rename from APE4/ApeTask/inc/platform/src/lib_debug_init.s.c rename to APE7/ApeTask/inc/platform/src/lib_debug_init.s.c diff --git a/APE4/ApeTask/inc/platform/src/log_client.s.c b/APE7/ApeTask/inc/platform/src/log_client.s.c similarity index 100% rename from APE4/ApeTask/inc/platform/src/log_client.s.c rename to APE7/ApeTask/inc/platform/src/log_client.s.c diff --git a/APE4/ApeTask/inc/platform/src/spu_hw_queue.s.c b/APE7/ApeTask/inc/platform/src/spu_hw_queue.s.c similarity index 100% rename from APE4/ApeTask/inc/platform/src/spu_hw_queue.s.c rename to APE7/ApeTask/inc/platform/src/spu_hw_queue.s.c diff --git a/APE4/ApeTask/inc/platform/src/spu_log.s.c b/APE7/ApeTask/inc/platform/src/spu_log.s.c similarity index 100% rename from APE4/ApeTask/inc/platform/src/spu_log.s.c rename to APE7/ApeTask/inc/platform/src/spu_log.s.c diff --git a/APE4/ApeTask/inc/platform/src/spu_shell.s.c b/APE7/ApeTask/inc/platform/src/spu_shell.s.c similarity index 100% rename from APE4/ApeTask/inc/platform/src/spu_shell.s.c rename to APE7/ApeTask/inc/platform/src/spu_shell.s.c diff --git a/APE4/ApeTask/inc/platform/src/spu_sw_queue.s.c b/APE7/ApeTask/inc/platform/src/spu_sw_queue.s.c similarity index 100% rename from APE4/ApeTask/inc/platform/src/spu_sw_queue.s.c rename to APE7/ApeTask/inc/platform/src/spu_sw_queue.s.c diff --git a/APE4/ApeTask/inc/platform/src/spu_version.c b/APE7/ApeTask/inc/platform/src/spu_version.c similarity index 100% rename from APE4/ApeTask/inc/platform/src/spu_version.c rename to APE7/ApeTask/inc/platform/src/spu_version.c diff --git a/APE4/ApeTask/inc/rfm1_drv.h b/APE7/ApeTask/inc/rfm1_drv.h similarity index 100% rename from APE4/ApeTask/inc/rfm1_drv.h rename to APE7/ApeTask/inc/rfm1_drv.h diff --git a/APE4/ApeTask/inc/smartos.h b/APE7/ApeTask/inc/smartos.h similarity index 100% rename from APE4/ApeTask/inc/smartos.h rename to APE7/ApeTask/inc/smartos.h diff --git a/APE4/ApeTask/inc/spinlock.h b/APE7/ApeTask/inc/spinlock.h similarity index 100% rename from APE4/ApeTask/inc/spinlock.h rename to APE7/ApeTask/inc/spinlock.h diff --git a/APE4/ApeTask/inc/spu_log.h b/APE7/ApeTask/inc/spu_log.h similarity index 100% rename from APE4/ApeTask/inc/spu_log.h rename to APE7/ApeTask/inc/spu_log.h diff --git a/APE4/ApeTask/inc/stc_timer.h b/APE7/ApeTask/inc/stc_timer.h similarity index 100% rename from APE4/ApeTask/inc/stc_timer.h rename to APE7/ApeTask/inc/stc_timer.h diff --git a/APE4/ApeTask/inc/typedef.h b/APE7/ApeTask/inc/typedef.h similarity index 100% rename from APE4/ApeTask/inc/typedef.h rename to APE7/ApeTask/inc/typedef.h diff --git a/APE4/ApeTask/inc/ucp_cpri.h b/APE7/ApeTask/inc/ucp_cpri.h similarity index 100% rename from APE4/ApeTask/inc/ucp_cpri.h rename to APE7/ApeTask/inc/ucp_cpri.h diff --git a/APE4/ApeTask/inc/ucp_drv_common.h b/APE7/ApeTask/inc/ucp_drv_common.h similarity index 100% rename from APE4/ApeTask/inc/ucp_drv_common.h rename to APE7/ApeTask/inc/ucp_drv_common.h diff --git a/APE4/ApeTask/inc/ucp_handshake.h b/APE7/ApeTask/inc/ucp_handshake.h similarity index 100% rename from APE4/ApeTask/inc/ucp_handshake.h rename to APE7/ApeTask/inc/ucp_handshake.h diff --git a/APE4/ApeTask/inc/ucp_js_subcrg.h b/APE7/ApeTask/inc/ucp_js_subcrg.h similarity index 100% rename from APE4/ApeTask/inc/ucp_js_subcrg.h rename to APE7/ApeTask/inc/ucp_js_subcrg.h diff --git a/APE4/ApeTask/inc/ucp_param.h b/APE7/ApeTask/inc/ucp_param.h similarity index 100% rename from APE4/ApeTask/inc/ucp_param.h rename to APE7/ApeTask/inc/ucp_param.h diff --git a/APE4/ApeTask/inc/ucp_port.h b/APE7/ApeTask/inc/ucp_port.h similarity index 100% rename from APE4/ApeTask/inc/ucp_port.h rename to APE7/ApeTask/inc/ucp_port.h diff --git a/APE4/ApeTask/inc/ucp_printf.h b/APE7/ApeTask/inc/ucp_printf.h similarity index 100% rename from APE4/ApeTask/inc/ucp_printf.h rename to APE7/ApeTask/inc/ucp_printf.h diff --git a/APE4/ApeTask/inc/ucp_tick.h b/APE7/ApeTask/inc/ucp_tick.h similarity index 100% rename from APE4/ApeTask/inc/ucp_tick.h rename to APE7/ApeTask/inc/ucp_tick.h diff --git a/APE4/ApeTask/inc/ucp_utility.h b/APE7/ApeTask/inc/ucp_utility.h similarity index 100% rename from APE4/ApeTask/inc/ucp_utility.h rename to APE7/ApeTask/inc/ucp_utility.h diff --git a/APE7/ApeTask/src/Fucp_Ape7_Init.s.c b/APE7/ApeTask/src/Fucp_Ape7_Init.s.c index ae343e2..0c15456 100644 --- a/APE7/ApeTask/src/Fucp_Ape7_Init.s.c +++ b/APE7/ApeTask/src/Fucp_Ape7_Init.s.c @@ -17,6 +17,7 @@ #include "log_interface.h" #include "trace.h" #include "receiver_sync_first_func.h" +#include "Fucp_Ape7_pcie_testcase.h" /**************************function******************************/ /*! @@ -54,9 +55,14 @@ void Phy_Task_Ape7_Reg() // osp_task_info_ex ape7_event_task_info = {50, "ape7_event_task1", 50, 2048, OSP_EVENT_TYPE, 0, 0, 0, NULL, (OSP_TASKENTRY_FUNC)ape7_event_task}; // osp_task_info_ex ape7_event_task_info_del = {51, "ape7_event_task_del1", 51, 2048, OSP_EVENT_TYPE, 0, 0, 0, NULL, (OSP_TASKENTRY_FUNC)ape7_event_task_del}; osp_task_info_ex mgr_task = - {PHY_TASK_RECIEVER_FIRST_SYNC, "Receiver_Sync_First_Sync", PHY_TASK_PRI_RECEIVER_FIRST_SYNC, 4096, OSP_EVENT_TYPE, 0x000, 0x000, 0, (OSP_TASKINIT_FUNC)Receiver_Sync_First_Init, (OSP_TASKENTRY_FUNC)Receiver_First_Sync_Proc}; + {PHY_TASK_RECEIVER_FIRST_SYNC, "Receiver_Sync_First_Sync", PHY_TASK_PRI_RECEIVER_FIRST_SYNC, 4096, OSP_EVENT_TYPE, 0x000, 0x000, 0, (OSP_TASKINIT_FUNC)Receiver_Sync_First_Init, (OSP_TASKENTRY_FUNC)Receiver_First_Sync_Proc}; + osp_task_info_ex pcie_normal_task_info = + {PHY_TASK_PCIE, (int8_t*)"pcie_normal_task", PHY_TASK_PRI_PCIE, 4096, OSP_EVENT_TYPE, 0x000, 0, 0, NULL, (OSP_TASKENTRY_FUNC)pcie_test_task_func}; // osp_task_create(&ape7_event_task_info); // osp_task_create(&ape7_event_task_info_del); + + test_case_cfgpar_pcie(); + osp_task_create(&pcie_normal_task_info); osp_task_create(&mgr_task); LOG_INFO_S("APE7 finish task create!\n"); diff --git a/APE4/ApeTask/src/Fucp_Ape4_pcie_testcase.s.c b/APE7/ApeTask/src/Fucp_Ape7_pcie_testcase.s.c similarity index 91% rename from APE4/ApeTask/src/Fucp_Ape4_pcie_testcase.s.c rename to APE7/ApeTask/src/Fucp_Ape7_pcie_testcase.s.c index eb3f2ce..1bc5b5e 100644 --- a/APE4/ApeTask/src/Fucp_Ape4_pcie_testcase.s.c +++ b/APE7/ApeTask/src/Fucp_Ape7_pcie_testcase.s.c @@ -31,7 +31,9 @@ #include "mem_sections.h" #include "drv_ape.h" #include "trace.h" - +#include "interface_rec_sync2_pcie.h" +#include "Fucp_Ape7_pcie_testcase.h" +#include "mem_def.h" @@ -473,8 +475,26 @@ void test_speed_recv_msg_pcie() } -void pcie_test_task_func(void) +void pcie_test_task_func(receiver_sync2pcie_t* msg_ptr, uint32_t msg_len) { + //获取状态机状态 + volatile uint32_t status_SM_addr= (uint32_t)RECEIVER_SYNC2SYNC_FIRST_INF_ADDR; + /*typedef enum + { + SYNC_IDLE=0, + SYNC_FIRST_RUNING, + SYNC_AI_PROCECING, + SYNC_TRACKING + }receiver_sync_status_e;*/ + if(2 != LOAD_EX_W(status_SM_addr)) + return ; + //提供的数据地址(DDR)和本次数据的SFN SLOT号 + uint32_t sfn = msg_ptr->sfn; + uint32_t slot = msg_ptr->slot; + uint32_t data_addr = msg_ptr->data_section0_ptr; + uint32_t data_len = 1024*4; + + return ; g_time_start[1] = TIME_NS(); RUN_CNT(TRACE_PCIE_ADDR, 0); @@ -494,7 +514,18 @@ void pcie_test_task_func(void) RUN_CNT(TRACE_PCIE_ADDR, 1); TRACE_MAX(TRACE_PCIE_ADDR, 2, Time_offset(1) ); - return; + + + + //TODO:接收到RK3588的数据后,必须更新状态机后级模块才能工作 + //WARNING:需要使用这个代码 + #if 0 + volatile uint32_t status_SM_addr= (uint32_t)RECEIVER_SYNC2SYNC_FIRST_INF_ADDR; + STORE_EX_W(status_SM_addr , 3); + __ucps2_synch(0); + #endif + + return; } diff --git a/APELib/Receiver_symb/src/receiver_Symb_Proc.s.c b/APELib/Receiver_symb/src/receiver_Symb_Proc.s.c index 8c292df..a4ff729 100644 --- a/APELib/Receiver_symb/src/receiver_Symb_Proc.s.c +++ b/APELib/Receiver_symb/src/receiver_Symb_Proc.s.c @@ -115,8 +115,8 @@ void Receiver_Symb_Proc( UCP4008_KERNEL_INTER, APE5_CORE_ID, APE6_CORE_ID, - PHY_TASK_RECIEVER_SYMB, - PHY_TASK_RECIEVER_BIT); + PHY_TASK_RECEIVER_SYMB, + PHY_TASK_RECEIVER_BIT); return; } diff --git a/APELib/Receiver_sync/inc/receiver_sync_func.h b/APELib/Receiver_sync/inc/receiver_sync_func.h index a0791a8..74bbd2f 100644 --- a/APELib/Receiver_sync/inc/receiver_sync_func.h +++ b/APELib/Receiver_sync/inc/receiver_sync_func.h @@ -23,6 +23,7 @@ #include "task_define.h" #include "trace.h" #include "interface_rec_sync2_rec_sync_first.h" +#include "interface_rec_sync2_pcie.h" //include mpu header files @@ -54,7 +55,7 @@ extern uint16_t g_proc_id; void Receiver_Sync_Init(); void Receiver_Sync_Task(); void Receiver_Sync_Proc(); -void Receiver_Fine_Sync_Proc(uint32_t sfn, uint32_t slot); +void Receiver_Fine_Sync_Proc(uint32_t sfn, uint32_t slot, uint32_t proc_type); //debug extern uint32_t* last_mem_dm[8]; diff --git a/APELib/Receiver_sync/inc/receiver_sync_struct.h b/APELib/Receiver_sync/inc/receiver_sync_struct.h index 7769d7a..bdeb4d6 100644 --- a/APELib/Receiver_sync/inc/receiver_sync_struct.h +++ b/APELib/Receiver_sync/inc/receiver_sync_struct.h @@ -61,6 +61,7 @@ typedef enum { SYNC_IDLE=0, SYNC_FIRST_RUNING, + SYNC_AI_PROCECING, SYNC_TRACKING }receiver_sync_status_e; diff --git a/APELib/Receiver_sync/src/receiver_Sync_Proc.s.c b/APELib/Receiver_sync/src/receiver_Sync_Proc.s.c index 2098e42..c84e565 100644 --- a/APELib/Receiver_sync/src/receiver_Sync_Proc.s.c +++ b/APELib/Receiver_sync/src/receiver_Sync_Proc.s.c @@ -196,8 +196,8 @@ void Receiver_Sync_Proc( UCP4008_KERNEL_INNER, APE4_CORE_ID, APE7_CORE_ID, - PHY_TASK_RECIEVER_SYNC, - PHY_TASK_RECIEVER_FIRST_SYNC); + PHY_TASK_RECEIVER_SYNC, + PHY_TASK_RECEIVER_FIRST_SYNC); //第一次同步目前不存储数据做处理,注释 // receiver_sync2first_sync_t data_send2first_sync_task; @@ -206,14 +206,14 @@ void Receiver_Sync_Proc( // UCP4008_KERNEL_INNER, // get_core_id(), // get_core_id(), - // PHY_TASK_PRI_RECEIVER_SYNC, - // PHY_TASK_PRI_RECEIVER_FIRST_SYNC); + // PHY_TASK_RECEIVER_SYNC, + // PHY_TASK_RECEIVER_FIRST_SYNC); TRACE(TRACE_RECEIVER_SYNC_ADDR, 3, 4); } - else if(SYNC_TRACKING == sync_status) + else if((SYNC_TRACKING == sync_status) || (SYNC_AI_PROCECING == sync_status)) { TRACE(TRACE_RECEIVER_SYNC_ADDR, 3, 5); - Receiver_Fine_Sync_Proc(cur_sfn, cur_slot); + Receiver_Fine_Sync_Proc(cur_sfn, cur_slot, sync_status); //根据当前状态机状态,buffer存储的数据长度,sync同步帧头,发送核间消息触发任务 TRACE(TRACE_RECEIVER_SYNC_ADDR, 3, 6); @@ -232,7 +232,7 @@ void Receiver_Sync_Proc( //用于跟踪同步 -void Receiver_Fine_Sync_Proc(uint32_t sfn, uint32_t slot) +void Receiver_Fine_Sync_Proc(uint32_t sfn, uint32_t slot, uint32_t proc_type) { g_time_start[2] = TIME_NS(); uint16_t dbg_time0, dbg_time1; @@ -443,16 +443,29 @@ void Receiver_Fine_Sync_Proc(uint32_t sfn, uint32_t slot) 1); } //发核间消息给SYMB_TASK, slot号为偶数APE5处理,奇数APE3处理 + if(SYNC_TRACKING == proc_type) + { uint32_t symb_proc_core_sel = (0 == (slot & 0x1)) ? APE5_CORE_ID : APE3_CORE_ID; - phy_et_msg_send((uint32_t)(&data_send2symb_task[task_idx]), - sizeof(receiver_sync2symb_t), - UCP4008_KERNEL_INTER, - get_core_id(), - symb_proc_core_sel, - PHY_TASK_PRI_RECEIVER_SYNC, - PHY_TASK_PRI_RECEIVER_SYMB); + phy_et_msg_send((uint32_t)(&data_send2symb_task[task_idx]), + sizeof(receiver_sync2symb_t), + UCP4008_KERNEL_INTER, + get_core_id(), + symb_proc_core_sel, + PHY_TASK_RECEIVER_SYNC, + PHY_TASK_RECEIVER_SYMB); + } + else + { + phy_et_msg_send((uint32_t)(&data_send2symb_task[task_idx]), + sizeof(receiver_sync2pcie_t), + UCP4008_KERNEL_INTER, + get_core_id(), + APE7_CORE_ID, + PHY_TASK_RECEIVER_SYNC, + PHY_TASK_PCIE); + } g_proc_id++; task_idx++; } diff --git a/APELib/Receiver_sync_first/inc/receiver_sync_first_struct.h b/APELib/Receiver_sync_first/inc/receiver_sync_first_struct.h index 8e1b216..abcc335 100644 --- a/APELib/Receiver_sync_first/inc/receiver_sync_first_struct.h +++ b/APELib/Receiver_sync_first/inc/receiver_sync_first_struct.h @@ -57,6 +57,7 @@ typedef enum { SYNC_IDLE=0, SYNC_FIRST_RUNING, + SYNC_AI_PROCECING, SYNC_TRACKING }receiver_sync_first_status_e; diff --git a/APELib/Receiver_sync_first/src/receiver_Sync_First_Proc.s.c b/APELib/Receiver_sync_first/src/receiver_Sync_First_Proc.s.c index fec9325..ed57a52 100644 --- a/APELib/Receiver_sync_first/src/receiver_Sync_First_Proc.s.c +++ b/APELib/Receiver_sync_first/src/receiver_Sync_First_Proc.s.c @@ -362,7 +362,7 @@ void Receiver_First_Sync_Proc(receiver_sync2first_sync_t* msg_ptr, uint32_t msg_ //执行完成,更新状态机 if(SYNC_OK == ret) { - STORE_EX_W(&g_receiver_sync_status_SM_ptr->sync_status , SYNC_TRACKING); + STORE_EX_W(&g_receiver_sync_status_SM_ptr->sync_status , SYNC_AI_PROCECING); __ucps2_synch(0); } else diff --git a/Common/inc/task_define.h b/Common/inc/task_define.h index eb9ddfb..9e7eaba 100644 --- a/Common/inc/task_define.h +++ b/Common/inc/task_define.h @@ -26,7 +26,7 @@ typedef enum PHY_TASK_PRI_RECEIVER_BIT, PHY_TASK_PRI_TEST, PHY_TASK_PRI_RECEIVER_FIRST_SYNC, - PCIE_TASK_PRI_RECEIVER, + PHY_TASK_PRI_PCIE, PHY_TASK_PRI_EQUAL_PRI, //不需要优先级抢占的任务,设置为该优先级 }task_pri_e; @@ -38,12 +38,12 @@ typedef enum PHY_TASK_CONFIG, PHY_TASK_SLOT_IND, PHY_TASK_TRANSIMITTER, - PHY_TASK_RECIEVER_SYNC, - PHY_TASK_RECIEVER_SYMB, - PHY_TASK_RECIEVER_BIT, + PHY_TASK_RECEIVER_SYNC, + PHY_TASK_RECEIVER_SYMB, + PHY_TASK_RECEIVER_BIT, PHY_TASK_TEST, - PHY_TASK_RECIEVER_FIRST_SYNC, - PCIE_TASK_RECEIVER, + PHY_TASK_RECEIVER_FIRST_SYNC, + PHY_TASK_PCIE, PHY_TASK_PHY_MGR, PHY_TASK_MAX=32 }task_id_e; diff --git a/Interface/interface_rec_sync2_pcie.h b/Interface/interface_rec_sync2_pcie.h new file mode 100644 index 0000000..884130a --- /dev/null +++ b/Interface/interface_rec_sync2_pcie.h @@ -0,0 +1,21 @@ +#ifndef INTERFACE_REC_SYNC2_PCIE_H +#define INTERFACE_REC_SYNC2_PCIE_H +#include "type_define.h" + +typedef struct receiver_sync2pcie_s +{ + uint16_t sfn;//创建任务时刻的sfn + uint16_t slot;//创建任务时刻的slot + uint16_t num_data_section; + uint16_t proc_id;//记录包的顺序 + uint32_t data_section0_ptr; + uint32_t data_section1_ptr; + uint32_t data_section0_length;//单位Word + uint32_t data_section1_length;//单位Word + +}receiver_sync2pcie_t; + + + + +#endif \ No newline at end of file