diff options
Diffstat (limited to 'hifi/xaf/host-apf/include/sys/fio')
-rw-r--r-- | hifi/xaf/host-apf/include/sys/fio/xf-config.h | 36 | ||||
-rw-r--r-- | hifi/xaf/host-apf/include/sys/fio/xf-hal.h | 34 | ||||
-rw-r--r-- | hifi/xaf/host-apf/include/sys/fio/xf-ipc.h | 127 | ||||
-rw-r--r-- | hifi/xaf/host-apf/include/sys/fio/xf-runtime.h | 35 | ||||
-rw-r--r-- | hifi/xaf/host-apf/include/sys/fio/xf-types.h | 88 |
5 files changed, 0 insertions, 320 deletions
diff --git a/hifi/xaf/host-apf/include/sys/fio/xf-config.h b/hifi/xaf/host-apf/include/sys/fio/xf-config.h deleted file mode 100644 index 2e1d4c61..00000000 --- a/hifi/xaf/host-apf/include/sys/fio/xf-config.h +++ /dev/null @@ -1,36 +0,0 @@ -/******************************************************************************* -* Copyright (C) 2018 Cadence Design Systems, Inc. -* -* Permission is hereby granted, free of charge, to any person obtaining -* a copy of this software and associated documentation files (the -* "Software"), to use this Software with Cadence processor cores only and -* not with any other processors and platforms, subject to -* the following conditions: -* -* The above copyright notice and this permission notice shall be included -* in all copies or substantial portions of the Software. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -******************************************************************************/ - -/* ...number of DSP cores */ -#define XF_CFG_CORES_NUM 4 - -/* ...maximal number of clients supported by proxy */ -#define XF_CFG_PROXY_MAX_CLIENTS 256 - -/* ...size of the shared memory pool (in bytes) */ -#define XF_CFG_REMOTE_IPC_POOL_SIZE (256 << 10) - -/* ...size of the component(DSP) local memory pool (in bytes) */ -#define XF_CFG_LOCAL_POOL_SIZE (1024<< 10) - -/* ...alignment for shared buffers */ -#define XF_PROXY_ALIGNMENT 64 diff --git a/hifi/xaf/host-apf/include/sys/fio/xf-hal.h b/hifi/xaf/host-apf/include/sys/fio/xf-hal.h deleted file mode 100644 index 15a82b03..00000000 --- a/hifi/xaf/host-apf/include/sys/fio/xf-hal.h +++ /dev/null @@ -1,34 +0,0 @@ -/******************************************************************************* -* Copyright (C) 2018 Cadence Design Systems, Inc. -* -* Permission is hereby granted, free of charge, to any person obtaining -* a copy of this software and associated documentation files (the -* "Software"), to use this Software with Cadence processor cores only and -* not with any other processors and platforms, subject to -* the following conditions: -* -* The above copyright notice and this permission notice shall be included -* in all copies or substantial portions of the Software. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -******************************************************************************/ - -#ifndef __XF_H -#error "xf-hal.h mustn't be included directly" -#endif - -/******************************************************************************* - * Includes - ******************************************************************************/ - -/* ...primitive types */ -#include "xf-types.h" - -/* ...anything else? - tbd */ diff --git a/hifi/xaf/host-apf/include/sys/fio/xf-ipc.h b/hifi/xaf/host-apf/include/sys/fio/xf-ipc.h deleted file mode 100644 index 2ee859a8..00000000 --- a/hifi/xaf/host-apf/include/sys/fio/xf-ipc.h +++ /dev/null @@ -1,127 +0,0 @@ -/******************************************************************************* -* Copyright (C) 2018 Cadence Design Systems, Inc. -* -* Permission is hereby granted, free of charge, to any person obtaining -* a copy of this software and associated documentation files (the -* "Software"), to use this Software with Cadence processor cores only and -* not with any other processors and platforms, subject to -* the following conditions: -* -* The above copyright notice and this permission notice shall be included -* in all copies or substantial portions of the Software. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -******************************************************************************/ - -#ifndef __XF_H -#error "xf-ipc.h mustn't be included directly" -#endif - -/******************************************************************************* - * Types definitions - ******************************************************************************/ - -/* ...proxy IPC data */ -typedef struct xf_proxy_ipc_data -{ - /* ...shared memory buffer pointer */ - void *shmem; - - /* ...file descriptor */ - int fd; - - /* ...pipe for asynchronous response delivery */ - int pipe[2]; - -} xf_proxy_ipc_data_t; - -/******************************************************************************* - * Helpers for asynchronous response delivery - ******************************************************************************/ - -#define xf_proxy_ipc_response_put(ipc, msg) \ - (write((ipc)->pipe[1], (msg), sizeof(*(msg))) == sizeof(*(msg)) ? 0 : -errno) - -#define xf_proxy_ipc_response_get(ipc, msg) \ - (read((ipc)->pipe[0], (msg), sizeof(*(msg))) == sizeof(*(msg)) ? 0 : -errno) - -/******************************************************************************* - * Shared memory translation - ******************************************************************************/ - -/* ...translate proxy shared address into local virtual address */ -static inline void * xf_ipc_a2b(xf_proxy_ipc_data_t *ipc, u32 address) -{ - if (address < XF_CFG_REMOTE_IPC_POOL_SIZE) - return (unsigned char *) ipc->shmem + address; - else if (address == XF_PROXY_NULL) - return NULL; - else - return (void *) -1; -} - -/* ...translate local virtual address into shared proxy address */ -static inline u32 xf_ipc_b2a(xf_proxy_ipc_data_t *ipc, void *b) -{ - u32 a; - - if (b == NULL) - return XF_PROXY_NULL; - if ((a = (u32)((u8 *)b - (u8 *)ipc->shmem)) < XF_CFG_REMOTE_IPC_POOL_SIZE) - return a; - else - return XF_PROXY_BADADDR; -} - -/******************************************************************************* - * Component inter-process communication - ******************************************************************************/ - -typedef struct xf_ipc_data -{ - /* ...asynchronous response delivery pipe */ - int pipe[2]; - -} xf_ipc_data_t; - -/******************************************************************************* - * Helpers for asynchronous response delivery - ******************************************************************************/ - -#define xf_ipc_response_put(ipc, msg) \ - (write((ipc)->pipe[1], (msg), sizeof(*(msg))) == sizeof(*(msg)) ? 0 : -errno) - -#define xf_ipc_response_get(ipc, msg) \ - (read((ipc)->pipe[0], (msg), sizeof(*(msg))) == sizeof(*(msg)) ? 0 : -errno) - -#define xf_ipc_data_init(ipc) \ - (pipe((ipc)->pipe) == 0 ? 0 : -errno) - -#define xf_ipc_data_destroy(ipc) \ - (close((ipc)->pipe[0]), close((ipc)->pipe[1])) - -/******************************************************************************* -* API functions - ******************************************************************************/ - -/* ...send asynchronous command */ -extern int xf_ipc_send(xf_proxy_ipc_data_t *ipc, xf_proxy_msg_t *msg, void *b); - -/* ...wait for response from remote proxy */ -extern int xf_ipc_wait(xf_proxy_ipc_data_t *ipc, u32 timeout); - -/* ...receive response from IPC layer */ -extern int xf_ipc_recv(xf_proxy_ipc_data_t *ipc, xf_proxy_msg_t *msg, void **b); - -/* ...open proxy interface on proper DSP partition */ -extern int xf_ipc_open(xf_proxy_ipc_data_t *proxy, u32 core, void *p_shmem); - -/* ...close proxy handle */ -extern void xf_ipc_close(xf_proxy_ipc_data_t *proxy, u32 core); diff --git a/hifi/xaf/host-apf/include/sys/fio/xf-runtime.h b/hifi/xaf/host-apf/include/sys/fio/xf-runtime.h deleted file mode 100644 index 9cad95f4..00000000 --- a/hifi/xaf/host-apf/include/sys/fio/xf-runtime.h +++ /dev/null @@ -1,35 +0,0 @@ -/******************************************************************************* -* Copyright (C) 2018 Cadence Design Systems, Inc. -* -* Permission is hereby granted, free of charge, to any person obtaining -* a copy of this software and associated documentation files (the -* "Software"), to use this Software with Cadence processor cores only and -* not with any other processors and platforms, subject to -* the following conditions: -* -* The above copyright notice and this permission notice shall be included -* in all copies or substantial portions of the Software. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -******************************************************************************/ - -#ifndef __XF_H -#error "xf-runtime.h mustn't be included directly" -#endif - -/******************************************************************************* - * Includes - ******************************************************************************/ - -/* ...platform HAL layer */ -#include "xf-hal.h" - -/* ...OS abstraction layer */ -#include "xf-osal.h" diff --git a/hifi/xaf/host-apf/include/sys/fio/xf-types.h b/hifi/xaf/host-apf/include/sys/fio/xf-types.h deleted file mode 100644 index a610c8e1..00000000 --- a/hifi/xaf/host-apf/include/sys/fio/xf-types.h +++ /dev/null @@ -1,88 +0,0 @@ -/******************************************************************************* -* Copyright (C) 2018 Cadence Design Systems, Inc. -* -* Permission is hereby granted, free of charge, to any person obtaining -* a copy of this software and associated documentation files (the -* "Software"), to use this Software with Cadence processor cores only and -* not with any other processors and platforms, subject to -* the following conditions: -* -* The above copyright notice and this permission notice shall be included -* in all copies or substantial portions of the Software. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -******************************************************************************/ - -#ifndef __XF_H -#error "xf-types.h mustn't be included directly" -#endif - -/******************************************************************************* - * Standard includes - ******************************************************************************/ - -#ifndef _GNU_SOURCE -#define _GNU_SOURCE -#endif - -#include <stdarg.h> -#include <stdint.h> -#include <stdlib.h> -#include <string.h> -#include <stdio.h> -#include <assert.h> -#include <errno.h> - -#include <unistd.h> -#include <fcntl.h> -#include <pthread.h> -#include <signal.h> -#include <limits.h> -#include <sys/mman.h> -#include <sys/ioctl.h> -#include <sys/time.h> - -/******************************************************************************* - * Primitive types - ******************************************************************************/ - -typedef uint32_t u32; -typedef int32_t s32; -typedef uint16_t u16; -typedef int16_t s16; -typedef uint8_t u8; -typedef int8_t s8; - -/******************************************************************************* - * Macros definitions - ******************************************************************************/ - -/* ...NULL-address specification */ -#define XF_PROXY_NULL (~0U) - -/* ...invalid proxy address */ -#define XF_PROXY_BADADDR XF_CFG_REMOTE_IPC_POOL_SIZE - -/******************************************************************************* - * Auxiliary helpers - ******************************************************************************/ - -/* ...next power-of-two calculation */ -#define xf_next_power_of_two(v) __xf_power_of_two_1((v) - 1) -#define __xf_power_of_two_1(v) __xf_power_of_two_2((v) | ((v) >> 1)) -#define __xf_power_of_two_2(v) __xf_power_of_two_3((v) | ((v) >> 2)) -#define __xf_power_of_two_3(v) __xf_power_of_two_4((v) | ((v) >> 4)) -#define __xf_power_of_two_4(v) __xf_power_of_two_5((v) | ((v) >> 8)) -#define __xf_power_of_two_5(v) __xf_power_of_two_6((v) | ((v) >> 16)) -#define __xf_power_of_two_6(v) ((v) + 1) - -/* ...check if non-zero value is a power-of-two */ -#define xf_is_power_of_two(v) (((v) & ((v) - 1)) == 0) - |