STRUCT S3C_FB(9)
π NAME π
Okay so this is the struct s3c_fb(9) page from the Kernel API Manual, and it's literally the whole vibe of the hardware state: struct s3c_fb β the overall hardware state of the hardware. Yes bestie, that's the actual description, and honestly? Iconic π
.
β¨ SYNOPSIS β¨
struct s3c_fb {
spinlock_t slock;
struct device *dev;
struct clk *bus_clk;
struct clk *lcd_clk;
void __iomem *regs;
struct s3c_fb_variant variant;
unsigned char enabled;
bool output_on;
struct s3c_fb_platdata *pdata;
struct s3c_fb_win *windows[S3C_FB_MAX_WIN];
int irq_no;
unsigned long irq_flags;
struct s3c_fb_vsync vsync_info;
};
π Members π
slockβ the spinlock protection for this data structure. She's the bouncer at the struct door, keeping everything safe π«Ά.devβ the device that we bound to, for printing, etc. Main character device energy.bus_clkβ the clk (hclk) feeding our interface and possiblypixclk. The clock bestie keeping things fed β¨.lcd_clkβ the clk (sclk) feedingpixclk. Another clock doing its little clock thing π.regsβ the mapped hardware registers. The map to the hardware kingdom π.variantβ variant information for this hardware. It's giving "which flavor of hardware are we dealing with" π«.enabledβ a bitmask of enabled hardware windows. Bitmask era π₯.output_onβ flag if the physical output is enabled. Is the output up? This bool knows.pdataβ the platform configuration data passed with the device. The device's little config care package π.windowsβ the hardware windows that have been claimed. Claimed and slaying, no cap π .irq_noβ IRQ line number. The number for the IRQ line, periodt.irq_flagsβ irq flags. Literally the irq flags, bestie.vsync_infoβ VSYNC-related information (count, queues...). All the VSYNC info, counting and queueing and vibing π¦.
π₯ SEE ALSO π₯
Kernel file ./drivers/video/fbdev/s3c-fb.c is the source-file main character, and these are the linked besties:
struct s3c_fb_variant(9)struct s3c_fb_win_variant(9)struct s3c_fb_driverdata(9)struct s3c_fb_palette(9)struct s3c_fb_win(9)struct s3c_fb_vsync(9)s3c_fb_validate_win_bpp(9)s3c_fb_check_var(9)s3c_fb_calc_pixclk(9)s3c_fb_align_word(9)vidosd_set_size(9)vidosd_set_alpha(9)shadow_protect_win(9)s3c_fb_enable(9)s3c_fb_set_par(9)s3c_fb_update_palette(9)s3c_fb_setcolreg(9)s3c_fb_blank(9)s3c_fb_pan_display(9)s3c_fb_enable_irq(9)s3c_fb_disable_irq(9)s3c_fb_wait_for_vsync(9)s3c_fb_missing_pixclock(9)s3c_fb_alloc_memory(9)s3c_fb_free_memory(9)s3c_fb_release_win(9)s3c_fb_probe_win(9)s3c_fb_set_rgb_timing(9)s3c_fb_clear_win(9)s3c_fb_remove(9)
π Signed off from source/version./drivers/video/fbdev, datedOctober 2026, with love forstruct s3c_fb(9)πβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms