STRUCT FIMC_IS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ struct fimc_is(9) ✨

okay bestie, so this is the struct fimc_is page from the Linux Kernel API Manual, and it's literally the blueprint for the fimc-is data structure β€” the main character energy of the whole Exynos image signal processor situation πŸ’… no cap, it's a lot, but we're gonna get through it together fr fr.


πŸŽ€ SYNOPSIS πŸŽ€

like, here's the whole struct, character for character, iconic behavior only:

struct fimc_is {
    struct platform_device          *pdev;
    struct v4l2_device              *v4l2_dev;
    struct fimc_is_firmware         fw;
    struct fimc_is_memory           memory;
    struct fimc_isp                 isp;
    struct fimc_is_sensor           sensor[FIMC_IS_SENSORS_NUM];
    struct fimc_is_setfile          setfile;
    struct v4l2_ctrl_handler        ctrl_handler;
    struct mutex                    lock;
    spinlock_t slock;
    struct clk                      *clocks[ISS_CLKS_MAX];
    void __iomem                    *regs;
    void __iomem                    *pmu_regs;
    int irq;
    wait_queue_head_t irq_queue;
    u8 lpm;
    unsigned long                   state;
    unsigned int                    sensor_index;
    struct i2h_cmd                  i2h_cmd;
    struct h2i_cmd                  h2i_cmd;
    struct is_fd_result_header      fd_header;
    struct chain_config             config[IS_SC_MAX];
    unsigned config_index;
    struct is_region                *is_p_region;
    dma_addr_t is_dma_p_region;
    struct is_share_region          *is_shared_region;
    struct is_af_info               af;
    struct dentry                   *debugfs_entry;
 };

🌸 MEMBERS 🌸

okay so every single field is getting its moment, no skipping, periodt:

  • pdev β€” pointer to the FIMC-IS platform device 🫢
  • v4l2_dev β€” pointer to the top level v4l2_device, the big boss vibe
  • fw β€” data structure describing the FIMC-IS firmware binary, like its whole little resume
  • memory β€” memory region assigned for the FIMC-IS (firmware) β€” it's giving allocated realness
  • isp β€” the ISP block data structure, lowkey the star of the show
  • sensor β€” fimc-is sensor subdevice array, besties in formation ✨
  • setfile β€” descriptor of the imaging pipeline calibration data, the fine-tuning era
  • ctrl_handler β€” the v4l2 controls handler, keeping everything in check
  • lock β€” mutex serializing video device and the subdev operations, so nobody talks over each other πŸ’…
  • slock β€” spinlock protecting this data structure and the hw registers, tiny but fierce
  • clocks β€” FIMC-LITE gate clock πŸ‘‘
  • regs β€” MCUCTL mmapped registers region
  • pmu_regs β€” PMU ISP mmapped registers region
  • irq β€” FIMC-IS interrupt, the notification queen
  • irq_queue β€” interrupt handling waitqueue, where the interrupts line up patiently
  • lpm β€” low power mode flag, sleepy girl era 😴
  • state β€” internal driver's state flags
  • sensor_index β€” image sensor index for the firmware, like a little ID card
  • i2h_cmd β€” FIMC-IS to the host (CPU) mailbox command data structure, sending messages home πŸ¦‹
  • h2i_cmd β€” the host (CPU) to FIMC-IS mailbox command data structure, messages coming in
  • fd_header β€” the face detection result data structure, it sees you πŸ‘€
  • config β€” shared HW pipeline configuration data
  • config_index β€” index to the config entry currently in use, main character of the config moment
  • is_p_region β€” pointer to the shared parameter memory region
  • is_dma_p_region β€” DMA address of the shared parameter memory region
  • is_shared_region β€” pointer to the IS shared region data structure
  • af β€” auto focus data, stay focused bestie 🎯
  • debugfs_entry β€” debugfs entry for the firmware log, the receipts πŸ’€

πŸ”₯ SEE ALSO πŸ”₯

  • Kernel file ./drivers/media/platform/samsung/exynos4-is/fimc-is.h β€” go read it, iykyk

that's the whole thing, bestie! this page is from the ./drivers/media/platform/samsung/exynos4-is/fimc-is.h corner of the kernel and it's dated October 2026, struct fimc_is(9) era β€” slay, you made it to the end πŸŽ€πŸ’–βœ¨

πŸ“¦ where this page comes from