drivers/video/fbdev/au1200fb.h
Source file repositories/reference/linux-study-clean/drivers/video/fbdev/au1200fb.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/video/fbdev/au1200fb.h- Extension
.h- Size
- 9352 bytes
- Lines
- 287
- Domain
- Driver Families
- Bucket
- drivers/video
- 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
- No C-style include directives detected by the generator.
Detected Declarations
struct au1200_lcd
Annotated Snippet
struct au1200_lcd {
volatile uint32 reserved0;
volatile uint32 screen;
volatile uint32 backcolor;
volatile uint32 horztiming;
volatile uint32 verttiming;
volatile uint32 clkcontrol;
volatile uint32 pwmdiv;
volatile uint32 pwmhi;
volatile uint32 reserved1;
volatile uint32 winenable;
volatile uint32 colorkey;
volatile uint32 colorkeymsk;
struct
{
volatile uint32 cursorctrl;
volatile uint32 cursorpos;
volatile uint32 cursorcolor0;
volatile uint32 cursorcolor1;
volatile uint32 cursorcolor2;
uint32 cursorcolor3;
} hwc;
volatile uint32 intstatus;
volatile uint32 intenable;
volatile uint32 outmask;
volatile uint32 fifoctrl;
uint32 reserved2[(0x0100-0x0058)/4];
struct
{
volatile uint32 winctrl0;
volatile uint32 winctrl1;
volatile uint32 winctrl2;
volatile uint32 winbuf0;
volatile uint32 winbuf1;
volatile uint32 winbufctrl;
uint32 winreserved0;
uint32 winreserved1;
} window[4];
uint32 reserved3[(0x0400-0x0180)/4];
volatile uint32 palette[(0x0800-0x0400)/4];
volatile uint8 cursorpattern[256];
};
/* lcd_screen */
#define LCD_SCREEN_SEN (1<<31)
#define LCD_SCREEN_SX (0x07FF<<19)
#define LCD_SCREEN_SY (0x07FF<< 8)
#define LCD_SCREEN_SWP (1<<7)
#define LCD_SCREEN_SWD (1<<6)
#define LCD_SCREEN_PT (7<<0)
#define LCD_SCREEN_PT_TFT (0<<0)
#define LCD_SCREEN_SX_N(WIDTH) ((WIDTH-1)<<19)
#define LCD_SCREEN_SY_N(HEIGHT) ((HEIGHT-1)<<8)
#define LCD_SCREEN_PT_CSTN (1<<0)
#define LCD_SCREEN_PT_CDSTN (2<<0)
#define LCD_SCREEN_PT_M8STN (3<<0)
#define LCD_SCREEN_PT_M4STN (4<<0)
/* lcd_backcolor */
#define LCD_BACKCOLOR_SBGR (0xFF<<16)
#define LCD_BACKCOLOR_SBGG (0xFF<<8)
#define LCD_BACKCOLOR_SBGB (0xFF<<0)
#define LCD_BACKCOLOR_SBGR_N(N) ((N)<<16)
#define LCD_BACKCOLOR_SBGG_N(N) ((N)<<8)
#define LCD_BACKCOLOR_SBGB_N(N) ((N)<<0)
/* lcd_winenable */
#define LCD_WINENABLE_WEN3 (1<<3)
#define LCD_WINENABLE_WEN2 (1<<2)
#define LCD_WINENABLE_WEN1 (1<<1)
#define LCD_WINENABLE_WEN0 (1<<0)
/* lcd_colorkey */
#define LCD_COLORKEY_CKR (0xFF<<16)
#define LCD_COLORKEY_CKG (0xFF<<8)
#define LCD_COLORKEY_CKB (0xFF<<0)
#define LCD_COLORKEY_CKR_N(N) ((N)<<16)
#define LCD_COLORKEY_CKG_N(N) ((N)<<8)
#define LCD_COLORKEY_CKB_N(N) ((N)<<0)
/* lcd_colorkeymsk */
#define LCD_COLORKEYMSK_CKMR (0xFF<<16)
#define LCD_COLORKEYMSK_CKMG (0xFF<<8)
#define LCD_COLORKEYMSK_CKMB (0xFF<<0)
#define LCD_COLORKEYMSK_CKMR_N(N) ((N)<<16)
#define LCD_COLORKEYMSK_CKMG_N(N) ((N)<<8)
#define LCD_COLORKEYMSK_CKMB_N(N) ((N)<<0)
Annotation
- Detected declarations: `struct au1200_lcd`.
- Atlas domain: Driver Families / drivers/video.
- 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.