drivers/gpu/drm/nouveau/include/nvhw/class/clc37d.h
Source file repositories/reference/linux-study-clean/drivers/gpu/drm/nouveau/include/nvhw/class/clc37d.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/gpu/drm/nouveau/include/nvhw/class/clc37d.h- Extension
.h- Size
- 50357 bytes
- Lines
- 568
- Domain
- Driver Families
- Bucket
- drivers/gpu
- 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.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
- No top-level syscall, struct, function, initcall, or export declaration detected by the generator.
Annotated Snippet
#ifndef _clC37d_h_
#define _clC37d_h_
#define NV_DISP_NOTIFIER 0x00000000
#define NV_DISP_NOTIFIER_SIZEOF 0x00000010
#define NV_DISP_NOTIFIER__0 0x00000000
#define NV_DISP_NOTIFIER__0_PRESENT_COUNT 7:0
#define NV_DISP_NOTIFIER__0_FIELD 8:8
#define NV_DISP_NOTIFIER__0_FLIP_TYPE 9:9
#define NV_DISP_NOTIFIER__0_FLIP_TYPE_NON_TEARING 0x00000000
#define NV_DISP_NOTIFIER__0_FLIP_TYPE_IMMEDIATE 0x00000001
#define NV_DISP_NOTIFIER__0_R1 15:10
#define NV_DISP_NOTIFIER__0_R2 23:16
#define NV_DISP_NOTIFIER__0_R3 29:24
#define NV_DISP_NOTIFIER__0_STATUS 31:30
#define NV_DISP_NOTIFIER__0_STATUS_NOT_BEGUN 0x00000000
#define NV_DISP_NOTIFIER__0_STATUS_BEGUN 0x00000001
#define NV_DISP_NOTIFIER__0_STATUS_FINISHED 0x00000002
#define NV_DISP_NOTIFIER__1 0x00000001
#define NV_DISP_NOTIFIER__1_R4 31:0
#define NV_DISP_NOTIFIER__2 0x00000002
#define NV_DISP_NOTIFIER__2_TIMESTAMP_LO 31:0
#define NV_DISP_NOTIFIER__3 0x00000003
#define NV_DISP_NOTIFIER__3_TIMESTAMP_HI 31:0
// class methods
#define NVC37D_UPDATE (0x00000200)
#define NVC37D_UPDATE_SPECIAL_HANDLING 21:20
#define NVC37D_UPDATE_SPECIAL_HANDLING_NONE (0x00000000)
#define NVC37D_UPDATE_SPECIAL_HANDLING_INTERRUPT_RM (0x00000001)
#define NVC37D_UPDATE_SPECIAL_HANDLING_MODE_SWITCH (0x00000002)
#define NVC37D_UPDATE_SPECIAL_HANDLING_REASON 19:12
#define NVC37D_UPDATE_INHIBIT_INTERRUPTS 24:24
#define NVC37D_UPDATE_INHIBIT_INTERRUPTS_FALSE (0x00000000)
#define NVC37D_UPDATE_INHIBIT_INTERRUPTS_TRUE (0x00000001)
#define NVC37D_SET_CONTEXT_DMA_NOTIFIER (0x00000208)
#define NVC37D_SET_CONTEXT_DMA_NOTIFIER_HANDLE 31:0
#define NVC37D_SET_NOTIFIER_CONTROL (0x0000020C)
#define NVC37D_SET_NOTIFIER_CONTROL_MODE 0:0
#define NVC37D_SET_NOTIFIER_CONTROL_MODE_WRITE (0x00000000)
#define NVC37D_SET_NOTIFIER_CONTROL_MODE_WRITE_AWAKEN (0x00000001)
#define NVC37D_SET_NOTIFIER_CONTROL_OFFSET 11:4
#define NVC37D_SET_NOTIFIER_CONTROL_NOTIFY 12:12
#define NVC37D_SET_NOTIFIER_CONTROL_NOTIFY_DISABLE (0x00000000)
#define NVC37D_SET_NOTIFIER_CONTROL_NOTIFY_ENABLE (0x00000001)
#define NVC37D_SET_INTERLOCK_FLAGS (0x00000218)
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR(i) ((i)+0):((i)+0)
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR__SIZE_1 8
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR_DISABLE (0x00000000)
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR_ENABLE (0x00000001)
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR0 0:0
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR0_DISABLE (0x00000000)
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR0_ENABLE (0x00000001)
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR1 1:1
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR1_DISABLE (0x00000000)
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR1_ENABLE (0x00000001)
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR2 2:2
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR2_DISABLE (0x00000000)
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR2_ENABLE (0x00000001)
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR3 3:3
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR3_DISABLE (0x00000000)
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR3_ENABLE (0x00000001)
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR4 4:4
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR4_DISABLE (0x00000000)
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR4_ENABLE (0x00000001)
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR5 5:5
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR5_DISABLE (0x00000000)
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR5_ENABLE (0x00000001)
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR6 6:6
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR6_DISABLE (0x00000000)
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR6_ENABLE (0x00000001)
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR7 7:7
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR7_DISABLE (0x00000000)
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR7_ENABLE (0x00000001)
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CORE 16:16
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CORE_DISABLE (0x00000000)
#define NVC37D_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CORE_ENABLE (0x00000001)
#define NVC37D_SET_WINDOW_INTERLOCK_FLAGS (0x0000021C)
#define NVC37D_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW(i) ((i)+0):((i)+0)
#define NVC37D_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW__SIZE_1 32
#define NVC37D_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW_DISABLE (0x00000000)
#define NVC37D_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW_ENABLE (0x00000001)
#define NVC37D_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW0 0:0
#define NVC37D_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW0_DISABLE (0x00000000)
#define NVC37D_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW0_ENABLE (0x00000001)
#define NVC37D_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW1 1:1
#define NVC37D_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW1_DISABLE (0x00000000)
#define NVC37D_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW1_ENABLE (0x00000001)
#define NVC37D_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW2 2:2
Annotation
- Atlas domain: Driver Families / drivers/gpu.
- 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.