diff options
Diffstat (limited to 'drivers/staging/media/atomisp/pci/atomisp2/css2400/ia_css_env.h')
-rw-r--r-- | drivers/staging/media/atomisp/pci/atomisp2/css2400/ia_css_env.h | 94 |
1 files changed, 0 insertions, 94 deletions
diff --git a/drivers/staging/media/atomisp/pci/atomisp2/css2400/ia_css_env.h b/drivers/staging/media/atomisp/pci/atomisp2/css2400/ia_css_env.h deleted file mode 100644 index 8b0218ee658d..000000000000 --- a/drivers/staging/media/atomisp/pci/atomisp2/css2400/ia_css_env.h +++ /dev/null @@ -1,94 +0,0 @@ -/* - * Support for Intel Camera Imaging ISP subsystem. - * Copyright (c) 2015, Intel Corporation. - * - * This program is free software; you can redistribute it and/or modify it - * under the terms and conditions of the GNU General Public License, - * version 2, as published by the Free Software Foundation. - * - * This program is distributed in the hope it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - */ - -#ifndef __IA_CSS_ENV_H -#define __IA_CSS_ENV_H - -#include <type_support.h> -#include <stdarg.h> /* va_list */ -#include "ia_css_types.h" -#include "ia_css_acc_types.h" - -/* @file - * This file contains prototypes for functions that need to be provided to the - * CSS-API host-code by the environment in which the CSS-API code runs. - */ - -/* Memory allocation attributes, for use in ia_css_css_mem_env. */ -enum ia_css_mem_attr { - IA_CSS_MEM_ATTR_CACHED = 1 << 0, - IA_CSS_MEM_ATTR_ZEROED = 1 << 1, - IA_CSS_MEM_ATTR_PAGEALIGN = 1 << 2, - IA_CSS_MEM_ATTR_CONTIGUOUS = 1 << 3, -}; - -/* Environment with function pointers for local IA memory allocation. - * This provides the CSS code with environment specific functionality - * for memory allocation of small local buffers such as local data structures. - * This is never expected to allocate more than one page of memory (4K bytes). - */ -struct ia_css_cpu_mem_env { - void (*flush)(struct ia_css_acc_fw *fw); - /** Flush function to flush the cache for given accelerator. */ -}; - -/* Environment with function pointers to access the CSS hardware. This includes - * registers and local memories. - */ -struct ia_css_hw_access_env { - void (*store_8)(hrt_address addr, uint8_t data); - /** Store an 8 bit value into an address in the CSS HW address space. - The address must be an 8 bit aligned address. */ - void (*store_16)(hrt_address addr, uint16_t data); - /** Store a 16 bit value into an address in the CSS HW address space. - The address must be a 16 bit aligned address. */ - void (*store_32)(hrt_address addr, uint32_t data); - /** Store a 32 bit value into an address in the CSS HW address space. - The address must be a 32 bit aligned address. */ - uint8_t (*load_8)(hrt_address addr); - /** Load an 8 bit value from an address in the CSS HW address - space. The address must be an 8 bit aligned address. */ - uint16_t (*load_16)(hrt_address addr); - /** Load a 16 bit value from an address in the CSS HW address - space. The address must be a 16 bit aligned address. */ - uint32_t (*load_32)(hrt_address addr); - /** Load a 32 bit value from an address in the CSS HW address - space. The address must be a 32 bit aligned address. */ - void (*store)(hrt_address addr, const void *data, uint32_t bytes); - /** Store a number of bytes into a byte-aligned address in the CSS HW address space. */ - void (*load)(hrt_address addr, void *data, uint32_t bytes); - /** Load a number of bytes from a byte-aligned address in the CSS HW address space. */ -}; - -/* Environment with function pointers to print error and debug messages. - */ -struct ia_css_print_env { - int (*debug_print)(const char *fmt, va_list args); - /** Print a debug message. */ - int (*error_print)(const char *fmt, va_list args); - /** Print an error message.*/ -}; - -/* Environment structure. This includes function pointers to access several - * features provided by the environment in which the CSS API is used. - * This is used to run the camera IP in multiple platforms such as Linux, - * Windows and several simulation environments. - */ -struct ia_css_env { - struct ia_css_cpu_mem_env cpu_mem_env; /** local flush. */ - struct ia_css_hw_access_env hw_access_env; /** CSS HW access functions */ - struct ia_css_print_env print_env; /** Message printing env. */ -}; - -#endif /* __IA_CSS_ENV_H */ |