drivers/staging/media/atomisp/pci/isp/kernels/sdis/sdis_1.0/ia_css_sdis.host.h
Source file repositories/reference/linux-study-clean/drivers/staging/media/atomisp/pci/isp/kernels/sdis/sdis_1.0/ia_css_sdis.host.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/staging/media/atomisp/pci/isp/kernels/sdis/sdis_1.0/ia_css_sdis.host.h- Extension
.h- Size
- 2801 bytes
- Lines
- 94
- Domain
- Driver Families
- Bucket
- drivers/staging
- Inferred role
- Driver Families: implementation source
- Status
- source implementation candidate
Why This File Exists
Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
- Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
ia_css_sdis_types.hia_css_binary.hia_css_stream.hsh_css_params.h
Detected Declarations
struct sh_css_isp_sdis_hori_coef_tblstruct sh_css_isp_sdis_vert_coef_tblstruct sh_css_isp_sdis_hori_proj_tblstruct sh_css_isp_sdis_vert_proj_tbl
Annotated Snippet
#ifndef __IA_CSS_SDIS_HOST_H
#define __IA_CSS_SDIS_HOST_H
#include "ia_css_sdis_types.h"
#include "ia_css_binary.h"
#include "ia_css_stream.h"
#include "sh_css_params.h"
extern const struct ia_css_dvs_coefficients default_sdis_config;
/* Opaque here, since size is binary dependent. */
struct sh_css_isp_sdis_hori_coef_tbl;
struct sh_css_isp_sdis_vert_coef_tbl;
struct sh_css_isp_sdis_hori_proj_tbl;
struct sh_css_isp_sdis_vert_proj_tbl;
void ia_css_sdis_horicoef_vmem_encode(
struct sh_css_isp_sdis_hori_coef_tbl *to,
const struct ia_css_dvs_coefficients *from,
unsigned int size);
void ia_css_sdis_vertcoef_vmem_encode(
struct sh_css_isp_sdis_vert_coef_tbl *to,
const struct ia_css_dvs_coefficients *from,
unsigned int size);
void ia_css_sdis_horiproj_encode(
struct sh_css_isp_sdis_hori_proj_tbl *to,
const struct ia_css_dvs_coefficients *from,
unsigned int size);
void ia_css_sdis_vertproj_encode(
struct sh_css_isp_sdis_vert_proj_tbl *to,
const struct ia_css_dvs_coefficients *from,
unsigned int size);
void ia_css_get_isp_dis_coefficients(
struct ia_css_stream *stream,
short *horizontal_coefficients,
short *vertical_coefficients);
int
ia_css_get_dvs_statistics(
struct ia_css_dvs_statistics *host_stats,
const struct ia_css_isp_dvs_statistics *isp_stats);
void
ia_css_translate_dvs_statistics(
struct ia_css_dvs_statistics *host_stats,
const struct ia_css_isp_dvs_statistics_map *isp_stats);
struct ia_css_isp_dvs_statistics *
ia_css_isp_dvs_statistics_allocate(
const struct ia_css_dvs_grid_info *grid);
void
ia_css_isp_dvs_statistics_free(
struct ia_css_isp_dvs_statistics *me);
size_t ia_css_sdis_hor_coef_tbl_bytes(const struct ia_css_binary *binary);
size_t ia_css_sdis_ver_coef_tbl_bytes(const struct ia_css_binary *binary);
void
ia_css_sdis_init_info(
struct ia_css_sdis_info *dis,
unsigned int sc_3a_dis_width,
unsigned int sc_3a_dis_padded_width,
unsigned int sc_3a_dis_height,
unsigned int isp_pipe_version,
unsigned int enabled);
void ia_css_sdis_clear_coefficients(
struct ia_css_dvs_coefficients *dvs_coefs);
void ia_css_sdis_horicoef_debug_dtrace(
const struct ia_css_dvs_coefficients *config, unsigned int level);
void ia_css_sdis_vertcoef_debug_dtrace(
const struct ia_css_dvs_coefficients *config, unsigned int level);
void ia_css_sdis_horiproj_debug_dtrace(
const struct ia_css_dvs_coefficients *config, unsigned int level);
void ia_css_sdis_vertproj_debug_dtrace(
const struct ia_css_dvs_coefficients *config, unsigned int level);
#endif /* __IA_CSS_SDIS_HOST_H */
Annotation
- Immediate include surface: `ia_css_sdis_types.h`, `ia_css_binary.h`, `ia_css_stream.h`, `sh_css_params.h`.
- Detected declarations: `struct sh_css_isp_sdis_hori_coef_tbl`, `struct sh_css_isp_sdis_vert_coef_tbl`, `struct sh_css_isp_sdis_hori_proj_tbl`, `struct sh_css_isp_sdis_vert_proj_tbl`.
- Atlas domain: Driver Families / drivers/staging.
- Implementation status: source implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.