diff options
author | Sam Nelson <sam.nelson@ti.com> | 2019-08-30 02:03:16 +0000 |
---|---|---|
committer | Sam Nelson <sam.nelson@ti.com> | 2019-08-30 14:10:05 -0400 |
commit | 129b6f44c50cbe760a5c1481b34b323b7a42ead5 (patch) | |
tree | 77e12d17a171790191f151016eb2f147d2e2351d | |
parent | ca7ce99b8ec82331559f0fd99a174bdcca1da9ac (diff) | |
download | ipc-129b6f44c50cbe760a5c1481b34b323b7a42ead5.tar.gz |
am65xx: Update core type for sciclient3.50.04.07
The sciclient has library for mcu1_0, mcu1_1 and mpu1_0 separately.
Adding configuration to specify the right core type.
( Note this is supported in only new version of sciclient library)
Signed-off-by: Sam Nelson <sam.nelson@ti.com>
-rw-r--r-- | packages/ti/sdo/ipc/family/am65xx/NotifySciClient.c | 30 | ||||
-rw-r--r-- | packages/ti/sdo/ipc/family/am65xx/NotifySetup.c | 6 | ||||
-rw-r--r-- | packages/ti/sdo/ipc/family/am65xx/NotifySetup.xs | 7 |
3 files changed, 31 insertions, 12 deletions
diff --git a/packages/ti/sdo/ipc/family/am65xx/NotifySciClient.c b/packages/ti/sdo/ipc/family/am65xx/NotifySciClient.c index 6c5edd5..dd44d23 100644 --- a/packages/ti/sdo/ipc/family/am65xx/NotifySciClient.c +++ b/packages/ti/sdo/ipc/family/am65xx/NotifySciClient.c @@ -41,10 +41,7 @@ #include "package/internal/NotifySciClient.xdc.h" -/* Ideally want to use fixed timeout. Work around is to use wait forever */ -/* #define NOTIFY_SCICLIENT_RESP_TIMEOUT 100 */ - -#define NOTIFY_SCICLIENT_RESP_TIMEOUT SCICLIENT_SERVICE_WAIT_FOREVER +#define NOTIFY_SCICLIENT_RESP_TIMEOUT 1000000 /********************************************************************* * @fn NotifySciClient_Init @@ -58,7 +55,7 @@ Int32 NotifySciClient_Init(void) { int32_t status = 0; - + Sciclient_ConfigPrms_t config; /* Setup Request for Version check */ const Sciclient_ReqPrm_t reqPrm = { @@ -78,6 +75,17 @@ Int32 NotifySciClient_Init(void) .respPayloadSize = sizeof (response) }; + /* Now reinitialize it as default parameter */ + Sciclient_configPrmsInit(&config); +#if defined(xdc_target__isaCompatible_v8A) + config.opModeFlag = SCICLIENT_SERVICE_OPERATION_MODE_POLLED; +#endif + + status = Sciclient_init(&config); + if (status < 0) { + return -1; + } + /* Check version check to TISCI connection */ status = Sciclient_service(&reqPrm, &respPrm); if (CSL_PASS == status) @@ -132,8 +140,8 @@ Int32 NotifySciClient_IrqSet(NotifySciClient_CoreIndex coreIndex, const uint16_t map_host_id[] = { TISCI_HOST_ID_A53_0, - TISCI_HOST_ID_R5_0, - TISCI_HOST_ID_R5_1 + TISCI_HOST_ID_R5_0, /* This corresponds to R5F core 0 non-secure */ + TISCI_HOST_ID_R5_2 /* This corresponds to R5F core 1 non-secure */ }; /* Initialize unused parameters */ @@ -201,8 +209,8 @@ Int32 NotifySciClient_IrqRelease(NotifySciClient_CoreIndex coreIndex, const uint16_t map_host_id[] = { TISCI_HOST_ID_A53_0, - TISCI_HOST_ID_R5_0, - TISCI_HOST_ID_R5_1 + TISCI_HOST_ID_R5_0, /* This corresponds to R5F core 0 non-secure */ + TISCI_HOST_ID_R5_2 /* This corresponds to R5F core 1 non-secure */ }; /* Initialize unused parameters */ @@ -272,8 +280,8 @@ Int32 NotifySciClient_getIntNumRange(NotifySciClient_CoreIndex coreIndex, const uint16_t map_host_id[] = { TISCI_HOST_ID_A53_0, - TISCI_HOST_ID_R5_0, - TISCI_HOST_ID_R5_1 + TISCI_HOST_ID_R5_0, /* This corresponds to R5F core 0 non-secure */ + TISCI_HOST_ID_R5_2 /* This corresponds to R5F core 1 non-secure */ }; get_resource_range_req.type = req_type[coreIndex]; diff --git a/packages/ti/sdo/ipc/family/am65xx/NotifySetup.c b/packages/ti/sdo/ipc/family/am65xx/NotifySetup.c index 2528c34..6e419cd 100644 --- a/packages/ti/sdo/ipc/family/am65xx/NotifySetup.c +++ b/packages/ti/sdo/ipc/family/am65xx/NotifySetup.c @@ -108,7 +108,11 @@ Int NotifySetup_Module_startup(Int phase) coreId = Core_getId(); #endif - NotifySciClient_Init(); + retVal = NotifySciClient_Init(); + if ( retVal < 0 ) { + return Startup_NOTDONE; + } + #if defined(xdc_target__isaCompatible_v7R) if (coreId == 0) { retVal = NotifySciClient_getIntNumRange(NotifySciClient_R5F_0_CORE_INDEX, diff --git a/packages/ti/sdo/ipc/family/am65xx/NotifySetup.xs b/packages/ti/sdo/ipc/family/am65xx/NotifySetup.xs index 56f5108..457ce1d 100644 --- a/packages/ti/sdo/ipc/family/am65xx/NotifySetup.xs +++ b/packages/ti/sdo/ipc/family/am65xx/NotifySetup.xs @@ -114,10 +114,17 @@ function module$use() xdc.useModule("ti.sysbios.BIOS"); Core = xdc.useModule("ti.sysbios.family.arm.v7r.keystone3.Core"); xdc.useModule('ti.sysbios.family.arm.v7r.keystone3.Hwi'); + + if(Program.platformName.match(/R5F0/)) { + sciclientSettings.coreType = "mcu1_0"; + } else if (Program.platformName.match(/R5F1/)) { + sciclientSettings.coreType = "mcu1_1"; + } } else if (isaChain.match(/#v8A#/)) { Mmu = xdc.useModule("ti.sysbios.family.arm.v8a.Mmu"); xdc.useModule('ti.sysbios.family.arm.gicv3.Hwi'); + sciclientSettings.coreType = "mpu1_0"; } /* initialize procIdTable */ |