drivers/staging/media/atomisp/pci/ia_css_timer.h
Source file repositories/reference/linux-study-clean/drivers/staging/media/atomisp/pci/ia_css_timer.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/staging/media/atomisp/pci/ia_css_timer.h- Extension
.h- Size
- 1727 bytes
- Lines
- 62
- 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
type_support.hia_css_err.h
Detected Declarations
struct ia_css_clock_tickstruct ia_css_time_measenum ia_css_tm_event
Annotated Snippet
struct ia_css_clock_tick {
clock_value_t ticks; /** measured time in ticks.*/
};
/* @brief TIMER event codes */
enum ia_css_tm_event {
IA_CSS_TM_EVENT_AFTER_INIT,
/** Timer Event after Initialization */
IA_CSS_TM_EVENT_MAIN_END,
/** Timer Event after end of Main */
IA_CSS_TM_EVENT_THREAD_START,
/** Timer Event after thread start */
IA_CSS_TM_EVENT_FRAME_PROC_START,
/** Timer Event after Frame Process Start */
IA_CSS_TM_EVENT_FRAME_PROC_END
/** Timer Event after Frame Process End */
};
/* @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 */
};
/**@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. */
#define SIZE_OF_IA_CSS_TIME_MEAS_STRUCT (sizeof(clock_value_t) \
+ sizeof(clock_value_t))
/* @brief API to fetch timer count directly
*
* @param curr_ts [out] measured count value
* @return 0 if success
*
*/
int
ia_css_timer_get_current_tick(
struct ia_css_clock_tick *curr_ts);
#endif /* __IA_CSS_TIMER_H */
Annotation
- Immediate include surface: `type_support.h`, `ia_css_err.h`.
- Detected declarations: `struct ia_css_clock_tick`, `struct ia_css_time_meas`, `enum ia_css_tm_event`.
- 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.