STRUCT ATMEL_HLCDC_DC(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct atmel_hlcdc_dc(9)

okay bestie, welcome to the Kernel API Manual ✨ β€” yes, the Kernel API Manual, that's the manual name, we're being official today. And today's main character is struct atmel_hlcdc_dc, aka the Atmel HLCDC Display Controller. It's giving hardware, it's giving display, it's giving struct. Let's get into it πŸŽ€


🌸 NAME

struct atmel_hlcdc_dc β€” the Atmel HLCDC Display Controller. That's the whole vibe. She's a display controller and she has a struct, periodt πŸ’…


✨ SYNOPSIS

Here's the whole thing, exactly as it is, no notes, no edits, we do not touch the source:

struct atmel_hlcdc_dc {
    const struct atmel_hlcdc_dc_desc *desc;
    struct dma_pool *dscrpool;
    struct atmel_hlcdc *hlcdc;
    struct drm_crtc *crtc;
    struct drm_device dev;
    struct atmel_hlcdc_layer *layers[ATMEL_HLCDC_MAX_LAYERS];
    struct {
      u32 imr;
      struct drm_atomic_commit *state;
    } suspend;
 };

Look at her. Nested struct and everything. We love a struct with a struct inside it β€” it's like a little nesting doll but make it DMA πŸͺ†


πŸ¦‹ Members

okay this is the part where we meet everyone in the group chat, one by one 🫢

  • desc β€” the HLCDC Display Controller description. The description of the description, very meta, we stan.
  • dscrpool β€” a DMA coherent pool that's used to allocate DMA descriptors. It's the pool. It holds the descriptors. Iconic behavior honestly.
  • hlcdc β€” a pointer to the atmel_hlcdc structure, which is provided by the MFD device. So it's a pointer to a thing that came from another thing. Networking, but for structs πŸ’€
  • crtc β€” the CRTC provided by the display controller. It's got the CRTC. As one does.
  • layers β€” the active HLCDC layers, and it's an array of struct atmel_hlcdc_layer *layers[ATMEL_HLCDC_MAX_LAYERS], so like… many layers. Max layers, even. Slay.
  • suspend β€” the one and only place we store the HLCDC state when entering suspend. Sleepy time storage, lowkey cozy 😴

And then suspend has her own little inner circle:

  • suspend.imr β€” used to read/write the LCDC Interrupt Mask Register. Reading and writing. Multitalented.
  • suspend.state β€” the Atomic commit structure. Atomic. Like the commit. Not like the science.
quick heads up bestie: struct drm_device dev; is literally right there in the struct up top, but this page doesn't give it its own Members blurb. I'm not gonna invent one for you β€” we keep the facts exactly as they are, no cap. πŸ™ˆ

πŸ”₯ SEE ALSO

go check these out, iykyk:

  • the Kernel file ./drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.h
  • struct atmel_lcdc_dc_ops(9)

πŸ‘‘ Sign-off

this page came to you from ./drivers/gpu/drm/atmel-hlcdc, dated October 2026, and yeah β€” it's struct atmel_hlcdc_dc(9) all the way down, bestie. go forth and display-control πŸ’–πŸŒˆβ­

πŸ“¦ where this page comes from