drivers/accel/ethosu/ethosu_job.h
Source file repositories/reference/linux-study-clean/drivers/accel/ethosu/ethosu_job.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/accel/ethosu/ethosu_job.h- Extension
.h- Size
- 1089 bytes
- Lines
- 41
- Domain
- Driver Families
- Bucket
- drivers/accel
- 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
linux/kref.hdrm/gpu_scheduler.h
Detected Declarations
struct ethosu_devicestruct ethosu_file_privstruct ethosu_job
Annotated Snippet
struct ethosu_job {
struct drm_sched_job base;
struct ethosu_device *dev;
struct drm_gem_object *cmd_bo;
struct drm_gem_object *region_bo[NPU_BASEP_REGION_MAX];
u8 region_bo_num[NPU_BASEP_REGION_MAX];
u8 region_cnt;
u32 sram_size;
/* Fence to be signaled by drm-sched once its done with the job */
struct dma_fence *inference_done_fence;
/* Fence to be signaled by IRQ handler when the job is complete. */
struct dma_fence *done_fence;
struct kref refcount;
};
int ethosu_ioctl_submit(struct drm_device *dev, void *data, struct drm_file *file);
int ethosu_job_init(struct ethosu_device *dev);
void ethosu_job_fini(struct ethosu_device *dev);
int ethosu_job_open(struct ethosu_file_priv *ethosu_priv);
void ethosu_job_close(struct ethosu_file_priv *ethosu_priv);
#endif
Annotation
- Immediate include surface: `linux/kref.h`, `drm/gpu_scheduler.h`.
- Detected declarations: `struct ethosu_device`, `struct ethosu_file_priv`, `struct ethosu_job`.
- Atlas domain: Driver Families / drivers/accel.
- 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.