linux/include/video/videomode.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0-only */
   2/*
   3 * Copyright 2012 Steffen Trumtrar <s.trumtrar@pengutronix.de>
   4 *
   5 * generic videomode description
   6 */
   7
   8#ifndef __LINUX_VIDEOMODE_H
   9#define __LINUX_VIDEOMODE_H
  10
  11#include <linux/types.h>
  12#include <video/display_timing.h>
  13
  14/*
  15 * Subsystem independent description of a videomode.
  16 * Can be generated from struct display_timing.
  17 */
  18struct videomode {
  19        unsigned long pixelclock;       /* pixelclock in Hz */
  20
  21        u32 hactive;
  22        u32 hfront_porch;
  23        u32 hback_porch;
  24        u32 hsync_len;
  25
  26        u32 vactive;
  27        u32 vfront_porch;
  28        u32 vback_porch;
  29        u32 vsync_len;
  30
  31        enum display_flags flags; /* display flags */
  32};
  33
  34/**
  35 * videomode_from_timing - convert display timing to videomode
  36 * @dt: display_timing structure
  37 * @vm: return value
  38 *
  39 * DESCRIPTION:
  40 * This function converts a struct display_timing to a struct videomode.
  41 */
  42void videomode_from_timing(const struct display_timing *dt,
  43                          struct videomode *vm);
  44
  45/**
  46 * videomode_from_timings - convert one display timings entry to videomode
  47 * @disp: structure with all possible timing entries
  48 * @vm: return value
  49 * @index: index into the list of display timings in devicetree
  50 *
  51 * DESCRIPTION:
  52 * This function converts one struct display_timing entry to a struct videomode.
  53 */
  54int videomode_from_timings(const struct display_timings *disp,
  55                          struct videomode *vm, unsigned int index);
  56
  57#endif
  58