Commit d929fb4e authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab

media: atomisp: stop producing hundreds of kernel-doc warnings

A recent change on Kernel 4.15-rc1 causes all tags with
/** to be handled as kernel-doc markups. Well, several
atomisp modules, it doesn't use kernel-doc, but some other
documentation markup (doxygen?).

So, suppress all those warns by:
	- replacing /**< by /**.
	- replacing /** by /*.

The core changes were done with:

	for i in $(find drivers/staging/media/atomisp -type f); do sed 's,/\*\* ,/\*, ' -i $i; done
	for i in $(find drivers/staging/media/atomisp -type f); do sed 's,/\*\*<,/\**,' -i $i; done
	for i in drivers/staging/media/atomisp/pci/atomisp2/css2400/runtime/debug/src/ia_css_debug.c drivers/staging/media/atomisp/pci/atomisp2/css2400/sh_css_sp.c drivers/staging/media/atomisp/pci/atomisp2/css2400/runtime/rmgr/src/rmgr_vbuf.c; do perl -ne 's,\/\*\*$,/*,g; print $_'  $i > a && mv a $i; done;

A few manual adjustments were made, where needed.
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
Acked-by: default avatarSakari Ailus <sakari.ailus@linux.intel.com>
parent 04226916
......@@ -208,14 +208,14 @@ struct atomisp_dis_vector {
};
/** DVS 2.0 Coefficient types. This structure contains 4 pointers to
/* DVS 2.0 Coefficient types. This structure contains 4 pointers to
* arrays that contain the coeffients for each type.
*/
struct atomisp_dvs2_coef_types {
short __user *odd_real; /**< real part of the odd coefficients*/
short __user *odd_imag; /**< imaginary part of the odd coefficients*/
short __user *even_real;/**< real part of the even coefficients*/
short __user *even_imag;/**< imaginary part of the even coefficients*/
short __user *odd_real; /** real part of the odd coefficients*/
short __user *odd_imag; /** imaginary part of the odd coefficients*/
short __user *even_real;/** real part of the even coefficients*/
short __user *even_imag;/** imaginary part of the even coefficients*/
};
/*
......@@ -223,10 +223,10 @@ struct atomisp_dvs2_coef_types {
* arrays that contain the statistics for each type.
*/
struct atomisp_dvs2_stat_types {
int __user *odd_real; /**< real part of the odd statistics*/
int __user *odd_imag; /**< imaginary part of the odd statistics*/
int __user *even_real;/**< real part of the even statistics*/
int __user *even_imag;/**< imaginary part of the even statistics*/
int __user *odd_real; /** real part of the odd statistics*/
int __user *odd_imag; /** imaginary part of the odd statistics*/
int __user *even_real;/** real part of the even statistics*/
int __user *even_imag;/** imaginary part of the even statistics*/
};
struct atomisp_dis_coefficients {
......@@ -390,16 +390,16 @@ struct atomisp_metadata_config {
* Generic resolution structure.
*/
struct atomisp_resolution {
uint32_t width; /**< Width */
uint32_t height; /**< Height */
uint32_t width; /** Width */
uint32_t height; /** Height */
};
/*
* This specifies the coordinates (x,y)
*/
struct atomisp_zoom_point {
int32_t x; /**< x coordinate */
int32_t y; /**< y coordinate */
int32_t x; /** x coordinate */
int32_t y; /** y coordinate */
};
/*
......@@ -411,9 +411,9 @@ struct atomisp_zoom_region {
};
struct atomisp_dz_config {
uint32_t dx; /**< Horizontal zoom factor */
uint32_t dy; /**< Vertical zoom factor */
struct atomisp_zoom_region zoom_region; /**< region for zoom */
uint32_t dx; /** Horizontal zoom factor */
uint32_t dy; /** Vertical zoom factor */
struct atomisp_zoom_region zoom_region; /** region for zoom */
};
struct atomisp_parm {
......@@ -758,7 +758,7 @@ enum atomisp_acc_arg_type {
ATOMISP_ACC_ARG_FRAME /* Frame argument */
};
/** ISP memories, isp2400 */
/* ISP memories, isp2400 */
enum atomisp_acc_memory {
ATOMISP_ACC_MEMORY_PMEM0 = 0,
ATOMISP_ACC_MEMORY_DMEM0,
......
......@@ -5187,7 +5187,7 @@ int get_frame_info_nop(struct atomisp_sub_device *asd,
return 0;
}
/**
/*
* Resets CSS parameters that depend on input resolution.
*
* Update params like CSS RAW binning, 2ppc mode and pp_input
......
......@@ -4051,7 +4051,7 @@ int atomisp_css_get_formats_config(struct atomisp_sub_device *asd,
int atomisp_css_get_zoom_factor(struct atomisp_sub_device *asd,
unsigned int *zoom)
{
struct ia_css_dz_config dz_config; /**< Digital Zoom */
struct ia_css_dz_config dz_config; /** Digital Zoom */
struct ia_css_isp_config isp_config;
struct atomisp_device *isp = asd->isp;
......
......@@ -28,17 +28,17 @@ struct atomisp_histogram32 {
};
struct atomisp_dvs2_stat_types32 {
compat_uptr_t odd_real; /**< real part of the odd statistics*/
compat_uptr_t odd_imag; /**< imaginary part of the odd statistics*/
compat_uptr_t even_real;/**< real part of the even statistics*/
compat_uptr_t even_imag;/**< imaginary part of the even statistics*/
compat_uptr_t odd_real; /** real part of the odd statistics*/
compat_uptr_t odd_imag; /** imaginary part of the odd statistics*/
compat_uptr_t even_real;/** real part of the even statistics*/
compat_uptr_t even_imag;/** imaginary part of the even statistics*/
};
struct atomisp_dvs2_coef_types32 {
compat_uptr_t odd_real; /**< real part of the odd coefficients*/
compat_uptr_t odd_imag; /**< imaginary part of the odd coefficients*/
compat_uptr_t even_real;/**< real part of the even coefficients*/
compat_uptr_t even_imag;/**< imaginary part of the even coefficients*/
compat_uptr_t odd_real; /** real part of the odd coefficients*/
compat_uptr_t odd_imag; /** imaginary part of the odd coefficients*/
compat_uptr_t even_real;/** real part of the even coefficients*/
compat_uptr_t even_imag;/** imaginary part of the even coefficients*/
};
struct atomisp_dvs2_statistics32 {
......
......@@ -223,7 +223,7 @@ struct atomisp_subdev_params {
bool dis_proj_data_valid;
struct ia_css_dz_config dz_config; /**< Digital Zoom */
struct ia_css_dz_config dz_config; /** Digital Zoom */
struct ia_css_capture_config capture_config;
struct atomisp_css_isp_config config;
......
......@@ -21,7 +21,7 @@
* Forward declarations.
*
**********************************************************************/
/**
/*
* @brief Read the oldest element from the circular buffer.
* Read the oldest element WITHOUT checking whehter the
* circular buffer is empty or not. The oldest element is
......@@ -34,7 +34,7 @@
static inline ia_css_circbuf_elem_t
ia_css_circbuf_read(ia_css_circbuf_t *cb);
/**
/*
* @brief Shift a chunk of elements in the circular buffer.
* A chunk of elements (i.e. the ones from the "start" position
* to the "chunk_src" position) are shifted in the circular buffer,
......@@ -48,7 +48,7 @@ static inline void ia_css_circbuf_shift_chunk(ia_css_circbuf_t *cb,
uint32_t chunk_src,
uint32_t chunk_dest);
/**
/*
* @brief Get the "val" field in the element.
*
* @param elem The pointer to the element.
......@@ -63,7 +63,7 @@ ia_css_circbuf_elem_get_val(ia_css_circbuf_elem_t *elem);
* Non-inline functions.
*
**********************************************************************/
/**
/*
* @brief Create the circular buffer.
* Refer to "ia_css_circbuf.h" for details.
*/
......@@ -88,7 +88,7 @@ ia_css_circbuf_create(ia_css_circbuf_t *cb,
cb->elems = elems;
}
/**
/*
* @brief Destroy the circular buffer.
* Refer to "ia_css_circbuf.h" for details.
*/
......@@ -99,7 +99,7 @@ void ia_css_circbuf_destroy(ia_css_circbuf_t *cb)
cb->elems = NULL;
}
/**
/*
* @brief Pop a value out of the circular buffer.
* Refer to "ia_css_circbuf.h" for details.
*/
......@@ -116,7 +116,7 @@ uint32_t ia_css_circbuf_pop(ia_css_circbuf_t *cb)
return ret;
}
/**
/*
* @brief Extract a value out of the circular buffer.
* Refer to "ia_css_circbuf.h" for details.
*/
......@@ -166,7 +166,7 @@ uint32_t ia_css_circbuf_extract(ia_css_circbuf_t *cb, int offset)
return val;
}
/**
/*
* @brief Peek an element from the circular buffer.
* Refer to "ia_css_circbuf.h" for details.
*/
......@@ -180,7 +180,7 @@ uint32_t ia_css_circbuf_peek(ia_css_circbuf_t *cb, int offset)
return cb->elems[pos].val;
}
/**
/*
* @brief Get the value of an element from the circular buffer.
* Refer to "ia_css_circbuf.h" for details.
*/
......@@ -194,7 +194,7 @@ uint32_t ia_css_circbuf_peek_from_start(ia_css_circbuf_t *cb, int offset)
return cb->elems[pos].val;
}
/** @brief increase size of a circular buffer.
/* @brief increase size of a circular buffer.
* Use 'CAUTION' before using this function. This was added to
* support / fix issue with increasing size for tagger only
* Please refer to "ia_css_circbuf.h" for details.
......@@ -252,7 +252,7 @@ bool ia_css_circbuf_increase_size(
* Inline functions.
*
****************************************************************/
/**
/*
* @brief Get the "val" field in the element.
* Refer to "Forward declarations" for details.
*/
......@@ -262,7 +262,7 @@ ia_css_circbuf_elem_get_val(ia_css_circbuf_elem_t *elem)
return elem->val;
}
/**
/*
* @brief Read the oldest element from the circular buffer.
* Refer to "Forward declarations" for details.
*/
......@@ -282,7 +282,7 @@ ia_css_circbuf_read(ia_css_circbuf_t *cb)
return elem;
}
/**
/*
* @brief Shift a chunk of elements in the circular buffer.
* Refer to "Forward declarations" for details.
*/
......
......@@ -19,7 +19,7 @@
#include <ia_css_frame_public.h> /* ia_css_frame_info */
#include <ia_css_binary.h> /* ia_css_binary_descr */
/** @brief Get a binary descriptor for copy.
/* @brief Get a binary descriptor for copy.
*
* @param[in] pipe
* @param[out] copy_desc
......@@ -36,7 +36,7 @@ extern void ia_css_pipe_get_copy_binarydesc(
struct ia_css_frame_info *out_info,
struct ia_css_frame_info *vf_info);
/** @brief Get a binary descriptor for vfpp.
/* @brief Get a binary descriptor for vfpp.
*
* @param[in] pipe
* @param[out] vfpp_descr
......@@ -51,7 +51,7 @@ extern void ia_css_pipe_get_vfpp_binarydesc(
struct ia_css_frame_info *in_info,
struct ia_css_frame_info *out_info);
/** @brief Get numerator and denominator of bayer downscaling factor.
/* @brief Get numerator and denominator of bayer downscaling factor.
*
* @param[in] bds_factor: The bayer downscaling factor.
* (= The bds_factor member in the sh_css_bds_factor structure.)
......@@ -67,7 +67,7 @@ extern enum ia_css_err sh_css_bds_factor_get_numerator_denominator(
unsigned int *bds_factor_numerator,
unsigned int *bds_factor_denominator);
/** @brief Get a binary descriptor for preview stage.
/* @brief Get a binary descriptor for preview stage.
*
* @param[in] pipe
* @param[out] preview_descr
......@@ -86,7 +86,7 @@ extern enum ia_css_err ia_css_pipe_get_preview_binarydesc(
struct ia_css_frame_info *out_info,
struct ia_css_frame_info *vf_info);
/** @brief Get a binary descriptor for video stage.
/* @brief Get a binary descriptor for video stage.
*
* @param[in/out] pipe
* @param[out] video_descr
......@@ -105,7 +105,7 @@ extern enum ia_css_err ia_css_pipe_get_video_binarydesc(
struct ia_css_frame_info *vf_info,
int stream_config_left_padding);
/** @brief Get a binary descriptor for yuv scaler stage.
/* @brief Get a binary descriptor for yuv scaler stage.
*
* @param[in/out] pipe
* @param[out] yuv_scaler_descr
......@@ -124,7 +124,7 @@ void ia_css_pipe_get_yuvscaler_binarydesc(
struct ia_css_frame_info *internal_out_info,
struct ia_css_frame_info *vf_info);
/** @brief Get a binary descriptor for capture pp stage.
/* @brief Get a binary descriptor for capture pp stage.
*
* @param[in/out] pipe
* @param[out] capture_pp_descr
......@@ -140,7 +140,7 @@ extern void ia_css_pipe_get_capturepp_binarydesc(
struct ia_css_frame_info *out_info,
struct ia_css_frame_info *vf_info);
/** @brief Get a binary descriptor for primary capture.
/* @brief Get a binary descriptor for primary capture.
*
* @param[in] pipe
* @param[out] prim_descr
......@@ -158,7 +158,7 @@ extern void ia_css_pipe_get_primary_binarydesc(
struct ia_css_frame_info *vf_info,
unsigned int stage_idx);
/** @brief Get a binary descriptor for pre gdc stage.
/* @brief Get a binary descriptor for pre gdc stage.
*
* @param[in] pipe
* @param[out] pre_gdc_descr
......@@ -173,7 +173,7 @@ extern void ia_css_pipe_get_pre_gdc_binarydesc(
struct ia_css_frame_info *in_info,
struct ia_css_frame_info *out_info);
/** @brief Get a binary descriptor for gdc stage.
/* @brief Get a binary descriptor for gdc stage.
*
* @param[in] pipe
* @param[out] gdc_descr
......@@ -188,7 +188,7 @@ extern void ia_css_pipe_get_gdc_binarydesc(
struct ia_css_frame_info *in_info,
struct ia_css_frame_info *out_info);
/** @brief Get a binary descriptor for post gdc.
/* @brief Get a binary descriptor for post gdc.
*
* @param[in] pipe
* @param[out] post_gdc_descr
......@@ -205,7 +205,7 @@ extern void ia_css_pipe_get_post_gdc_binarydesc(
struct ia_css_frame_info *out_info,
struct ia_css_frame_info *vf_info);
/** @brief Get a binary descriptor for de.
/* @brief Get a binary descriptor for de.
*
* @param[in] pipe
* @param[out] pre_de_descr
......@@ -220,7 +220,7 @@ extern void ia_css_pipe_get_pre_de_binarydesc(
struct ia_css_frame_info *in_info,
struct ia_css_frame_info *out_info);
/** @brief Get a binary descriptor for pre anr stage.
/* @brief Get a binary descriptor for pre anr stage.
*
* @param[in] pipe
* @param[out] pre_anr_descr
......@@ -235,7 +235,7 @@ extern void ia_css_pipe_get_pre_anr_binarydesc(
struct ia_css_frame_info *in_info,
struct ia_css_frame_info *out_info);
/** @brief Get a binary descriptor for ANR stage.
/* @brief Get a binary descriptor for ANR stage.
*
* @param[in] pipe
* @param[out] anr_descr
......@@ -250,7 +250,7 @@ extern void ia_css_pipe_get_anr_binarydesc(
struct ia_css_frame_info *in_info,
struct ia_css_frame_info *out_info);
/** @brief Get a binary descriptor for post anr stage.
/* @brief Get a binary descriptor for post anr stage.
*
* @param[in] pipe
* @param[out] post_anr_descr
......@@ -267,7 +267,7 @@ extern void ia_css_pipe_get_post_anr_binarydesc(
struct ia_css_frame_info *out_info,
struct ia_css_frame_info *vf_info);
/** @brief Get a binary descriptor for ldc stage.
/* @brief Get a binary descriptor for ldc stage.
*
* @param[in/out] pipe
* @param[out] capture_pp_descr
......@@ -282,7 +282,7 @@ extern void ia_css_pipe_get_ldc_binarydesc(
struct ia_css_frame_info *in_info,
struct ia_css_frame_info *out_info);
/** @brief Calculates the required BDS factor
/* @brief Calculates the required BDS factor
*
* @param[in] input_res
* @param[in] output_res
......
......@@ -18,7 +18,7 @@
#include <ia_css_types.h>
#include <ia_css_frame_public.h>
/** @brief Get Input format bits per pixel based on stream configuration of this
/* @brief Get Input format bits per pixel based on stream configuration of this
* pipe.
*
* @param[in] pipe
......
......@@ -22,7 +22,7 @@
#include <ia_css_stream_public.h>
#include <ia_css_stream_format.h>
/** @brief convert "errno" error code to "ia_css_err" error code
/* @brief convert "errno" error code to "ia_css_err" error code
*
* @param[in] "errno" error code
* @return "ia_css_err" error code
......@@ -31,7 +31,7 @@
enum ia_css_err ia_css_convert_errno(
int in_err);
/** @brief check vf frame info.
/* @brief check vf frame info.
*
* @param[in] info
* @return IA_CSS_SUCCESS or error code upon error.
......@@ -40,7 +40,7 @@ enum ia_css_err ia_css_convert_errno(
extern enum ia_css_err ia_css_util_check_vf_info(
const struct ia_css_frame_info * const info);
/** @brief check input configuration.
/* @brief check input configuration.
*
* @param[in] stream_config
* @param[in] must_be_raw
......@@ -52,7 +52,7 @@ extern enum ia_css_err ia_css_util_check_input(
bool must_be_raw,
bool must_be_yuv);
/** @brief check vf and out frame info.
/* @brief check vf and out frame info.
*
* @param[in] out_info
* @param[in] vf_info
......@@ -63,7 +63,7 @@ extern enum ia_css_err ia_css_util_check_vf_out_info(
const struct ia_css_frame_info * const out_info,
const struct ia_css_frame_info * const vf_info);
/** @brief check width and height
/* @brief check width and height
*
* @param[in] width
* @param[in] height
......@@ -75,7 +75,7 @@ extern enum ia_css_err ia_css_util_check_res(
unsigned int height);
#ifdef ISP2401
/** @brief compare resolutions (less or equal)
/* @brief compare resolutions (less or equal)
*
* @param[in] a resolution
* @param[in] b resolution
......@@ -108,7 +108,7 @@ extern bool ia_css_util_resolution_is_even(
const struct ia_css_resolution resolution);
#endif
/** @brief check width and height
/* @brief check width and height
*
* @param[in] stream_format
* @param[in] two_ppc
......@@ -119,7 +119,7 @@ extern unsigned int ia_css_util_input_format_bpp(
enum ia_css_stream_format stream_format,
bool two_ppc);
/** @brief check if input format it raw
/* @brief check if input format it raw
*
* @param[in] stream_format
* @return true if the input format is raw or false otherwise
......@@ -128,7 +128,7 @@ extern unsigned int ia_css_util_input_format_bpp(
extern bool ia_css_util_is_input_format_raw(
enum ia_css_stream_format stream_format);
/** @brief check if input format it yuv
/* @brief check if input format it yuv
*
* @param[in] stream_format
* @return true if the input format is yuv or false otherwise
......
......@@ -277,6 +277,6 @@ static inline void csi_rx_be_ctrl_reg_store(
ia_css_device_store_uint32(CSI_RX_BE_CTRL_BASE[ID] + reg*sizeof(hrt_data), value);
}
/** end of DLI */
/* end of DLI */
#endif /* __CSI_RX_PRIVATE_H_INCLUDED__ */
......@@ -192,7 +192,7 @@ STORAGE_CLASS_IBUF_CTRL_C void ibuf_ctrl_dump_state(
ia_css_print("IBUF controller ID %d Process ID %d isp_sync_state 0x%x\n", ID, i, state->proc_state[i].isp_sync_state);
}
}
/** end of NCI */
/* end of NCI */
/*****************************************************
*
......@@ -227,7 +227,7 @@ STORAGE_CLASS_IBUF_CTRL_C void ibuf_ctrl_reg_store(
ia_css_device_store_uint32(IBUF_CTRL_BASE[ID] + reg*sizeof(hrt_data), value);
}
/** end of DLI */
/* end of DLI */
#endif /* __IBUF_CTRL_PRIVATE_H_INCLUDED__ */
......@@ -26,7 +26,7 @@
#include "isys_irq_private.h"
#endif
/** Public interface */
/* Public interface */
STORAGE_CLASS_ISYS2401_IRQ_C void isys_irqc_status_enable(
const isys_irq_ID_t isys_irqc_id)
{
......
......@@ -59,7 +59,7 @@ STORAGE_CLASS_ISYS2401_IRQ_C void isys_irqc_state_dump(
state->status, state->edge, state->mask, state->enable, state->level_no);
}
/** end of NCI */
/* end of NCI */
/* -------------------------------------------------------+
| Device level interface (DLI) |
......@@ -101,7 +101,7 @@ STORAGE_CLASS_ISYS2401_IRQ_C hrt_data isys_irqc_reg_load(
return value;
}
/** end of DLI */
/* end of DLI */
#endif /* defined(USE_INPUT_SYSTEM_VERSION_2401) */
......
......@@ -122,7 +122,7 @@ STORAGE_CLASS_STREAM2MMIO_C void stream2mmio_dump_state(
stream2mmio_print_sid_state(&(state->sid_state[i]));
}
}
/** end of NCI */
/* end of NCI */
/*****************************************************
*
......@@ -163,6 +163,6 @@ STORAGE_CLASS_STREAM2MMIO_C void stream2mmio_reg_store(
ia_css_device_store_uint32(STREAM2MMIO_CTRL_BASE[ID] +
reg * sizeof(hrt_data), value);
}
/** end of DLI */
/* end of DLI */
#endif /* __ISYS_STREAM2MMIO_PRIVATE_H_INCLUDED__ */
......@@ -160,5 +160,5 @@ STORAGE_CLASS_PIXELGEN_C void pixelgen_ctrl_reg_store(
ia_css_device_store_uint32(PIXELGEN_CTRL_BASE[ID] + reg*sizeof(hrt_data), value);
}
/** end of DLI */
/* end of DLI */
#endif /* __PIXELGEN_PRIVATE_H_INCLUDED__ */
......@@ -46,7 +46,7 @@ struct isys2401_dma_port_cfg_s {
uint32_t cropping;
uint32_t width;
};
/** end of DMA Port */
/* end of DMA Port */
/************************************************
*
......@@ -79,7 +79,7 @@ struct isys2401_dma_cfg_s {
isys2401_dma_extension extension;
uint32_t height;
};
/** end of DMA Device */
/* end of DMA Device */
/* isys2401_dma_channel limits per DMA ID */
extern const isys2401_dma_channel N_ISYS2401_DMA_CHANNEL_PROCS[N_ISYS2401_DMA_ID];
......
......@@ -86,6 +86,6 @@ struct pixelgen_prbs_cfg_s {
sync_generator_cfg_t sync_gen_cfg;
};
/** end of Pixel-generator: TPG. ("pixelgen_global.h") */
/* end of Pixel-generator: TPG. ("pixelgen_global.h") */
#endif /* __PIXELGEN_GLOBAL_H_INCLUDED__ */
......@@ -331,7 +331,7 @@ typedef enum {
IBUF_CTRL2_ID, /* map ISYS2401_IBUF_CNTRL_C */
N_IBUF_CTRL_ID
} ibuf_ctrl_ID_t;
/** end of Input-buffer Controller */
/* end of Input-buffer Controller */
/*
* Stream2MMIO.
......@@ -364,7 +364,7 @@ typedef enum {
STREAM2MMIO_SID7_ID,
N_STREAM2MMIO_SID_ID
} stream2mmio_sid_ID_t;
/** end of Stream2MMIO */
/* end of Stream2MMIO */
/**
* Input System 2401: CSI-MIPI recevier.
......@@ -390,7 +390,7 @@ typedef enum {
CSI_RX_DLANE3_ID, /* map to DLANE3 in CSI RX */
N_CSI_RX_DLANE_ID
} csi_rx_fe_dlane_ID_t;
/** end of CSI-MIPI receiver */
/* end of CSI-MIPI receiver */
typedef enum {
ISYS2401_DMA0_ID = 0,
......@@ -406,7 +406,7 @@ typedef enum {
PIXELGEN2_ID,
N_PIXELGEN_ID
} pixelgen_ID_t;
/** end of pixel-generator. ("system_global.h") */
/* end of pixel-generator. ("system_global.h") */
typedef enum {
INPUT_SYSTEM_CSI_PORT0_ID = 0,
......
......@@ -31,7 +31,7 @@ more details.
#ifndef __CSS_API_VERSION_H
#define __CSS_API_VERSION_H
/** @file
/* @file
* CSS API version file. This file contains the version number of the CSS-API.
*
* This file is generated from a set of input files describing the CSS-API
......
......@@ -21,7 +21,7 @@
#endif /* __INLINE_GP_TIMER__ */
#include "system_local.h"
/** FIXME: not sure if reg_load(), reg_store() should be API.
/* FIXME: not sure if reg_load(), reg_store() should be API.
*/
static uint32_t
gp_timer_reg_load(uint32_t reg);
......
......@@ -73,7 +73,7 @@ extern void csi_rx_be_ctrl_get_state(
extern void csi_rx_be_ctrl_dump_state(
const csi_rx_backend_ID_t ID,
csi_rx_be_ctrl_state_t *state);
/** end of NCI */
/* end of NCI */
/*****************************************************
*
......@@ -130,6 +130,6 @@ extern void csi_rx_be_ctrl_reg_store(
const csi_rx_backend_ID_t ID,
const hrt_address reg,
const hrt_data value);
/** end of DLI */
/* end of DLI */
#endif /* USE_INPUT_SYSTEM_VERSION_2401 */
#endif /* __CSI_RX_PUBLIC_H_INCLUDED__ */
......@@ -54,7 +54,7 @@ STORAGE_CLASS_IBUF_CTRL_H void ibuf_ctrl_get_proc_state(
STORAGE_CLASS_IBUF_CTRL_H void ibuf_ctrl_dump_state(
const ibuf_ctrl_ID_t ID,
ibuf_ctrl_state_t *state);
/** end of NCI */
/* end of NCI */
/*****************************************************
*
......@@ -87,7 +87,7 @@ STORAGE_CLASS_IBUF_CTRL_H void ibuf_ctrl_reg_store(
const ibuf_ctrl_ID_t ID,
const hrt_address reg,
const hrt_data value);
/** end of DLI */
/* end of DLI */
#endif /* USE_INPUT_SYSTEM_VERSION_2401 */
#endif /* __IBUF_CTRL_PUBLIC_H_INCLUDED__ */
......@@ -48,7 +48,7 @@
/* Arithmetic */
/** @brief bitwise AND
/* @brief bitwise AND
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -62,7 +62,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_and(
const tvector2w _a,
const tvector2w _b);
/** @brief bitwise OR
/* @brief bitwise OR
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -76,7 +76,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_or(
const tvector2w _a,
const tvector2w _b);
/** @brief bitwise XOR
/* @brief bitwise XOR
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -90,7 +90,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_xor(
const tvector2w _a,
const tvector2w _b);
/** @brief bitwise inverse
/* @brief bitwise inverse
*
* @param[in] _a first argument
*
......@@ -104,7 +104,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_inv(
/* Additive */
/** @brief addition
/* @brief addition
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -119,7 +119,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_add(
const tvector2w _a,
const tvector2w _b);
/** @brief subtraction
/* @brief subtraction
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -134,7 +134,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_sub(
const tvector2w _a,
const tvector2w _b);
/** @brief saturated addition
/* @brief saturated addition
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -149,7 +149,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_addsat(
const tvector2w _a,
const tvector2w _b);
/** @brief saturated subtraction
/* @brief saturated subtraction
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -164,7 +164,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_subsat(
const tvector2w _a,
const tvector2w _b);
/** @brief subtraction with shift right and rounding
/* @brief subtraction with shift right and rounding
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -184,7 +184,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_subasr1(
const tvector2w _a,
const tvector2w _b);
/** @brief Subtraction with shift right and rounding
/* @brief Subtraction with shift right and rounding
*
* @param[in] _a first operand
* @param[in] _b second operand
......@@ -199,7 +199,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_subhalfrnd(
const tvector2w _a,
const tvector2w _b);
/** @brief Subtraction with shift right and no rounding
/* @brief Subtraction with shift right and no rounding
*
* @param[in] _a first operand
* @param[in] _b second operand
......@@ -214,7 +214,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_subhalf(
const tvector2w _a,
const tvector2w _b);
/** @brief saturated absolute value
/* @brief saturated absolute value
*
* @param[in] _a input
*
......@@ -228,7 +228,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_subhalf(
STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_abs(
const tvector2w _a);
/** @brief saturated absolute difference
/* @brief saturated absolute difference
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -245,7 +245,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_subabssat(
/* Multiplicative */
/** @brief integer multiply
/* @brief integer multiply
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -262,7 +262,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_mul(
const tvector2w _a,
const tvector2w _b);
/** @brief fractional saturating multiply
/* @brief fractional saturating multiply
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -279,7 +279,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_qmul(
const tvector2w _a,
const tvector2w _b);
/** @brief fractional saturating multiply with rounding
/* @brief fractional saturating multiply with rounding
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -301,7 +301,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_qrmul(
/* Comparative */
/** @brief equal
/* @brief equal
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -315,7 +315,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tflags OP_2w_eq(
const tvector2w _a,
const tvector2w _b);
/** @brief not equal
/* @brief not equal
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -329,7 +329,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tflags OP_2w_ne(
const tvector2w _a,
const tvector2w _b);
/** @brief less or equal
/* @brief less or equal
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -343,7 +343,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tflags OP_2w_le(
const tvector2w _a,
const tvector2w _b);
/** @brief less then
/* @brief less then
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -357,7 +357,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tflags OP_2w_lt(
const tvector2w _a,
const tvector2w _b);
/** @brief greater or equal
/* @brief greater or equal
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -371,7 +371,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tflags OP_2w_ge(
const tvector2w _a,
const tvector2w _b);
/** @brief greater than
/* @brief greater than
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -387,7 +387,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tflags OP_2w_gt(
/* Shift */
/** @brief aritmetic shift right
/* @brief aritmetic shift right
*
* @param[in] _a input
* @param[in] _b shift amount
......@@ -404,7 +404,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_asr(
const tvector2w _a,
const tvector2w _b);
/** @brief aritmetic shift right with rounding
/* @brief aritmetic shift right with rounding
*
* @param[in] _a input
* @param[in] _b shift amount
......@@ -423,7 +423,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_asrrnd(
const tvector2w _a,
const tvector2w _b);
/** @brief saturating aritmetic shift left
/* @brief saturating aritmetic shift left
*
* @param[in] _a input
* @param[in] _b shift amount
......@@ -443,7 +443,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_asl(
const tvector2w _a,
const tvector2w _b);
/** @brief saturating aritmetic shift left
/* @brief saturating aritmetic shift left
*
* @param[in] _a input
* @param[in] _b shift amount
......@@ -456,7 +456,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_aslsat(
const tvector2w _a,
const tvector2w _b);
/** @brief logical shift left
/* @brief logical shift left
*
* @param[in] _a input
* @param[in] _b shift amount
......@@ -473,7 +473,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_lsl(
const tvector2w _a,
const tvector2w _b);
/** @brief logical shift right
/* @brief logical shift right
*
* @param[in] _a input
* @param[in] _b shift amount
......@@ -492,7 +492,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_lsr(
/* clipping */
/** @brief Clip asymmetrical
/* @brief Clip asymmetrical
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -507,7 +507,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_clip_asym(
const tvector2w _a,
const tvector2w _b);
/** @brief Clip zero
/* @brief Clip zero
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -524,7 +524,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_clipz(
/* division */
/** @brief Truncated division
/* @brief Truncated division
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -541,7 +541,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_div(
const tvector2w _a,
const tvector2w _b);
/** @brief Saturating truncated division
/* @brief Saturating truncated division
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -559,7 +559,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector1w OP_2w_divh(
const tvector2w _a,
const tvector1w _b);
/** @brief Modulo
/* @brief Modulo
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -572,7 +572,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_mod(
const tvector2w _a,
const tvector2w _b);
/** @brief Unsigned Integer Square root
/* @brief Unsigned Integer Square root
*
* @param[in] _a input
*
......@@ -585,7 +585,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector1w_unsigned OP_2w_sqrt_u(
/* Miscellaneous */
/** @brief Multiplexer
/* @brief Multiplexer
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -601,7 +601,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_mux(
const tvector2w _b,
const tflags _c);
/** @brief Average without rounding
/* @brief Average without rounding
*
* @param[in] _a first operand
* @param[in] _b second operand
......@@ -617,7 +617,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_avg(
const tvector2w _a,
const tvector2w _b);
/** @brief Average with rounding
/* @brief Average with rounding
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -633,7 +633,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_avgrnd(
const tvector2w _a,
const tvector2w _b);
/** @brief Minimum
/* @brief Minimum
*
* @param[in] _a first argument
* @param[in] _b second argument
......@@ -647,7 +647,7 @@ STORAGE_CLASS_ISP_OP2W_FUNC_H tvector2w OP_2w_min(
const tvector2w _a,
const tvector2w _b);
/** @brief Maximum
/* @brief Maximum
*
* @param[in] _a first argument
* @param[in] _b second argument
......
......@@ -43,7 +43,7 @@ STORAGE_CLASS_STREAM2MMIO_H void stream2mmio_get_sid_state(
const stream2mmio_ID_t ID,
const stream2mmio_sid_ID_t sid_id,
stream2mmio_sid_state_t *state);
/** end of NCI */
/* end of NCI */
/*****************************************************
*
......@@ -96,6 +96,6 @@ STORAGE_CLASS_STREAM2MMIO_H void stream2mmio_reg_store(
const stream2mmio_ID_t ID,
const hrt_address reg,
const hrt_data value);
/** end of DLI */
/* end of DLI */
#endif /* __ISYS_STREAM2MMIO_PUBLIC_H_INCLUDED__ */
......@@ -41,7 +41,7 @@ STORAGE_CLASS_PIXELGEN_H void pixelgen_ctrl_get_state(
STORAGE_CLASS_PIXELGEN_H void pixelgen_ctrl_dump_state(
const pixelgen_ID_t ID,
pixelgen_ctrl_state_t *state);
/** end of NCI */
/* end of NCI */
/*****************************************************
*
......@@ -73,7 +73,7 @@ STORAGE_CLASS_PIXELGEN_H void pixelgen_ctrl_reg_store(
const pixelgen_ID_t ID,
const hrt_address reg,
const hrt_data value);
/** end of DLI */
/* end of DLI */
#endif /* USE_INPUT_SYSTEM_VERSION_2401 */
#endif /* __PIXELGEN_PUBLIC_H_INCLUDED__ */
......@@ -168,7 +168,7 @@ static inline unsigned int round_half_down_mul(unsigned int a, unsigned int b)
}
#endif
/** @brief Next Power of Two
/* @brief Next Power of Two
*
* @param[in] unsigned number
*
......
......@@ -23,7 +23,7 @@
*/
/** @brief Copy from src_buf to dest_buf.
/* @brief Copy from src_buf to dest_buf.
*
* @param[out] dest_buf. Destination buffer to copy to
* @param[in] dest_size. The size of the destination buffer in bytes
......@@ -53,7 +53,7 @@ static inline int memcpy_s(
return 0;
}
/** @brief Get the length of the string, excluding the null terminator
/* @brief Get the length of the string, excluding the null terminator
*
* @param[in] src_str. The source string
* @param[in] max_len. Look only for max_len bytes in the string
......@@ -78,7 +78,7 @@ static size_t strnlen_s(
return ix;
}
/** @brief Copy string from src_str to dest_str
/* @brief Copy string from src_str to dest_str
*
* @param[out] dest_str. Destination buffer to copy to
* @param[in] dest_size. The size of the destination buffer in bytes
......@@ -120,7 +120,7 @@ static inline int strncpy_s(
return 0;
}
/** @brief Copy string from src_str to dest_str
/* @brief Copy string from src_str to dest_str
*
* @param[out] dest_str. Destination buffer to copy to
* @param[in] dest_size. The size of the destination buffer in bytes
......
......@@ -17,7 +17,7 @@
#include <assert_support.h>
#include "tag_local.h"
/**
/*
* @brief Creates the tag description from the given parameters.
* @param[in] num_captures
* @param[in] skip
......@@ -39,7 +39,7 @@ sh_css_create_tag_descr(int num_captures,
tag_descr->exp_id = exp_id;
}
/**
/*
* @brief Encodes the members of tag description into a 32-bit value.
* @param[in] tag Pointer to the tag description
* @return (unsigned int) Encoded 32-bit tag-info
......
......@@ -16,7 +16,7 @@
#ifndef _IA_CSS_H_
#define _IA_CSS_H_
/** @file
/* @file
* This file is the starting point of the CSS-API. It includes all CSS-API
* header files.
*/
......
......@@ -15,7 +15,7 @@
#ifndef __IA_CSS_3A_H
#define __IA_CSS_3A_H
/** @file
/* @file
* This file contains types used for 3A statistics
*/
......@@ -31,7 +31,7 @@ enum ia_css_3a_tables {
IA_CSS_NUM_3A_TABLES
};
/** Structure that holds 3A statistics in the ISP internal
/* Structure that holds 3A statistics in the ISP internal
* format. Use ia_css_get_3a_statistics() to translate
* this to the format used on the host (3A library).
* */
......@@ -48,13 +48,13 @@ struct ia_css_isp_3a_statistics {
struct {
ia_css_ptr rgby_tbl;
} data_hmem;
uint32_t exp_id; /**< exposure id, to match statistics to a frame,
uint32_t exp_id; /** exposure id, to match statistics to a frame,
see ia_css_event_public.h for more detail. */
uint32_t isp_config_id;/**< Unique ID to track which config was actually applied to a particular frame */
ia_css_ptr data_ptr; /**< pointer to base of all data */
uint32_t size; /**< total size of all data */
uint32_t isp_config_id;/** Unique ID to track which config was actually applied to a particular frame */
ia_css_ptr data_ptr; /** pointer to base of all data */
uint32_t size; /** total size of all data */
uint32_t dmem_size;
uint32_t vmem_size; /**< both lo and hi have this size */
uint32_t vmem_size; /** both lo and hi have this size */
uint32_t hmem_size;
};
#define SIZE_OF_DMEM_STRUCT \
......@@ -77,7 +77,7 @@ struct ia_css_isp_3a_statistics {
SIZE_OF_IA_CSS_PTR + \
4 * sizeof(uint32_t))
/** Map with host-side pointers to ISP-format statistics.
/* Map with host-side pointers to ISP-format statistics.
* These pointers can either be copies of ISP data or memory mapped
* ISP pointers.
* All of the data behind these pointers is allocated contiguously, the
......@@ -85,17 +85,17 @@ struct ia_css_isp_3a_statistics {
* point into this one block of data.
*/
struct ia_css_isp_3a_statistics_map {
void *data_ptr; /**< Pointer to start of memory */
void *data_ptr; /** Pointer to start of memory */
struct ia_css_3a_output *dmem_stats;
uint16_t *vmem_stats_hi;
uint16_t *vmem_stats_lo;
struct ia_css_bh_table *hmem_stats;
uint32_t size; /**< total size in bytes of data_ptr */
uint32_t data_allocated; /**< indicate whether data_ptr
uint32_t size; /** total size in bytes of data_ptr */
uint32_t data_allocated; /** indicate whether data_ptr
was allocated or not. */
};
/** @brief Copy and translate 3A statistics from an ISP buffer to a host buffer
/* @brief Copy and translate 3A statistics from an ISP buffer to a host buffer
* @param[out] host_stats Host buffer.
* @param[in] isp_stats ISP buffer.
* @return error value if temporary memory cannot be allocated
......@@ -109,7 +109,7 @@ enum ia_css_err
ia_css_get_3a_statistics(struct ia_css_3a_statistics *host_stats,
const struct ia_css_isp_3a_statistics *isp_stats);
/** @brief Translate 3A statistics from ISP format to host format.
/* @brief Translate 3A statistics from ISP format to host format.
* @param[out] host_stats host-format statistics
* @param[in] isp_stats ISP-format statistics
* @return None
......@@ -125,35 +125,35 @@ ia_css_translate_3a_statistics(
/* Convenience functions for alloc/free of certain datatypes */
/** @brief Allocate memory for the 3a statistics on the ISP
/* @brief Allocate memory for the 3a statistics on the ISP
* @param[in] grid The grid.
* @return Pointer to the allocated 3a statistics buffer on the ISP
*/
struct ia_css_isp_3a_statistics *
ia_css_isp_3a_statistics_allocate(const struct ia_css_3a_grid_info *grid);
/** @brief Free the 3a statistics memory on the isp
/* @brief Free the 3a statistics memory on the isp
* @param[in] me Pointer to the 3a statistics buffer on the ISP.
* @return None
*/
void
ia_css_isp_3a_statistics_free(struct ia_css_isp_3a_statistics *me);
/** @brief Allocate memory for the 3a statistics on the host
/* @brief Allocate memory for the 3a statistics on the host
* @param[in] grid The grid.
* @return Pointer to the allocated 3a statistics buffer on the host
*/
struct ia_css_3a_statistics *
ia_css_3a_statistics_allocate(const struct ia_css_3a_grid_info *grid);
/** @brief Free the 3a statistics memory on the host
/* @brief Free the 3a statistics memory on the host
* @param[in] me Pointer to the 3a statistics buffer on the host.
* @return None
*/
void
ia_css_3a_statistics_free(struct ia_css_3a_statistics *me);
/** @brief Allocate a 3a statistics map structure
/* @brief Allocate a 3a statistics map structure
* @param[in] isp_stats pointer to ISP 3a statistis struct
* @param[in] data_ptr host-side pointer to ISP 3a statistics.
* @return Pointer to the allocated 3a statistics map
......@@ -174,7 +174,7 @@ ia_css_isp_3a_statistics_map_allocate(
const struct ia_css_isp_3a_statistics *isp_stats,
void *data_ptr);
/** @brief Free the 3a statistics map
/* @brief Free the 3a statistics map
* @param[in] me Pointer to the 3a statistics map
* @return None
*
......
......@@ -15,7 +15,7 @@
#ifndef __IA_CSS_BUFFER_H
#define __IA_CSS_BUFFER_H
/** @file
/* @file
* This file contains datastructures and types for buffers used in CSS
*/
......@@ -23,7 +23,7 @@
#include "ia_css_types.h"
#include "ia_css_timer.h"
/** Enumeration of buffer types. Buffers can be queued and de-queued
/* Enumeration of buffer types. Buffers can be queued and de-queued
* to hand them over between IA and ISP.
*/
enum ia_css_buffer_type {
......@@ -48,28 +48,28 @@ enum ia_css_buffer_type {
/* Driver API is not SP/ISP visible, 64 bit types not supported on hivecc */
#if !defined(__ISP)
/** Buffer structure. This is a container structure that enables content
/* Buffer structure. This is a container structure that enables content
* independent buffer queues and access functions.
*/
struct ia_css_buffer {
enum ia_css_buffer_type type; /**< Buffer type. */
enum ia_css_buffer_type type; /** Buffer type. */
unsigned int exp_id;
/**< exposure id for this buffer; 0 = not available
/** exposure id for this buffer; 0 = not available
see ia_css_event_public.h for more detail. */
union {
struct ia_css_isp_3a_statistics *stats_3a; /**< 3A statistics & optionally RGBY statistics. */
struct ia_css_isp_dvs_statistics *stats_dvs; /**< DVS statistics. */
struct ia_css_isp_skc_dvs_statistics *stats_skc_dvs; /**< SKC DVS statistics. */
struct ia_css_frame *frame; /**< Frame buffer. */
struct ia_css_acc_param *custom_data; /**< Custom buffer. */
struct ia_css_metadata *metadata; /**< Sensor metadata. */
} data; /**< Buffer data pointer. */
uint64_t driver_cookie; /**< cookie for the driver */
struct ia_css_time_meas timing_data; /**< timing data (readings from the timer) */
struct ia_css_clock_tick isys_eof_clock_tick; /**< ISYS's end of frame timer tick*/
struct ia_css_isp_3a_statistics *stats_3a; /** 3A statistics & optionally RGBY statistics. */
struct ia_css_isp_dvs_statistics *stats_dvs; /** DVS statistics. */
struct ia_css_isp_skc_dvs_statistics *stats_skc_dvs; /** SKC DVS statistics. */
struct ia_css_frame *frame; /** Frame buffer. */
struct ia_css_acc_param *custom_data; /** Custom buffer. */
struct ia_css_metadata *metadata; /** Sensor metadata. */
} data; /** Buffer data pointer. */
uint64_t driver_cookie; /** cookie for the driver */
struct ia_css_time_meas timing_data; /** timing data (readings from the timer) */
struct ia_css_clock_tick isys_eof_clock_tick; /** ISYS's end of frame timer tick*/
};
/** @brief Dequeue param buffers from sp2host_queue
/* @brief Dequeue param buffers from sp2host_queue
*
* @return None
*
......
......@@ -15,7 +15,7 @@
#ifndef __IA_CSS_CONTROL_H
#define __IA_CSS_CONTROL_H
/** @file
/* @file
* This file contains functionality for starting and controlling CSS
*/
......@@ -24,7 +24,7 @@
#include <ia_css_firmware.h>
#include <ia_css_irq.h>
/** @brief Initialize the CSS API.
/* @brief Initialize the CSS API.
* @param[in] env Environment, provides functions to access the
* environment in which the CSS code runs. This is
* used for host side memory access and message
......@@ -51,7 +51,7 @@ enum ia_css_err ia_css_init(
uint32_t l1_base,
enum ia_css_irq_type irq_type);
/** @brief Un-initialize the CSS API.
/* @brief Un-initialize the CSS API.
* @return None
*
* This function deallocates all memory that has been allocated by the CSS API
......@@ -66,7 +66,7 @@ enum ia_css_err ia_css_init(
void
ia_css_uninit(void);
/** @brief Suspend CSS API for power down
/* @brief Suspend CSS API for power down
* @return success or faulure code
*
* suspend shuts down the system by:
......@@ -80,7 +80,7 @@ ia_css_uninit(void);
enum ia_css_err
ia_css_suspend(void);
/** @brief Resume CSS API from power down
/* @brief Resume CSS API from power down
* @return success or failure code
*
* After a power cycle, this function will bring the CSS API back into
......@@ -91,7 +91,7 @@ ia_css_suspend(void);
enum ia_css_err
ia_css_resume(void);
/** @brief Enable use of a separate queue for ISYS events.
/* @brief Enable use of a separate queue for ISYS events.
*
* @param[in] enable: enable or disable use of separate ISYS event queues.
* @return error if called when SP is running.
......@@ -105,7 +105,7 @@ ia_css_resume(void);
enum ia_css_err
ia_css_enable_isys_event_queue(bool enable);
/** @brief Test whether the ISP has started.
/* @brief Test whether the ISP has started.
*
* @return Boolean flag true if the ISP has started or false otherwise.
*
......@@ -114,7 +114,7 @@ ia_css_enable_isys_event_queue(bool enable);
bool
ia_css_isp_has_started(void);
/** @brief Test whether the SP has initialized.
/* @brief Test whether the SP has initialized.
*
* @return Boolean flag true if the SP has initialized or false otherwise.
*
......@@ -123,7 +123,7 @@ ia_css_isp_has_started(void);
bool
ia_css_sp_has_initialized(void);
/** @brief Test whether the SP has terminated.
/* @brief Test whether the SP has terminated.
*
* @return Boolean flag true if the SP has terminated or false otherwise.
*
......@@ -132,7 +132,7 @@ ia_css_sp_has_initialized(void);
bool
ia_css_sp_has_terminated(void);
/** @brief start SP hardware
/* @brief start SP hardware
*
* @return IA_CSS_SUCCESS or error code upon error.
*
......@@ -144,7 +144,7 @@ enum ia_css_err
ia_css_start_sp(void);
/** @brief stop SP hardware
/* @brief stop SP hardware
*
* @return IA_CSS_SUCCESS or error code upon error.
*
......
......@@ -15,7 +15,7 @@
#ifndef _IA_CSS_DEVICE_ACCESS_H
#define _IA_CSS_DEVICE_ACCESS_H
/** @file
/* @file
* File containing internal functions for the CSS-API to access the CSS device.
*/
......
......@@ -15,7 +15,7 @@
#ifndef __IA_CSS_DVS_H
#define __IA_CSS_DVS_H
/** @file
/* @file
* This file contains types for DVS statistics
*/
......@@ -31,7 +31,7 @@ enum dvs_statistics_type {
};
/** Structure that holds DVS statistics in the ISP internal
/* Structure that holds DVS statistics in the ISP internal
* format. Use ia_css_get_dvs_statistics() to translate
* this to the format used on the host (DVS engine).
* */
......@@ -40,12 +40,12 @@ struct ia_css_isp_dvs_statistics {
ia_css_ptr ver_proj;
uint32_t hor_size;
uint32_t ver_size;
uint32_t exp_id; /**< see ia_css_event_public.h for more detail */
uint32_t exp_id; /** see ia_css_event_public.h for more detail */
ia_css_ptr data_ptr; /* base pointer containing all memory */
uint32_t size; /* size of allocated memory in data_ptr */
};
/** Structure that holds SKC DVS statistics in the ISP internal
/* Structure that holds SKC DVS statistics in the ISP internal
* format. Use ia_css_dvs_statistics_get() to translate this to
* the format used on the host.
* */
......@@ -82,7 +82,7 @@ union ia_css_dvs_statistics_host {
struct ia_css_skc_dvs_statistics *p_skc_dvs_statistics_host;
};
/** @brief Copy DVS statistics from an ISP buffer to a host buffer.
/* @brief Copy DVS statistics from an ISP buffer to a host buffer.
* @param[in] host_stats Host buffer
* @param[in] isp_stats ISP buffer
* @return error value if temporary memory cannot be allocated
......@@ -100,7 +100,7 @@ enum ia_css_err
ia_css_get_dvs_statistics(struct ia_css_dvs_statistics *host_stats,
const struct ia_css_isp_dvs_statistics *isp_stats);
/** @brief Translate DVS statistics from ISP format to host format
/* @brief Translate DVS statistics from ISP format to host format
* @param[in] host_stats Host buffer
* @param[in] isp_stats ISP buffer
* @return None
......@@ -116,7 +116,7 @@ ia_css_translate_dvs_statistics(
struct ia_css_dvs_statistics *host_stats,
const struct ia_css_isp_dvs_statistics_map *isp_stats);
/** @brief Copy DVS 2.0 statistics from an ISP buffer to a host buffer.
/* @brief Copy DVS 2.0 statistics from an ISP buffer to a host buffer.
* @param[in] host_stats Host buffer
* @param[in] isp_stats ISP buffer
* @return error value if temporary memory cannot be allocated
......@@ -134,7 +134,7 @@ enum ia_css_err
ia_css_get_dvs2_statistics(struct ia_css_dvs2_statistics *host_stats,
const struct ia_css_isp_dvs_statistics *isp_stats);
/** @brief Translate DVS2 statistics from ISP format to host format
/* @brief Translate DVS2 statistics from ISP format to host format
* @param[in] host_stats Host buffer
* @param[in] isp_stats ISP buffer
* @return None
......@@ -150,7 +150,7 @@ ia_css_translate_dvs2_statistics(
struct ia_css_dvs2_statistics *host_stats,
const struct ia_css_isp_dvs_statistics_map *isp_stats);
/** @brief Copy DVS statistics from an ISP buffer to a host buffer.
/* @brief Copy DVS statistics from an ISP buffer to a host buffer.
* @param[in] type - DVS statistics type
* @param[in] host_stats Host buffer
* @param[in] isp_stats ISP buffer
......@@ -161,105 +161,105 @@ ia_css_dvs_statistics_get(enum dvs_statistics_type type,
union ia_css_dvs_statistics_host *host_stats,
const union ia_css_dvs_statistics_isp *isp_stats);
/** @brief Allocate the DVS statistics memory on the ISP
/* @brief Allocate the DVS statistics memory on the ISP
* @param[in] grid The grid.
* @return Pointer to the allocated DVS statistics buffer on the ISP
*/
struct ia_css_isp_dvs_statistics *
ia_css_isp_dvs_statistics_allocate(const struct ia_css_dvs_grid_info *grid);
/** @brief Free the DVS statistics memory on the ISP
/* @brief Free the DVS statistics memory on the ISP
* @param[in] me Pointer to the DVS statistics buffer on the ISP.
* @return None
*/
void
ia_css_isp_dvs_statistics_free(struct ia_css_isp_dvs_statistics *me);
/** @brief Allocate the DVS 2.0 statistics memory
/* @brief Allocate the DVS 2.0 statistics memory
* @param[in] grid The grid.
* @return Pointer to the allocated DVS statistics buffer on the ISP
*/
struct ia_css_isp_dvs_statistics *
ia_css_isp_dvs2_statistics_allocate(const struct ia_css_dvs_grid_info *grid);
/** @brief Free the DVS 2.0 statistics memory
/* @brief Free the DVS 2.0 statistics memory
* @param[in] me Pointer to the DVS statistics buffer on the ISP.
* @return None
*/
void
ia_css_isp_dvs2_statistics_free(struct ia_css_isp_dvs_statistics *me);
/** @brief Allocate the DVS statistics memory on the host
/* @brief Allocate the DVS statistics memory on the host
* @param[in] grid The grid.
* @return Pointer to the allocated DVS statistics buffer on the host
*/
struct ia_css_dvs_statistics *
ia_css_dvs_statistics_allocate(const struct ia_css_dvs_grid_info *grid);
/** @brief Free the DVS statistics memory on the host
/* @brief Free the DVS statistics memory on the host
* @param[in] me Pointer to the DVS statistics buffer on the host.
* @return None
*/
void
ia_css_dvs_statistics_free(struct ia_css_dvs_statistics *me);
/** @brief Allocate the DVS coefficients memory
/* @brief Allocate the DVS coefficients memory
* @param[in] grid The grid.
* @return Pointer to the allocated DVS coefficients buffer
*/
struct ia_css_dvs_coefficients *
ia_css_dvs_coefficients_allocate(const struct ia_css_dvs_grid_info *grid);
/** @brief Free the DVS coefficients memory
/* @brief Free the DVS coefficients memory
* @param[in] me Pointer to the DVS coefficients buffer.
* @return None
*/
void
ia_css_dvs_coefficients_free(struct ia_css_dvs_coefficients *me);
/** @brief Allocate the DVS 2.0 statistics memory on the host
/* @brief Allocate the DVS 2.0 statistics memory on the host
* @param[in] grid The grid.
* @return Pointer to the allocated DVS 2.0 statistics buffer on the host
*/
struct ia_css_dvs2_statistics *
ia_css_dvs2_statistics_allocate(const struct ia_css_dvs_grid_info *grid);
/** @brief Free the DVS 2.0 statistics memory
/* @brief Free the DVS 2.0 statistics memory
* @param[in] me Pointer to the DVS 2.0 statistics buffer on the host.
* @return None
*/
void
ia_css_dvs2_statistics_free(struct ia_css_dvs2_statistics *me);
/** @brief Allocate the DVS 2.0 coefficients memory
/* @brief Allocate the DVS 2.0 coefficients memory
* @param[in] grid The grid.
* @return Pointer to the allocated DVS 2.0 coefficients buffer
*/
struct ia_css_dvs2_coefficients *
ia_css_dvs2_coefficients_allocate(const struct ia_css_dvs_grid_info *grid);
/** @brief Free the DVS 2.0 coefficients memory
/* @brief Free the DVS 2.0 coefficients memory
* @param[in] me Pointer to the DVS 2.0 coefficients buffer.
* @return None
*/
void
ia_css_dvs2_coefficients_free(struct ia_css_dvs2_coefficients *me);
/** @brief Allocate the DVS 2.0 6-axis config memory
/* @brief Allocate the DVS 2.0 6-axis config memory
* @param[in] stream The stream.
* @return Pointer to the allocated DVS 6axis configuration buffer
*/
struct ia_css_dvs_6axis_config *
ia_css_dvs2_6axis_config_allocate(const struct ia_css_stream *stream);
/** @brief Free the DVS 2.0 6-axis config memory
/* @brief Free the DVS 2.0 6-axis config memory
* @param[in] dvs_6axis_config Pointer to the DVS 6axis configuration buffer
* @return None
*/
void
ia_css_dvs2_6axis_config_free(struct ia_css_dvs_6axis_config *dvs_6axis_config);
/** @brief Allocate a dvs statistics map structure
/* @brief Allocate a dvs statistics map structure
* @param[in] isp_stats pointer to ISP dvs statistis struct
* @param[in] data_ptr host-side pointer to ISP dvs statistics.
* @return Pointer to the allocated dvs statistics map
......@@ -280,7 +280,7 @@ ia_css_isp_dvs_statistics_map_allocate(
const struct ia_css_isp_dvs_statistics *isp_stats,
void *data_ptr);
/** @brief Free the dvs statistics map
/* @brief Free the dvs statistics map
* @param[in] me Pointer to the dvs statistics map
* @return None
*
......@@ -291,7 +291,7 @@ ia_css_isp_dvs_statistics_map_allocate(
void
ia_css_isp_dvs_statistics_map_free(struct ia_css_isp_dvs_statistics_map *me);
/** @brief Allocate memory for the SKC DVS statistics on the ISP
/* @brief Allocate memory for the SKC DVS statistics on the ISP
* @return Pointer to the allocated ACC DVS statistics buffer on the ISP
*/
struct ia_css_isp_skc_dvs_statistics *ia_css_skc_dvs_statistics_allocate(void);
......
......@@ -20,12 +20,12 @@
#include "ia_css_types.h"
#include "ia_css_acc_types.h"
/** @file
/* @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. */
/* 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,
......@@ -33,62 +33,62 @@ enum ia_css_mem_attr {
IA_CSS_MEM_ATTR_CONTIGUOUS = 1 << 3,
};
/** Environment with function pointers for local IA memory allocation.
/* 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. */
/** Flush function to flush the cache for given accelerator. */
};
/** Environment with function pointers to access the CSS hardware. This includes
/* 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.
/** 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.
/** 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.
/** 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
/** 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
/** 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
/** 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. */
/** 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. */
/** 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.
/* 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. */
/** Print a debug message. */
int (*error_print)(const char *fmt, va_list args);
/**< Print an error message.*/
/** Print an error message.*/
};
/** Environment structure. This includes function pointers to access several
/* 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. */
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 */
......@@ -15,12 +15,12 @@
#ifndef __IA_CSS_ERR_H
#define __IA_CSS_ERR_H
/** @file
/* @file
* This file contains possible return values for most
* functions in the CSS-API.
*/
/** Errors, these values are used as the return value for most
/* Errors, these values are used as the return value for most
* functions in this API.
*/
enum ia_css_err {
......@@ -41,22 +41,22 @@ enum ia_css_err {
IA_CSS_ERR_NOT_SUPPORTED
};
/** FW warnings. This enum contains a value for each warning that
/* FW warnings. This enum contains a value for each warning that
* the SP FW could indicate potential performance issue
*/
enum ia_css_fw_warning {
IA_CSS_FW_WARNING_NONE,
IA_CSS_FW_WARNING_ISYS_QUEUE_FULL, /** < CSS system delayed because of insufficient space in the ISys queue.
IA_CSS_FW_WARNING_ISYS_QUEUE_FULL, /* < CSS system delayed because of insufficient space in the ISys queue.
This warning can be avoided by de-queing ISYS buffers more timely. */
IA_CSS_FW_WARNING_PSYS_QUEUE_FULL, /** < CSS system delayed because of insufficient space in the PSys queue.
IA_CSS_FW_WARNING_PSYS_QUEUE_FULL, /* < CSS system delayed because of insufficient space in the PSys queue.
This warning can be avoided by de-queing PSYS buffers more timely. */
IA_CSS_FW_WARNING_CIRCBUF_ALL_LOCKED, /** < CSS system delayed because of insufficient available buffers.
IA_CSS_FW_WARNING_CIRCBUF_ALL_LOCKED, /* < CSS system delayed because of insufficient available buffers.
This warning can be avoided by unlocking locked frame-buffers more timely. */
IA_CSS_FW_WARNING_EXP_ID_LOCKED, /** < Exposure ID skipped because the frame associated to it was still locked.
IA_CSS_FW_WARNING_EXP_ID_LOCKED, /* < Exposure ID skipped because the frame associated to it was still locked.
This warning can be avoided by unlocking locked frame-buffers more timely. */
IA_CSS_FW_WARNING_TAG_EXP_ID_FAILED, /** < Exposure ID cannot be found on the circular buffer.
IA_CSS_FW_WARNING_TAG_EXP_ID_FAILED, /* < Exposure ID cannot be found on the circular buffer.
This warning can be avoided by unlocking locked frame-buffers more timely. */
IA_CSS_FW_WARNING_FRAME_PARAM_MISMATCH, /** < Frame and param pair mismatched in tagger.
IA_CSS_FW_WARNING_FRAME_PARAM_MISMATCH, /* < Frame and param pair mismatched in tagger.
This warning can be avoided by providing a param set for each frame. */
};
......
......@@ -15,7 +15,7 @@
#ifndef __IA_CSS_EVENT_PUBLIC_H
#define __IA_CSS_EVENT_PUBLIC_H
/** @file
/* @file
* This file contains CSS-API events functionality
*/
......@@ -24,7 +24,7 @@
#include <ia_css_types.h> /* ia_css_pipe */
#include <ia_css_timer.h> /* ia_css_timer */
/** The event type, distinguishes the kind of events that
/* The event type, distinguishes the kind of events that
* can are generated by the CSS system.
*
* !!!IMPORTANT!!! KEEP THE FOLLOWING IN SYNC:
......@@ -35,43 +35,43 @@
*/
enum ia_css_event_type {
IA_CSS_EVENT_TYPE_OUTPUT_FRAME_DONE = 1 << 0,
/**< Output frame ready. */
/** Output frame ready. */
IA_CSS_EVENT_TYPE_SECOND_OUTPUT_FRAME_DONE = 1 << 1,
/**< Second output frame ready. */
/** Second output frame ready. */
IA_CSS_EVENT_TYPE_VF_OUTPUT_FRAME_DONE = 1 << 2,
/**< Viewfinder Output frame ready. */
/** Viewfinder Output frame ready. */
IA_CSS_EVENT_TYPE_SECOND_VF_OUTPUT_FRAME_DONE = 1 << 3,
/**< Second viewfinder Output frame ready. */
/** Second viewfinder Output frame ready. */
IA_CSS_EVENT_TYPE_3A_STATISTICS_DONE = 1 << 4,
/**< Indication that 3A statistics are available. */
/** Indication that 3A statistics are available. */
IA_CSS_EVENT_TYPE_DIS_STATISTICS_DONE = 1 << 5,
/**< Indication that DIS statistics are available. */
/** Indication that DIS statistics are available. */
IA_CSS_EVENT_TYPE_PIPELINE_DONE = 1 << 6,
/**< Pipeline Done event, sent after last pipeline stage. */
/** Pipeline Done event, sent after last pipeline stage. */
IA_CSS_EVENT_TYPE_FRAME_TAGGED = 1 << 7,
/**< Frame tagged. */
/** Frame tagged. */
IA_CSS_EVENT_TYPE_INPUT_FRAME_DONE = 1 << 8,
/**< Input frame ready. */
/** Input frame ready. */
IA_CSS_EVENT_TYPE_METADATA_DONE = 1 << 9,
/**< Metadata ready. */
/** Metadata ready. */
IA_CSS_EVENT_TYPE_LACE_STATISTICS_DONE = 1 << 10,
/**< Indication that LACE statistics are available. */
/** Indication that LACE statistics are available. */
IA_CSS_EVENT_TYPE_ACC_STAGE_COMPLETE = 1 << 11,
/**< Extension stage complete. */
/** Extension stage complete. */
IA_CSS_EVENT_TYPE_TIMER = 1 << 12,
/**< Timer event for measuring the SP side latencies. It contains the
/** Timer event for measuring the SP side latencies. It contains the
32-bit timer value from the SP */
IA_CSS_EVENT_TYPE_PORT_EOF = 1 << 13,
/**< End Of Frame event, sent when in buffered sensor mode. */
/** End Of Frame event, sent when in buffered sensor mode. */
IA_CSS_EVENT_TYPE_FW_WARNING = 1 << 14,
/**< Performance warning encounter by FW */
/** Performance warning encounter by FW */
IA_CSS_EVENT_TYPE_FW_ASSERT = 1 << 15,
/**< Assertion hit by FW */
/** Assertion hit by FW */
};
#define IA_CSS_EVENT_TYPE_NONE 0
/** IA_CSS_EVENT_TYPE_ALL is a mask for all pipe related events.
/* IA_CSS_EVENT_TYPE_ALL is a mask for all pipe related events.
* The other events (such as PORT_EOF) cannot be enabled/disabled
* and are hence excluded from this macro.
*/
......@@ -89,7 +89,7 @@ enum ia_css_event_type {
IA_CSS_EVENT_TYPE_LACE_STATISTICS_DONE | \
IA_CSS_EVENT_TYPE_ACC_STAGE_COMPLETE)
/** The event struct, container for the event type and its related values.
/* The event struct, container for the event type and its related values.
* Depending on the event type, either pipe or port will be filled.
* Pipeline related events (like buffer/frame events) will return a valid and filled pipe handle.
* For non pipeline related events (but i.e. stream specific, like EOF event), the port will be
......@@ -97,14 +97,14 @@ enum ia_css_event_type {
*/
struct ia_css_event {
struct ia_css_pipe *pipe;
/**< Pipe handle on which event happened, NULL for non pipe related
/** Pipe handle on which event happened, NULL for non pipe related
events. */
enum ia_css_event_type type;
/**< Type of Event, always valid/filled. */
/** Type of Event, always valid/filled. */
uint8_t port;
/**< Port number for EOF event (not valid for other events). */
/** Port number for EOF event (not valid for other events). */
uint8_t exp_id;
/**< Exposure id for EOF/FRAME_TAGGED/FW_WARNING event (not valid for other events)
/** Exposure id for EOF/FRAME_TAGGED/FW_WARNING event (not valid for other events)
The exposure ID is unique only within a logical stream and it is
only generated on systems that have an input system (such as 2400
and 2401).
......@@ -120,26 +120,26 @@ struct ia_css_event {
in the exposure IDs. Therefor applications should not use this
to detect frame drops. */
uint32_t fw_handle;
/**< Firmware Handle for ACC_STAGE_COMPLETE event (not valid for other
/** Firmware Handle for ACC_STAGE_COMPLETE event (not valid for other
events). */
enum ia_css_fw_warning fw_warning;
/**< Firmware warning code, only for WARNING events. */
/** Firmware warning code, only for WARNING events. */
uint8_t fw_assert_module_id;
/**< Firmware module id, only for ASSERT events, should be logged by driver. */
/** Firmware module id, only for ASSERT events, should be logged by driver. */
uint16_t fw_assert_line_no;
/**< Firmware line number, only for ASSERT events, should be logged by driver. */
/** Firmware line number, only for ASSERT events, should be logged by driver. */
clock_value_t timer_data;
/**< For storing the full 32-bit of the timer value. Valid only for TIMER
/** For storing the full 32-bit of the timer value. Valid only for TIMER
event */
uint8_t timer_code;
/**< For storing the code of the TIMER event. Valid only for
/** For storing the code of the TIMER event. Valid only for
TIMER event */
uint8_t timer_subcode;
/**< For storing the subcode of the TIMER event. Valid only
/** For storing the subcode of the TIMER event. Valid only
for TIMER event */
};
/** @brief Dequeue a PSYS event from the CSS system.
/* @brief Dequeue a PSYS event from the CSS system.
*
* @param[out] event Pointer to the event struct which will be filled by
* this function if an event is available.
......@@ -156,7 +156,7 @@ struct ia_css_event {
enum ia_css_err
ia_css_dequeue_psys_event(struct ia_css_event *event);
/** @brief Dequeue an event from the CSS system.
/* @brief Dequeue an event from the CSS system.
*
* @param[out] event Pointer to the event struct which will be filled by
* this function if an event is available.
......@@ -171,7 +171,7 @@ ia_css_dequeue_psys_event(struct ia_css_event *event);
enum ia_css_err
ia_css_dequeue_event(struct ia_css_event *event);
/** @brief Dequeue an ISYS event from the CSS system.
/* @brief Dequeue an ISYS event from the CSS system.
*
* @param[out] event Pointer to the event struct which will be filled by
* this function if an event is available.
......
......@@ -15,21 +15,21 @@
#ifndef __IA_CSS_FIRMWARE_H
#define __IA_CSS_FIRMWARE_H
/** @file
/* @file
* This file contains firmware loading/unloading support functionality
*/
#include "ia_css_err.h"
#include "ia_css_env.h"
/** CSS firmware package structure.
/* CSS firmware package structure.
*/
struct ia_css_fw {
void *data; /**< pointer to the firmware data */
unsigned int bytes; /**< length in bytes of firmware data */
void *data; /** pointer to the firmware data */
unsigned int bytes; /** length in bytes of firmware data */
};
/** @brief Loads the firmware
/* @brief Loads the firmware
* @param[in] env Environment, provides functions to access the
* environment in which the CSS code runs. This is
* used for host side memory access and message
......@@ -51,7 +51,7 @@ enum ia_css_err
ia_css_load_firmware(const struct ia_css_env *env,
const struct ia_css_fw *fw);
/** @brief Unloads the firmware
/* @brief Unloads the firmware
* @return None
*
* This function unloads the firmware loaded by ia_css_load_firmware.
......@@ -61,7 +61,7 @@ ia_css_load_firmware(const struct ia_css_env *env,
void
ia_css_unload_firmware(void);
/** @brief Checks firmware version
/* @brief Checks firmware version
* @param[in] fw Firmware package containing the firmware for all
* predefined ISP binaries.
* @return Returns true when the firmware version matches with the CSS
......
......@@ -15,7 +15,7 @@
#ifndef _IA_CSS_FRAC_H
#define _IA_CSS_FRAC_H
/** @file
/* @file
* This file contains typedefs used for fractional numbers
*/
......@@ -25,13 +25,13 @@
* NOTE: the 16 bit fixed point types actually occupy 32 bits
* to save on extension operations in the ISP code.
*/
/** Unsigned fixed point value, 0 integer bits, 16 fractional bits */
/* Unsigned fixed point value, 0 integer bits, 16 fractional bits */
typedef uint32_t ia_css_u0_16;
/** Unsigned fixed point value, 5 integer bits, 11 fractional bits */
/* Unsigned fixed point value, 5 integer bits, 11 fractional bits */
typedef uint32_t ia_css_u5_11;
/** Unsigned fixed point value, 8 integer bits, 8 fractional bits */
/* Unsigned fixed point value, 8 integer bits, 8 fractional bits */
typedef uint32_t ia_css_u8_8;
/** Signed fixed point value, 0 integer bits, 15 fractional bits */
/* Signed fixed point value, 0 integer bits, 15 fractional bits */
typedef int32_t ia_css_s0_15;
#endif /* _IA_CSS_FRAC_H */
......@@ -15,11 +15,11 @@
#ifndef __IA_CSS_FRAME_FORMAT_H
#define __IA_CSS_FRAME_FORMAT_H
/** @file
/* @file
* This file contains information about formats supported in the ISP
*/
/** Frame formats, some of these come from fourcc.org, others are
/* Frame formats, some of these come from fourcc.org, others are
better explained by video4linux2. The NV11 seems to be described only
on MSDN pages, but even those seem to be gone now.
Frames can come in many forms, the main categories are RAW, RGB and YUV
......@@ -48,45 +48,45 @@
- css/bxt_sandbox/isysapi/interface/ia_css_isysapi_fw_types.h
*/
enum ia_css_frame_format {
IA_CSS_FRAME_FORMAT_NV11 = 0, /**< 12 bit YUV 411, Y, UV plane */
IA_CSS_FRAME_FORMAT_NV12, /**< 12 bit YUV 420, Y, UV plane */
IA_CSS_FRAME_FORMAT_NV12_16, /**< 16 bit YUV 420, Y, UV plane */
IA_CSS_FRAME_FORMAT_NV12_TILEY, /**< 12 bit YUV 420, Intel proprietary tiled format, TileY */
IA_CSS_FRAME_FORMAT_NV16, /**< 16 bit YUV 422, Y, UV plane */
IA_CSS_FRAME_FORMAT_NV21, /**< 12 bit YUV 420, Y, VU plane */
IA_CSS_FRAME_FORMAT_NV61, /**< 16 bit YUV 422, Y, VU plane */
IA_CSS_FRAME_FORMAT_YV12, /**< 12 bit YUV 420, Y, V, U plane */
IA_CSS_FRAME_FORMAT_YV16, /**< 16 bit YUV 422, Y, V, U plane */
IA_CSS_FRAME_FORMAT_YUV420, /**< 12 bit YUV 420, Y, U, V plane */
IA_CSS_FRAME_FORMAT_YUV420_16, /**< yuv420, 16 bits per subpixel */
IA_CSS_FRAME_FORMAT_YUV422, /**< 16 bit YUV 422, Y, U, V plane */
IA_CSS_FRAME_FORMAT_YUV422_16, /**< yuv422, 16 bits per subpixel */
IA_CSS_FRAME_FORMAT_UYVY, /**< 16 bit YUV 422, UYVY interleaved */
IA_CSS_FRAME_FORMAT_YUYV, /**< 16 bit YUV 422, YUYV interleaved */
IA_CSS_FRAME_FORMAT_YUV444, /**< 24 bit YUV 444, Y, U, V plane */
IA_CSS_FRAME_FORMAT_YUV_LINE, /**< Internal format, 2 y lines followed
IA_CSS_FRAME_FORMAT_NV11 = 0, /** 12 bit YUV 411, Y, UV plane */
IA_CSS_FRAME_FORMAT_NV12, /** 12 bit YUV 420, Y, UV plane */
IA_CSS_FRAME_FORMAT_NV12_16, /** 16 bit YUV 420, Y, UV plane */
IA_CSS_FRAME_FORMAT_NV12_TILEY, /** 12 bit YUV 420, Intel proprietary tiled format, TileY */
IA_CSS_FRAME_FORMAT_NV16, /** 16 bit YUV 422, Y, UV plane */
IA_CSS_FRAME_FORMAT_NV21, /** 12 bit YUV 420, Y, VU plane */
IA_CSS_FRAME_FORMAT_NV61, /** 16 bit YUV 422, Y, VU plane */
IA_CSS_FRAME_FORMAT_YV12, /** 12 bit YUV 420, Y, V, U plane */
IA_CSS_FRAME_FORMAT_YV16, /** 16 bit YUV 422, Y, V, U plane */
IA_CSS_FRAME_FORMAT_YUV420, /** 12 bit YUV 420, Y, U, V plane */
IA_CSS_FRAME_FORMAT_YUV420_16, /** yuv420, 16 bits per subpixel */
IA_CSS_FRAME_FORMAT_YUV422, /** 16 bit YUV 422, Y, U, V plane */
IA_CSS_FRAME_FORMAT_YUV422_16, /** yuv422, 16 bits per subpixel */
IA_CSS_FRAME_FORMAT_UYVY, /** 16 bit YUV 422, UYVY interleaved */
IA_CSS_FRAME_FORMAT_YUYV, /** 16 bit YUV 422, YUYV interleaved */
IA_CSS_FRAME_FORMAT_YUV444, /** 24 bit YUV 444, Y, U, V plane */
IA_CSS_FRAME_FORMAT_YUV_LINE, /** Internal format, 2 y lines followed
by a uvinterleaved line */
IA_CSS_FRAME_FORMAT_RAW, /**< RAW, 1 plane */
IA_CSS_FRAME_FORMAT_RGB565, /**< 16 bit RGB, 1 plane. Each 3 sub
IA_CSS_FRAME_FORMAT_RAW, /** RAW, 1 plane */
IA_CSS_FRAME_FORMAT_RGB565, /** 16 bit RGB, 1 plane. Each 3 sub
pixels are packed into one 16 bit
value, 5 bits for R, 6 bits for G
and 5 bits for B. */
IA_CSS_FRAME_FORMAT_PLANAR_RGB888, /**< 24 bit RGB, 3 planes */
IA_CSS_FRAME_FORMAT_RGBA888, /**< 32 bit RGBA, 1 plane, A=Alpha
IA_CSS_FRAME_FORMAT_PLANAR_RGB888, /** 24 bit RGB, 3 planes */
IA_CSS_FRAME_FORMAT_RGBA888, /** 32 bit RGBA, 1 plane, A=Alpha
(alpha is unused) */
IA_CSS_FRAME_FORMAT_QPLANE6, /**< Internal, for advanced ISP */
IA_CSS_FRAME_FORMAT_BINARY_8, /**< byte stream, used for jpeg. For
IA_CSS_FRAME_FORMAT_QPLANE6, /** Internal, for advanced ISP */
IA_CSS_FRAME_FORMAT_BINARY_8, /** byte stream, used for jpeg. For
frames of this type, we set the
height to 1 and the width to the
number of allocated bytes. */
IA_CSS_FRAME_FORMAT_MIPI, /**< MIPI frame, 1 plane */
IA_CSS_FRAME_FORMAT_RAW_PACKED, /**< RAW, 1 plane, packed */
IA_CSS_FRAME_FORMAT_CSI_MIPI_YUV420_8, /**< 8 bit per Y/U/V.
IA_CSS_FRAME_FORMAT_MIPI, /** MIPI frame, 1 plane */
IA_CSS_FRAME_FORMAT_RAW_PACKED, /** RAW, 1 plane, packed */
IA_CSS_FRAME_FORMAT_CSI_MIPI_YUV420_8, /** 8 bit per Y/U/V.
Y odd line; UYVY
interleaved even line */
IA_CSS_FRAME_FORMAT_CSI_MIPI_LEGACY_YUV420_8, /**< Legacy YUV420. UY odd
IA_CSS_FRAME_FORMAT_CSI_MIPI_LEGACY_YUV420_8, /** Legacy YUV420. UY odd
line; VY even line */
IA_CSS_FRAME_FORMAT_CSI_MIPI_YUV420_10 /**< 10 bit per Y/U/V. Y odd
IA_CSS_FRAME_FORMAT_CSI_MIPI_YUV420_10 /** 10 bit per Y/U/V. Y odd
line; UYVY interleaved
even line */
};
......@@ -95,7 +95,7 @@ enum ia_css_frame_format {
/* because of issues this would cause with the Clockwork code checking tool. */
#define IA_CSS_FRAME_FORMAT_NUM (IA_CSS_FRAME_FORMAT_CSI_MIPI_YUV420_10 + 1)
/** Number of valid output frame formats for ISP **/
/* Number of valid output frame formats for ISP **/
#define IA_CSS_FRAME_OUT_FORMAT_NUM (IA_CSS_FRAME_FORMAT_RGBA888 + 1)
#endif /* __IA_CSS_FRAME_FORMAT_H */
......@@ -15,11 +15,11 @@
#ifndef __IA_CSS_INPUT_PORT_H
#define __IA_CSS_INPUT_PORT_H
/** @file
/* @file
* This file contains information about the possible input ports for CSS
*/
/** Enumeration of the physical input ports on the CSS hardware.
/* Enumeration of the physical input ports on the CSS hardware.
* There are 3 MIPI CSI-2 ports.
*/
enum ia_css_csi2_port {
......@@ -28,39 +28,39 @@ enum ia_css_csi2_port {
IA_CSS_CSI2_PORT2 /* Implicitly map to MIPI_PORT2_ID */
};
/** Backward compatible for CSS API 2.0 only
/* Backward compatible for CSS API 2.0 only
* TO BE REMOVED when all drivers move to CSS API 2.1
*/
#define IA_CSS_CSI2_PORT_4LANE IA_CSS_CSI2_PORT0
#define IA_CSS_CSI2_PORT_1LANE IA_CSS_CSI2_PORT1
#define IA_CSS_CSI2_PORT_2LANE IA_CSS_CSI2_PORT2
/** The CSI2 interface supports 2 types of compression or can
/* The CSI2 interface supports 2 types of compression or can
* be run without compression.
*/
enum ia_css_csi2_compression_type {
IA_CSS_CSI2_COMPRESSION_TYPE_NONE, /**< No compression */
IA_CSS_CSI2_COMPRESSION_TYPE_1, /**< Compression scheme 1 */
IA_CSS_CSI2_COMPRESSION_TYPE_2 /**< Compression scheme 2 */
IA_CSS_CSI2_COMPRESSION_TYPE_NONE, /** No compression */
IA_CSS_CSI2_COMPRESSION_TYPE_1, /** Compression scheme 1 */
IA_CSS_CSI2_COMPRESSION_TYPE_2 /** Compression scheme 2 */
};
struct ia_css_csi2_compression {
enum ia_css_csi2_compression_type type;
/**< Compression used */
/** Compression used */
unsigned int compressed_bits_per_pixel;
/**< Compressed bits per pixel (only when compression is enabled) */
/** Compressed bits per pixel (only when compression is enabled) */
unsigned int uncompressed_bits_per_pixel;
/**< Uncompressed bits per pixel (only when compression is enabled) */
/** Uncompressed bits per pixel (only when compression is enabled) */
};
/** Input port structure.
/* Input port structure.
*/
struct ia_css_input_port {
enum ia_css_csi2_port port; /**< Physical CSI-2 port */
unsigned int num_lanes; /**< Number of lanes used (4-lane port only) */
unsigned int timeout; /**< Timeout value */
unsigned int rxcount; /**< Register value, should include all lanes */
struct ia_css_csi2_compression compression; /**< Compression used */
enum ia_css_csi2_port port; /** Physical CSI-2 port */
unsigned int num_lanes; /** Number of lanes used (4-lane port only) */
unsigned int timeout; /** Timeout value */
unsigned int rxcount; /** Register value, should include all lanes */
struct ia_css_csi2_compression compression; /** Compression used */
};
#endif /* __IA_CSS_INPUT_PORT_H */
......@@ -15,7 +15,7 @@
#ifndef __IA_CSS_METADATA_H
#define __IA_CSS_METADATA_H
/** @file
/* @file
* This file contains structure for processing sensor metadata.
*/
......@@ -23,32 +23,32 @@
#include "ia_css_types.h"
#include "ia_css_stream_format.h"
/** Metadata configuration. This data structure contains necessary info
/* Metadata configuration. This data structure contains necessary info
* to process sensor metadata.
*/
struct ia_css_metadata_config {
enum ia_css_stream_format data_type; /**< Data type of CSI-2 embedded
enum ia_css_stream_format data_type; /** Data type of CSI-2 embedded
data. The default value is IA_CSS_STREAM_FORMAT_EMBEDDED. For
certain sensors, user can choose non-default data type for embedded
data. */
struct ia_css_resolution resolution; /**< Resolution */
struct ia_css_resolution resolution; /** Resolution */
};
struct ia_css_metadata_info {
struct ia_css_resolution resolution; /**< Resolution */
uint32_t stride; /**< Stride in bytes */
uint32_t size; /**< Total size in bytes */
struct ia_css_resolution resolution; /** Resolution */
uint32_t stride; /** Stride in bytes */
uint32_t size; /** Total size in bytes */
};
struct ia_css_metadata {
struct ia_css_metadata_info info; /**< Layout info */
ia_css_ptr address; /**< CSS virtual address */
struct ia_css_metadata_info info; /** Layout info */
ia_css_ptr address; /** CSS virtual address */
uint32_t exp_id;
/**< Exposure ID, see ia_css_event_public.h for more detail */
/** Exposure ID, see ia_css_event_public.h for more detail */
};
#define SIZE_OF_IA_CSS_METADATA_STRUCT sizeof(struct ia_css_metadata)
/** @brief Allocate a metadata buffer.
/* @brief Allocate a metadata buffer.
* @param[in] metadata_info Metadata info struct, contains details on metadata buffers.
* @return Pointer of metadata buffer or NULL (if error)
*
......@@ -58,7 +58,7 @@ struct ia_css_metadata {
struct ia_css_metadata *
ia_css_metadata_allocate(const struct ia_css_metadata_info *metadata_info);
/** @brief Free a metadata buffer.
/* @brief Free a metadata buffer.
*
* @param[in] metadata Pointer of metadata buffer.
* @return None
......
......@@ -15,7 +15,7 @@
#ifndef __IA_CSS_MIPI_H
#define __IA_CSS_MIPI_H
/** @file
/* @file
* This file contains MIPI support functionality
*/
......@@ -24,10 +24,10 @@
#include "ia_css_stream_format.h"
#include "ia_css_input_port.h"
/** Backward compatible for CSS API 2.0 only
/* Backward compatible for CSS API 2.0 only
* TO BE REMOVED when all drivers move to CSS API 2.1.
*/
/** @brief Specify a CSS MIPI frame buffer.
/* @brief Specify a CSS MIPI frame buffer.
*
* @param[in] size_mem_words The frame size in memory words (32B).
* @param[in] contiguous Allocate memory physically contiguously or not.
......@@ -42,7 +42,7 @@ ia_css_mipi_frame_specify(const unsigned int size_mem_words,
const bool contiguous);
#if !defined(HAS_NO_INPUT_SYSTEM)
/** @brief Register size of a CSS MIPI frame for check during capturing.
/* @brief Register size of a CSS MIPI frame for check during capturing.
*
* @param[in] port CSI-2 port this check is registered.
* @param[in] size_mem_words The frame size in memory words (32B).
......@@ -59,7 +59,7 @@ ia_css_mipi_frame_enable_check_on_size(const enum ia_css_csi2_port port,
const unsigned int size_mem_words);
#endif
/** @brief Calculate the size of a mipi frame.
/* @brief Calculate the size of a mipi frame.
*
* @param[in] width The width (in pixels) of the frame.
* @param[in] height The height (in lines) of the frame.
......
......@@ -15,11 +15,11 @@
#ifndef __IA_CSS_MMU_H
#define __IA_CSS_MMU_H
/** @file
/* @file
* This file contains one support function for invalidating the CSS MMU cache
*/
/** @brief Invalidate the MMU internal cache.
/* @brief Invalidate the MMU internal cache.
* @return None
*
* This function triggers an invalidation of the translate-look-aside
......
......@@ -15,13 +15,13 @@
#ifndef __IA_CSS_MORPH_H
#define __IA_CSS_MORPH_H
/** @file
/* @file
* This file contains supporting for morphing table
*/
#include <ia_css_types.h>
/** @brief Morphing table
/* @brief Morphing table
* @param[in] width Width of the morphing table.
* @param[in] height Height of the morphing table.
* @return Pointer to the morphing table
......@@ -29,7 +29,7 @@
struct ia_css_morph_table *
ia_css_morph_table_allocate(unsigned int width, unsigned int height);
/** @brief Free the morph table
/* @brief Free the morph table
* @param[in] me Pointer to the morph table.
* @return None
*/
......
......@@ -15,11 +15,11 @@
#ifndef __IA_CSS_PRBS_H
#define __IA_CSS_PRBS_H
/** @file
/* @file
* This file contains support for Pseudo Random Bit Sequence (PRBS) inputs
*/
/** Enumerate the PRBS IDs.
/* Enumerate the PRBS IDs.
*/
enum ia_css_prbs_id {
IA_CSS_PRBS_ID0,
......@@ -44,10 +44,10 @@ enum ia_css_prbs_id {
*/
struct ia_css_prbs_config {
enum ia_css_prbs_id id;
unsigned int h_blank; /**< horizontal blank */
unsigned int v_blank; /**< vertical blank */
int seed; /**< random seed for the 1st 2-pixel-components/clock */
int seed1; /**< random seed for the 2nd 2-pixel-components/clock */
unsigned int h_blank; /** horizontal blank */
unsigned int v_blank; /** vertical blank */
int seed; /** random seed for the 1st 2-pixel-components/clock */
int seed1; /** random seed for the 2nd 2-pixel-components/clock */
};
#endif /* __IA_CSS_PRBS_H */
......@@ -15,7 +15,7 @@
#ifndef __IA_CSS_PROPERTIES_H
#define __IA_CSS_PROPERTIES_H
/** @file
/* @file
* This file contains support for retrieving properties of some hardware the CSS system
*/
......@@ -24,12 +24,12 @@
struct ia_css_properties {
int gdc_coord_one;
bool l1_base_is_index; /**< Indicate whether the L1 page base
bool l1_base_is_index; /** Indicate whether the L1 page base
is a page index or a byte address. */
enum ia_css_vamem_type vamem_type;
};
/** @brief Get hardware properties
/* @brief Get hardware properties
* @param[in,out] properties The hardware properties
* @return None
*
......
......@@ -15,13 +15,13 @@
#ifndef __IA_CSS_SHADING_H
#define __IA_CSS_SHADING_H
/** @file
/* @file
* This file contains support for setting the shading table for CSS
*/
#include <ia_css_types.h>
/** @brief Shading table
/* @brief Shading table
* @param[in] width Width of the shading table.
* @param[in] height Height of the shading table.
* @return Pointer to the shading table
......@@ -30,7 +30,7 @@ struct ia_css_shading_table *
ia_css_shading_table_alloc(unsigned int width,
unsigned int height);
/** @brief Free shading table
/* @brief Free shading table
* @param[in] table Pointer to the shading table.
* @return None
*/
......
......@@ -48,7 +48,7 @@ struct ia_css_stream {
bool started;
};
/** @brief Get a binary in the stream, which binary has the shading correction.
/* @brief Get a binary in the stream, which binary has the shading correction.
*
* @param[in] stream: The stream.
* @return The binary which has the shading correction.
......@@ -76,7 +76,7 @@ sh_css_invalidate_params(struct ia_css_stream *stream);
const struct ia_css_fpn_table *
ia_css_get_fpn_table(struct ia_css_stream *stream);
/** @brief Get a pointer to the shading table.
/* @brief Get a pointer to the shading table.
*
* @param[in] stream: The stream.
* @return The pointer to the shading table.
......
......@@ -15,74 +15,74 @@
#ifndef __IA_CSS_STREAM_FORMAT_H
#define __IA_CSS_STREAM_FORMAT_H
/** @file
/* @file
* This file contains formats usable for ISP streaming input
*/
#include <type_support.h> /* bool */
/** The ISP streaming input interface supports the following formats.
/* The ISP streaming input interface supports the following formats.
* These match the corresponding MIPI formats.
*/
enum ia_css_stream_format {
IA_CSS_STREAM_FORMAT_YUV420_8_LEGACY, /**< 8 bits per subpixel */
IA_CSS_STREAM_FORMAT_YUV420_8, /**< 8 bits per subpixel */
IA_CSS_STREAM_FORMAT_YUV420_10, /**< 10 bits per subpixel */
IA_CSS_STREAM_FORMAT_YUV420_16, /**< 16 bits per subpixel */
IA_CSS_STREAM_FORMAT_YUV422_8, /**< UYVY..UYVY, 8 bits per subpixel */
IA_CSS_STREAM_FORMAT_YUV422_10, /**< UYVY..UYVY, 10 bits per subpixel */
IA_CSS_STREAM_FORMAT_YUV422_16, /**< UYVY..UYVY, 16 bits per subpixel */
IA_CSS_STREAM_FORMAT_RGB_444, /**< BGR..BGR, 4 bits per subpixel */
IA_CSS_STREAM_FORMAT_RGB_555, /**< BGR..BGR, 5 bits per subpixel */
IA_CSS_STREAM_FORMAT_RGB_565, /**< BGR..BGR, 5 bits B and R, 6 bits G */
IA_CSS_STREAM_FORMAT_RGB_666, /**< BGR..BGR, 6 bits per subpixel */
IA_CSS_STREAM_FORMAT_RGB_888, /**< BGR..BGR, 8 bits per subpixel */
IA_CSS_STREAM_FORMAT_RAW_6, /**< RAW data, 6 bits per pixel */
IA_CSS_STREAM_FORMAT_RAW_7, /**< RAW data, 7 bits per pixel */
IA_CSS_STREAM_FORMAT_RAW_8, /**< RAW data, 8 bits per pixel */
IA_CSS_STREAM_FORMAT_RAW_10, /**< RAW data, 10 bits per pixel */
IA_CSS_STREAM_FORMAT_RAW_12, /**< RAW data, 12 bits per pixel */
IA_CSS_STREAM_FORMAT_RAW_14, /**< RAW data, 14 bits per pixel */
IA_CSS_STREAM_FORMAT_RAW_16, /**< RAW data, 16 bits per pixel, which is
IA_CSS_STREAM_FORMAT_YUV420_8_LEGACY, /** 8 bits per subpixel */
IA_CSS_STREAM_FORMAT_YUV420_8, /** 8 bits per subpixel */
IA_CSS_STREAM_FORMAT_YUV420_10, /** 10 bits per subpixel */
IA_CSS_STREAM_FORMAT_YUV420_16, /** 16 bits per subpixel */
IA_CSS_STREAM_FORMAT_YUV422_8, /** UYVY..UYVY, 8 bits per subpixel */
IA_CSS_STREAM_FORMAT_YUV422_10, /** UYVY..UYVY, 10 bits per subpixel */
IA_CSS_STREAM_FORMAT_YUV422_16, /** UYVY..UYVY, 16 bits per subpixel */
IA_CSS_STREAM_FORMAT_RGB_444, /** BGR..BGR, 4 bits per subpixel */
IA_CSS_STREAM_FORMAT_RGB_555, /** BGR..BGR, 5 bits per subpixel */
IA_CSS_STREAM_FORMAT_RGB_565, /** BGR..BGR, 5 bits B and R, 6 bits G */
IA_CSS_STREAM_FORMAT_RGB_666, /** BGR..BGR, 6 bits per subpixel */
IA_CSS_STREAM_FORMAT_RGB_888, /** BGR..BGR, 8 bits per subpixel */
IA_CSS_STREAM_FORMAT_RAW_6, /** RAW data, 6 bits per pixel */
IA_CSS_STREAM_FORMAT_RAW_7, /** RAW data, 7 bits per pixel */
IA_CSS_STREAM_FORMAT_RAW_8, /** RAW data, 8 bits per pixel */
IA_CSS_STREAM_FORMAT_RAW_10, /** RAW data, 10 bits per pixel */
IA_CSS_STREAM_FORMAT_RAW_12, /** RAW data, 12 bits per pixel */
IA_CSS_STREAM_FORMAT_RAW_14, /** RAW data, 14 bits per pixel */
IA_CSS_STREAM_FORMAT_RAW_16, /** RAW data, 16 bits per pixel, which is
not specified in CSI-MIPI standard*/
IA_CSS_STREAM_FORMAT_BINARY_8, /**< Binary byte stream, which is target at
IA_CSS_STREAM_FORMAT_BINARY_8, /** Binary byte stream, which is target at
JPEG. */
/** CSI2-MIPI specific format: Generic short packet data. It is used to
/* CSI2-MIPI specific format: Generic short packet data. It is used to
* keep the timing information for the opening/closing of shutters,
* triggering of flashes and etc.
*/
IA_CSS_STREAM_FORMAT_GENERIC_SHORT1, /**< Generic Short Packet Code 1 */
IA_CSS_STREAM_FORMAT_GENERIC_SHORT2, /**< Generic Short Packet Code 2 */
IA_CSS_STREAM_FORMAT_GENERIC_SHORT3, /**< Generic Short Packet Code 3 */
IA_CSS_STREAM_FORMAT_GENERIC_SHORT4, /**< Generic Short Packet Code 4 */
IA_CSS_STREAM_FORMAT_GENERIC_SHORT5, /**< Generic Short Packet Code 5 */
IA_CSS_STREAM_FORMAT_GENERIC_SHORT6, /**< Generic Short Packet Code 6 */
IA_CSS_STREAM_FORMAT_GENERIC_SHORT7, /**< Generic Short Packet Code 7 */
IA_CSS_STREAM_FORMAT_GENERIC_SHORT8, /**< Generic Short Packet Code 8 */
IA_CSS_STREAM_FORMAT_GENERIC_SHORT1, /** Generic Short Packet Code 1 */
IA_CSS_STREAM_FORMAT_GENERIC_SHORT2, /** Generic Short Packet Code 2 */
IA_CSS_STREAM_FORMAT_GENERIC_SHORT3, /** Generic Short Packet Code 3 */
IA_CSS_STREAM_FORMAT_GENERIC_SHORT4, /** Generic Short Packet Code 4 */
IA_CSS_STREAM_FORMAT_GENERIC_SHORT5, /** Generic Short Packet Code 5 */
IA_CSS_STREAM_FORMAT_GENERIC_SHORT6, /** Generic Short Packet Code 6 */
IA_CSS_STREAM_FORMAT_GENERIC_SHORT7, /** Generic Short Packet Code 7 */
IA_CSS_STREAM_FORMAT_GENERIC_SHORT8, /** Generic Short Packet Code 8 */
/** CSI2-MIPI specific format: YUV data.
/* CSI2-MIPI specific format: YUV data.
*/
IA_CSS_STREAM_FORMAT_YUV420_8_SHIFT, /**< YUV420 8-bit (Chroma Shifted Pixel Sampling) */
IA_CSS_STREAM_FORMAT_YUV420_10_SHIFT, /**< YUV420 8-bit (Chroma Shifted Pixel Sampling) */
IA_CSS_STREAM_FORMAT_YUV420_8_SHIFT, /** YUV420 8-bit (Chroma Shifted Pixel Sampling) */
IA_CSS_STREAM_FORMAT_YUV420_10_SHIFT, /** YUV420 8-bit (Chroma Shifted Pixel Sampling) */
/** CSI2-MIPI specific format: Generic long packet data
/* CSI2-MIPI specific format: Generic long packet data
*/
IA_CSS_STREAM_FORMAT_EMBEDDED, /**< Embedded 8-bit non Image Data */
IA_CSS_STREAM_FORMAT_EMBEDDED, /** Embedded 8-bit non Image Data */
/** CSI2-MIPI specific format: User defined byte-based data. For example,
/* CSI2-MIPI specific format: User defined byte-based data. For example,
* the data transmitter (e.g. the SoC sensor) can keep the JPEG data as
* the User Defined Data Type 4 and the MPEG data as the
* User Defined Data Type 7.
*/
IA_CSS_STREAM_FORMAT_USER_DEF1, /**< User defined 8-bit data type 1 */
IA_CSS_STREAM_FORMAT_USER_DEF2, /**< User defined 8-bit data type 2 */
IA_CSS_STREAM_FORMAT_USER_DEF3, /**< User defined 8-bit data type 3 */
IA_CSS_STREAM_FORMAT_USER_DEF4, /**< User defined 8-bit data type 4 */
IA_CSS_STREAM_FORMAT_USER_DEF5, /**< User defined 8-bit data type 5 */
IA_CSS_STREAM_FORMAT_USER_DEF6, /**< User defined 8-bit data type 6 */
IA_CSS_STREAM_FORMAT_USER_DEF7, /**< User defined 8-bit data type 7 */
IA_CSS_STREAM_FORMAT_USER_DEF8, /**< User defined 8-bit data type 8 */
IA_CSS_STREAM_FORMAT_USER_DEF1, /** User defined 8-bit data type 1 */
IA_CSS_STREAM_FORMAT_USER_DEF2, /** User defined 8-bit data type 2 */
IA_CSS_STREAM_FORMAT_USER_DEF3, /** User defined 8-bit data type 3 */
IA_CSS_STREAM_FORMAT_USER_DEF4, /** User defined 8-bit data type 4 */
IA_CSS_STREAM_FORMAT_USER_DEF5, /** User defined 8-bit data type 5 */
IA_CSS_STREAM_FORMAT_USER_DEF6, /** User defined 8-bit data type 6 */
IA_CSS_STREAM_FORMAT_USER_DEF7, /** User defined 8-bit data type 7 */
IA_CSS_STREAM_FORMAT_USER_DEF8, /** User defined 8-bit data type 8 */
};
#define IA_CSS_STREAM_FORMAT_NUM IA_CSS_STREAM_FORMAT_USER_DEF8
......
......@@ -31,47 +31,47 @@ more details.
#ifndef __IA_CSS_TIMER_H
#define __IA_CSS_TIMER_H
/** @file
/* @file
* Timer interface definitions
*/
#include <type_support.h> /* for uint32_t */
#include "ia_css_err.h"
/** @brief timer reading definition */
/* @brief timer reading definition */
typedef uint32_t clock_value_t;
/** @brief 32 bit clock tick,(timestamp based on timer-value of CSS-internal timer)*/
/* @brief 32 bit clock tick,(timestamp based on timer-value of CSS-internal timer)*/
struct ia_css_clock_tick {
clock_value_t ticks; /**< measured time in ticks.*/
clock_value_t ticks; /** measured time in ticks.*/
};
/** @brief TIMER event codes */
/* @brief TIMER event codes */
enum ia_css_tm_event {
IA_CSS_TM_EVENT_AFTER_INIT,
/**< Timer Event after Initialization */
/** Timer Event after Initialization */
IA_CSS_TM_EVENT_MAIN_END,
/**< Timer Event after end of Main */
/** Timer Event after end of Main */
IA_CSS_TM_EVENT_THREAD_START,
/**< Timer Event after thread start */
/** Timer Event after thread start */
IA_CSS_TM_EVENT_FRAME_PROC_START,
/**< Timer Event after Frame Process Start */
/** Timer Event after Frame Process Start */
IA_CSS_TM_EVENT_FRAME_PROC_END
/**< Timer Event after Frame Process End */
/** Timer Event after Frame Process End */
};
/** @brief code measurement common struct */
/* @brief code measurement common struct */
struct ia_css_time_meas {
clock_value_t start_timer_value; /**< measured time in ticks */
clock_value_t end_timer_value; /**< measured time in ticks */
clock_value_t start_timer_value; /** measured time in ticks */
clock_value_t end_timer_value; /** measured time in ticks */
};
/**@brief SIZE_OF_IA_CSS_CLOCK_TICK_STRUCT checks to ensure correct alignment for struct ia_css_clock_tick. */
#define SIZE_OF_IA_CSS_CLOCK_TICK_STRUCT sizeof(clock_value_t)
/** @brief checks to ensure correct alignment for ia_css_time_meas. */
/* @brief checks to ensure correct alignment for ia_css_time_meas. */
#define SIZE_OF_IA_CSS_TIME_MEAS_STRUCT (sizeof(clock_value_t) \
+ sizeof(clock_value_t))
/** @brief API to fetch timer count directly
/* @brief API to fetch timer count directly
*
* @param curr_ts [out] measured count value
* @return IA_CSS_SUCCESS if success
......
......@@ -15,11 +15,11 @@
#ifndef __IA_CSS_TPG_H
#define __IA_CSS_TPG_H
/** @file
/* @file
* This file contains support for the test pattern generator (TPG)
*/
/** Enumerate the TPG IDs.
/* Enumerate the TPG IDs.
*/
enum ia_css_tpg_id {
IA_CSS_TPG_ID0,
......@@ -35,7 +35,7 @@ enum ia_css_tpg_id {
*/
#define N_CSS_TPG_IDS (IA_CSS_TPG_ID2+1)
/** Enumerate the TPG modes.
/* Enumerate the TPG modes.
*/
enum ia_css_tpg_mode {
IA_CSS_TPG_MODE_RAMP,
......@@ -44,7 +44,7 @@ enum ia_css_tpg_mode {
IA_CSS_TPG_MODE_MONO
};
/** @brief Configure the test pattern generator.
/* @brief Configure the test pattern generator.
*
* Configure the Test Pattern Generator, the way these values are used to
* generate the pattern can be seen in the HRT extension for the test pattern
......
......@@ -15,16 +15,16 @@
#ifndef __IA_CSS_VERSION_H
#define __IA_CSS_VERSION_H
/** @file
/* @file
* This file contains functions to retrieve CSS-API version information
*/
#include <ia_css_err.h>
/** a common size for the version arrays */
/* a common size for the version arrays */
#define MAX_VERSION_SIZE 500
/** @brief Retrieves the current CSS version
/* @brief Retrieves the current CSS version
* @param[out] version A pointer to a buffer where to put the generated
* version string. NULL is ignored.
* @param[in] max_size Size of the version buffer. If version string
......
......@@ -15,12 +15,12 @@
#ifndef __IA_CSS_AA2_TYPES_H
#define __IA_CSS_AA2_TYPES_H
/** @file
/* @file
* CSS-API header file for Anti-Aliasing parameters.
*/
/** Anti-Aliasing configuration.
/* Anti-Aliasing configuration.
*
* This structure is used both for YUV AA and Bayer AA.
*
......@@ -39,7 +39,7 @@
* ISP2: BAA2 is used.
*/
struct ia_css_aa_config {
uint16_t strength; /**< Strength of the filter.
uint16_t strength; /** Strength of the filter.
u0.13, [0,8191],
default/ineffective 0 */
};
......
......@@ -15,7 +15,7 @@
#ifndef __IA_CSS_ANR_TYPES_H
#define __IA_CSS_ANR_TYPES_H
/** @file
/* @file
* CSS-API header file for Advanced Noise Reduction kernel v1
*/
......@@ -23,11 +23,11 @@
#define ANR_BPP 10
#define ANR_ELEMENT_BITS ((CEIL_DIV(ANR_BPP, 8))*8)
/** Advanced Noise Reduction configuration.
/* Advanced Noise Reduction configuration.
* This is also known as Low-Light.
*/
struct ia_css_anr_config {
int32_t threshold; /**< Threshold */
int32_t threshold; /** Threshold */
int32_t thresholds[4*4*4];
int32_t factors[3];
};
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment