drivers/staging/media/atomisp/pci/sh_css_sp.h
Source file repositories/reference/linux-study-clean/drivers/staging/media/atomisp/pci/sh_css_sp.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/staging/media/atomisp/pci/sh_css_sp.h- Extension
.h- Size
- 5325 bytes
- Lines
- 221
- 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
system_global.htype_support.hinput_formatter.hia_css_binary.hia_css_types.hia_css_pipeline.h
Detected Declarations
- No top-level syscall, struct, function, initcall, or export declaration detected by the generator.
Annotated Snippet
#ifndef _SH_CSS_SP_H_
#define _SH_CSS_SP_H_
#include <system_global.h>
#include <type_support.h>
#include "input_formatter.h"
#include "ia_css_binary.h"
#include "ia_css_types.h"
#include "ia_css_pipeline.h"
/* Function to initialize the data and bss section descr of the binary */
void
sh_css_sp_store_init_dmem(const struct ia_css_fw_info *fw);
void
store_sp_stage_data(enum ia_css_pipe_id id, unsigned int pipe_num,
unsigned int stage);
void
sh_css_stage_write_binary_info(struct ia_css_binary_info *info);
void
store_sp_group_data(void);
/* Start binary (jpeg) copy on the SP */
void
sh_css_sp_start_binary_copy(unsigned int pipe_num,
struct ia_css_frame *out_frame,
unsigned int two_ppc);
unsigned int
sh_css_sp_get_binary_copy_size(void);
/* Return the value of a SW interrupt */
unsigned int
sh_css_sp_get_sw_interrupt_value(unsigned int irq);
void
sh_css_sp_init_pipeline(struct ia_css_pipeline *me,
enum ia_css_pipe_id id,
u8 pipe_num,
bool xnr,
bool two_ppc,
bool continuous,
bool offline,
unsigned int required_bds_factor,
enum sh_css_pipe_config_override copy_ovrd,
enum ia_css_input_mode input_mode,
const struct ia_css_metadata_config *md_config,
const struct ia_css_metadata_info *md_info,
const enum mipi_port_id port_id);
void
sh_css_sp_uninit_pipeline(unsigned int pipe_num);
bool sh_css_write_host2sp_command(enum host2sp_commands host2sp_command);
enum host2sp_commands
sh_css_read_host2sp_command(void);
void
sh_css_init_host2sp_frame_data(void);
/**
* @brief Update the offline frame information in host_sp_communication.
*
* @param[in] frame_num The offline frame number.
* @param[in] frame The pointer to the offline frame.
*/
void
sh_css_update_host2sp_offline_frame(
unsigned int frame_num,
struct ia_css_frame *frame,
struct ia_css_metadata *metadata);
/**
* @brief Update the mipi frame information in host_sp_communication.
*
* @param[in] frame_num The mipi frame number.
* @param[in] frame The pointer to the mipi frame.
*/
void
sh_css_update_host2sp_mipi_frame(
unsigned int frame_num,
struct ia_css_frame *frame);
/**
* @brief Update the mipi metadata information in host_sp_communication.
*
Annotation
- Immediate include surface: `system_global.h`, `type_support.h`, `input_formatter.h`, `ia_css_binary.h`, `ia_css_types.h`, `ia_css_pipeline.h`.
- 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.