Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Linux/include/drm/bridge/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 2 kB image not shown  

Quelle  dw_mipi_dsi.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * Copyright (C) STMicroelectronics SA 2017
 *
 * Authors: Philippe Cornu <philippe.cornu@st.com>
 *          Yannick Fertre <yannick.fertre@st.com>
 */


#ifndef __DW_MIPI_DSI__
#define __DW_MIPI_DSI__

#include <linux/types.h>

#include <drm/drm_atomic.h>
#include <drm/drm_bridge.h>
#include <drm/drm_connector.h>
#include <drm/drm_crtc.h>
#include <drm/drm_modes.h>

struct drm_display_mode;
struct drm_encoder;
struct dw_mipi_dsi;
struct mipi_dsi_device;
struct platform_device;

struct dw_mipi_dsi_dphy_timing {
 u16 data_hs2lp;
 u16 data_lp2hs;
 u16 clk_hs2lp;
 u16 clk_lp2hs;
};

struct dw_mipi_dsi_phy_ops {
 int (*init)(void *priv_data);
 void (*power_on)(void *priv_data);
 void (*power_off)(void *priv_data);
 int (*get_lane_mbps)(void *priv_data,
        const struct drm_display_mode *mode,
        unsigned long mode_flags, u32 lanes, u32 format,
        unsigned int *lane_mbps);
 int (*get_timing)(void *priv_data, unsigned int lane_mbps,
     struct dw_mipi_dsi_dphy_timing *timing);
 int (*get_esc_clk_rate)(void *priv_data, unsigned int *esc_clk_rate);
};

struct dw_mipi_dsi_host_ops {
 int (*attach)(void *priv_data,
        struct mipi_dsi_device *dsi);
 int (*detach)(void *priv_data,
        struct mipi_dsi_device *dsi);
};

struct dw_mipi_dsi_plat_data {
 void __iomem *base;
 unsigned int max_data_lanes;

 enum drm_mode_status (*mode_valid)(void *priv_data,
        const struct drm_display_mode *mode,
        unsigned long mode_flags,
        u32 lanes, u32 format);

 bool (*mode_fixup)(void *priv_data, const struct drm_display_mode *mode,
      struct drm_display_mode *adjusted_mode);

 u32 *(*get_input_bus_fmts)(void *priv_data,
       struct drm_bridge *bridge,
       struct drm_bridge_state *bridge_state,
       struct drm_crtc_state *crtc_state,
       struct drm_connector_state *conn_state,
       u32 output_fmt,
       unsigned int *num_input_fmts);

 const struct dw_mipi_dsi_phy_ops *phy_ops;
 const struct dw_mipi_dsi_host_ops *host_ops;

 void *priv_data;
};

struct dw_mipi_dsi *dw_mipi_dsi_probe(struct platform_device *pdev,
          const struct dw_mipi_dsi_plat_data
          *plat_data);
void dw_mipi_dsi_remove(struct dw_mipi_dsi *dsi);
int dw_mipi_dsi_bind(struct dw_mipi_dsi *dsi, struct drm_encoder *encoder);
void dw_mipi_dsi_unbind(struct dw_mipi_dsi *dsi);
void dw_mipi_dsi_set_slave(struct dw_mipi_dsi *dsi, struct dw_mipi_dsi *slave);
struct drm_bridge *dw_mipi_dsi_get_bridge(struct dw_mipi_dsi *dsi);

#endif /* __DW_MIPI_DSI__ */

Messung V0.5
C=93 H=90 G=91

¤ Dauer der Verarbeitung: 0.11 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.