include/drm/drm_mipi_dbi.h
Source file repositories/reference/linux-study-clean/include/drm/drm_mipi_dbi.h
File Facts
- System
- Linux kernel
- Corpus path
include/drm/drm_mipi_dbi.h- Extension
.h- Size
- 7429 bytes
- Lines
- 293
- Domain
- Repository Root And Misc
- Bucket
- include
- Inferred role
- Repository Root And Misc: implementation source
- Status
- source implementation candidate
Why This File Exists
Top-level or miscellaneous repository surface. Use this as map coverage unless a later manual pass promotes the file into a deeper subsystem dossier.
- Top-level or miscellaneous repository surface. Use this as map coverage unless a later manual pass promotes the file into a deeper subsystem dossier.
- Uses kernel synchronization; read lock ordering, sleepability, and interrupt context assumptions before translating.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
linux/mutex.hdrm/drm_atomic_state_helper.hdrm/drm_device.hdrm/drm_gem_atomic_helper.hdrm/drm_gem_framebuffer_helper.hdrm/drm_probe_helper.h
Detected Declarations
struct drm_format_conv_statestruct drm_rectstruct gpio_descstruct iosys_mapstruct regulatorstruct spi_devicestruct mipi_dbistruct mipi_dbi_devfunction mipi_dbi_debugfs_init
Annotated Snippet
struct mipi_dbi {
/**
* @cmdlock: Command lock
*/
struct mutex cmdlock;
/**
* @command: Bus specific callback executing commands.
*/
int (*command)(struct mipi_dbi *dbi, u8 *cmd, u8 *param, size_t num);
/**
* @read_commands: Array of read commands terminated by a zero entry.
* Reading is disabled if this is NULL.
*/
const u8 *read_commands;
/**
* @swap_bytes: Swap bytes in buffer before transfer
*/
bool swap_bytes;
/**
* @reset: Optional reset gpio
*/
struct gpio_desc *reset;
/* Type C specific */
/**
* @spi: SPI device
*/
struct spi_device *spi;
/**
* @write_memory_bpw: Bits per word used on a MIPI_DCS_WRITE_MEMORY_START transfer
*/
unsigned int write_memory_bpw;
/**
* @dc: Optional D/C gpio.
*/
struct gpio_desc *dc;
/**
* @tx_buf9: Buffer used for Option 1 9-bit conversion
*/
void *tx_buf9;
/**
* @tx_buf9_len: Size of tx_buf9.
*/
size_t tx_buf9_len;
};
/**
* struct mipi_dbi_dev - MIPI DBI device
*/
struct mipi_dbi_dev {
/**
* @drm: DRM device
*/
struct drm_device drm;
/**
* @mode: Fixed display mode
*/
struct drm_display_mode mode;
/**
* @pixel_format: Native pixel format (DRM_FORMAT\_\*)
*/
u32 pixel_format;
/**
* @tx_buf: Buffer used for transfer (copy clip rect area)
*/
u16 *tx_buf;
/**
* @rotation: initial rotation in degrees Counter Clock Wise
*/
unsigned int rotation;
/**
* @left_offset: Horizontal offset of the display relative to the
* controller's driver array
*/
unsigned int left_offset;
Annotation
- Immediate include surface: `linux/mutex.h`, `drm/drm_atomic_state_helper.h`, `drm/drm_device.h`, `drm/drm_gem_atomic_helper.h`, `drm/drm_gem_framebuffer_helper.h`, `drm/drm_probe_helper.h`.
- Detected declarations: `struct drm_format_conv_state`, `struct drm_rect`, `struct gpio_desc`, `struct iosys_map`, `struct regulator`, `struct spi_device`, `struct mipi_dbi`, `struct mipi_dbi_dev`, `function mipi_dbi_debugfs_init`.
- Atlas domain: Repository Root And Misc / include.
- Implementation status: source implementation candidate.
- Synchronization appears in or near this file; preserve lock ordering, sleepability, and interrupt-context constraints.
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.