drivers/staging/media/atomisp/pci/atomisp_compat_css20.h
Source file repositories/reference/linux-study-clean/drivers/staging/media/atomisp/pci/atomisp_compat_css20.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/staging/media/atomisp/pci/atomisp_compat_css20.h- Extension
.h- Size
- 4834 bytes
- Lines
- 159
- 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
media/v4l2-mediabus.hia_css.hia_css_types.hia_css_acc_types.hsh_css_legacy.h
Detected Declarations
struct atomisp_devicestruct atomisp_sub_devicestruct atomisp_css_isys_config_infostruct atomisp_stream_envstruct atomisp_css_envstruct atomisp_s3a_bufstruct atomisp_dis_bufstruct atomisp_css_bufferstruct atomisp_css_eventenum atomisp_css_stream_state
Annotated Snippet
struct atomisp_css_isys_config_info {
unsigned int input_format;
unsigned int width;
unsigned int height;
};
struct atomisp_stream_env {
struct ia_css_stream *stream;
struct ia_css_stream_config stream_config;
struct ia_css_stream_info stream_info;
struct ia_css_pipe *pipes[IA_CSS_PIPE_ID_NUM];
struct ia_css_pipe *multi_pipes[IA_CSS_PIPE_ID_NUM];
struct ia_css_pipe_config pipe_configs[IA_CSS_PIPE_ID_NUM];
struct ia_css_pipe_extra_config pipe_extra_configs[IA_CSS_PIPE_ID_NUM];
bool update_pipe[IA_CSS_PIPE_ID_NUM];
enum atomisp_css_stream_state stream_state;
struct ia_css_stream *acc_stream;
enum atomisp_css_stream_state acc_stream_state;
struct ia_css_stream_config acc_stream_config;
unsigned int ch_id; /* virtual channel ID */
unsigned int isys_configs;
struct atomisp_css_isys_config_info isys_info[MAX_STREAMS_PER_CHANNEL];
};
struct atomisp_css_env {
struct ia_css_env isp_css_env;
struct ia_css_fw isp_css_fw;
};
struct atomisp_s3a_buf {
struct ia_css_isp_3a_statistics *s3a_data;
struct ia_css_isp_3a_statistics_map *s3a_map;
struct list_head list;
};
struct atomisp_dis_buf {
struct ia_css_isp_dvs_statistics *dis_data;
struct ia_css_isp_dvs_statistics_map *dvs_map;
struct list_head list;
};
struct atomisp_css_buffer {
struct ia_css_buffer css_buffer;
};
struct atomisp_css_event {
enum ia_css_pipe_id pipe;
struct ia_css_event event;
};
void atomisp_css_set_macc_config(struct atomisp_sub_device *asd,
struct ia_css_macc_config *macc_config);
void atomisp_css_set_ecd_config(struct atomisp_sub_device *asd,
struct ia_css_ecd_config *ecd_config);
void atomisp_css_set_ynr_config(struct atomisp_sub_device *asd,
struct ia_css_ynr_config *ynr_config);
void atomisp_css_set_fc_config(struct atomisp_sub_device *asd,
struct ia_css_fc_config *fc_config);
void atomisp_css_set_aa_config(struct atomisp_sub_device *asd,
struct ia_css_aa_config *aa_config);
void atomisp_css_set_baa_config(struct atomisp_sub_device *asd,
struct ia_css_aa_config *baa_config);
void atomisp_css_set_anr_config(struct atomisp_sub_device *asd,
struct ia_css_anr_config *anr_config);
void atomisp_css_set_xnr_config(struct atomisp_sub_device *asd,
struct ia_css_xnr_config *xnr_config);
void atomisp_css_set_cnr_config(struct atomisp_sub_device *asd,
struct ia_css_cnr_config *cnr_config);
void atomisp_css_set_ctc_config(struct atomisp_sub_device *asd,
struct ia_css_ctc_config *ctc_config);
void atomisp_css_set_yuv2rgb_cc_config(struct atomisp_sub_device *asd,
struct ia_css_cc_config *yuv2rgb_cc_config);
void atomisp_css_set_rgb2yuv_cc_config(struct atomisp_sub_device *asd,
struct ia_css_cc_config *rgb2yuv_cc_config);
void atomisp_css_set_anr_thres(struct atomisp_sub_device *asd,
struct ia_css_anr_thres *anr_thres);
int atomisp_css_load_firmware(struct atomisp_device *isp);
Annotation
- Immediate include surface: `media/v4l2-mediabus.h`, `ia_css.h`, `ia_css_types.h`, `ia_css_acc_types.h`, `sh_css_legacy.h`.
- Detected declarations: `struct atomisp_device`, `struct atomisp_sub_device`, `struct atomisp_css_isys_config_info`, `struct atomisp_stream_env`, `struct atomisp_css_env`, `struct atomisp_s3a_buf`, `struct atomisp_dis_buf`, `struct atomisp_css_buffer`, `struct atomisp_css_event`, `enum atomisp_css_stream_state`.
- 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.