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

Quelle  cdn-dp-core.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * Copyright (C) 2016 Chris Zhong <zyw@rock-chips.com>
 * Copyright (C) Rockchip Electronics Co., Ltd.
 */


#ifndef _CDN_DP_CORE_H
#define _CDN_DP_CORE_H

#include <drm/display/drm_dp_helper.h>
#include <drm/drm_bridge.h>
#include <drm/drm_panel.h>
#include <drm/drm_probe_helper.h>
#include <sound/hdmi-codec.h>

#include "rockchip_drm_drv.h"

#define MAX_PHY  2

enum audio_format {
 AFMT_I2S = 0,
 AFMT_SPDIF = 1,
 AFMT_UNUSED,
};

struct audio_info {
 enum audio_format format;
 int sample_rate;
 int channels;
 int sample_width;
};

enum vic_pxl_encoding_format {
 PXL_RGB = 0x1,
 YCBCR_4_4_4 = 0x2,
 YCBCR_4_2_2 = 0x4,
 YCBCR_4_2_0 = 0x8,
 Y_ONLY = 0x10,
};

struct video_info {
 bool h_sync_polarity;
 bool v_sync_polarity;
 bool interlaced;
 int color_depth;
 enum vic_pxl_encoding_format color_fmt;
};

struct cdn_firmware_header {
 u32 size_bytes; /* size of the entire header+image(s) in bytes */
 u32 header_size; /* size of just the header in bytes */
 u32 iram_size; /* size of iram */
 u32 dram_size; /* size of dram */
};

struct cdn_dp_port {
 struct cdn_dp_device *dp;
 struct notifier_block event_nb;
 struct extcon_dev *extcon;
 struct phy *phy;
 u8 lanes;
 bool phy_enabled;
 u8 id;
};

struct cdn_dp_device {
 struct device *dev;
 struct drm_device *drm_dev;
 struct drm_bridge bridge;
 struct rockchip_encoder encoder;
 struct drm_display_mode mode;
 struct platform_device *audio_pdev;
 struct work_struct event_work;

 struct mutex lock;
 bool connected;
 bool active;
 bool suspended;

 const struct firmware *fw; /* cdn dp firmware */
 unsigned int fw_version; /* cdn fw version */
 bool fw_loaded;

 void __iomem *regs;
 struct regmap *grf;
 struct clk *core_clk;
 struct clk *pclk;
 struct clk *spdif_clk;
 struct clk *grf_clk;
 struct reset_control *spdif_rst;
 struct reset_control *dptx_rst;
 struct reset_control *apb_rst;
 struct reset_control *core_rst;
 struct audio_info audio_info;
 struct video_info video_info;
 struct cdn_dp_port *port[MAX_PHY];
 u8 ports;
 u8 max_lanes;
 unsigned int max_rate;
 u8 lanes;
 int active_port;

 u8 dpcd[DP_RECEIVER_CAP_SIZE];
};
#endif  /* _CDN_DP_CORE_H */

Messung V0.5
C=97 H=93 G=94

¤ Dauer der Verarbeitung: 0.3 Sekunden  ¤

*© 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.