Zephyr API Documentation 4.0.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
display.h File Reference

Public API for display drivers and applications. More...

#include <zephyr/device.h>
#include <errno.h>
#include <stddef.h>
#include <zephyr/types.h>
#include <zephyr/dt-bindings/display/panel.h>

Go to the source code of this file.

Data Structures

struct  display_capabilities
 Structure holding display capabilities. More...
 
struct  display_buffer_descriptor
 Structure to describe display data buffer layout. More...
 
struct  display_driver_api
 Display driver API API which a display driver should expose. More...
 

Macros

#define DISPLAY_BITS_PER_PIXEL(fmt)
 Bits required per pixel for display format.
 

Typedefs

typedef int(* display_blanking_on_api) (const struct device *dev)
 Callback API to turn on display blanking See display_blanking_on() for argument description.
 
typedef int(* display_blanking_off_api) (const struct device *dev)
 Callback API to turn off display blanking See display_blanking_off() for argument description.
 
typedef int(* display_write_api) (const struct device *dev, const uint16_t x, const uint16_t y, const struct display_buffer_descriptor *desc, const void *buf)
 Callback API for writing data to the display See display_write() for argument description.
 
typedef int(* display_read_api) (const struct device *dev, const uint16_t x, const uint16_t y, const struct display_buffer_descriptor *desc, void *buf)
 Callback API for reading data from the display See display_read() for argument description.
 
typedef void *(* display_get_framebuffer_api) (const struct device *dev)
 Callback API to get framebuffer pointer See display_get_framebuffer() for argument description.
 
typedef int(* display_set_brightness_api) (const struct device *dev, const uint8_t brightness)
 Callback API to set display brightness See display_set_brightness() for argument description.
 
typedef int(* display_set_contrast_api) (const struct device *dev, const uint8_t contrast)
 Callback API to set display contrast See display_set_contrast() for argument description.
 
typedef void(* display_get_capabilities_api) (const struct device *dev, struct display_capabilities *capabilities)
 Callback API to get display capabilities See display_get_capabilities() for argument description.
 
typedef int(* display_set_pixel_format_api) (const struct device *dev, const enum display_pixel_format pixel_format)
 Callback API to set pixel format used by the display See display_set_pixel_format() for argument description.
 
typedef int(* display_set_orientation_api) (const struct device *dev, const enum display_orientation orientation)
 Callback API to set orientation used by the display See display_set_orientation() for argument description.
 

Enumerations

enum  display_pixel_format {
  PIXEL_FORMAT_RGB_888 = BIT(0) , PIXEL_FORMAT_MONO01 = BIT(1) , PIXEL_FORMAT_MONO10 = BIT(2) , PIXEL_FORMAT_ARGB_8888 = BIT(3) ,
  PIXEL_FORMAT_RGB_565 = BIT(4) , PIXEL_FORMAT_BGR_565 = BIT(5)
}
 Display pixel formats. More...
 
enum  display_screen_info {
  SCREEN_INFO_MONO_VTILED = BIT(0) , SCREEN_INFO_MONO_MSB_FIRST = BIT(1) , SCREEN_INFO_EPD = BIT(2) , SCREEN_INFO_DOUBLE_BUFFER = BIT(3) ,
  SCREEN_INFO_X_ALIGNMENT_WIDTH = BIT(4)
}
 Display screen information. More...
 
enum  display_orientation { DISPLAY_ORIENTATION_NORMAL , DISPLAY_ORIENTATION_ROTATED_90 , DISPLAY_ORIENTATION_ROTATED_180 , DISPLAY_ORIENTATION_ROTATED_270 }
 Enumeration with possible display orientation. More...
 

Functions

static int display_write (const struct device *dev, const uint16_t x, const uint16_t y, const struct display_buffer_descriptor *desc, const void *buf)
 Write data to display.
 
static int display_read (const struct device *dev, const uint16_t x, const uint16_t y, const struct display_buffer_descriptor *desc, void *buf)
 Read data from display.
 
static void * display_get_framebuffer (const struct device *dev)
 Get pointer to framebuffer for direct access.
 
static int display_blanking_on (const struct device *dev)
 Turn display blanking on.
 
static int display_blanking_off (const struct device *dev)
 Turn display blanking off.
 
static int display_set_brightness (const struct device *dev, uint8_t brightness)
 Set the brightness of the display.
 
static int display_set_contrast (const struct device *dev, uint8_t contrast)
 Set the contrast of the display.
 
static void display_get_capabilities (const struct device *dev, struct display_capabilities *capabilities)
 Get display capabilities.
 
static int display_set_pixel_format (const struct device *dev, const enum display_pixel_format pixel_format)
 Set pixel format used by the display.
 
static int display_set_orientation (const struct device *dev, const enum display_orientation orientation)
 Set display orientation.
 

Detailed Description

Public API for display drivers and applications.