linux/drivers/gpu/drm/msm/dsi/dsi_manager.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Copyright (c) 2015, The Linux Foundation. All rights reserved.
 */

#include "drm/drm_bridge_connector.h"

#include "msm_kms.h"
#include "dsi.h"

#define DSI_CLOCK_MASTER
#define DSI_CLOCK_SLAVE

#define DSI_LEFT
#define DSI_RIGHT

/* According to the current drm framework sequence, take the encoder of
 * DSI_1 as master encoder
 */
#define DSI_ENCODER_MASTER
#define DSI_ENCODER_SLAVE

struct msm_dsi_manager {};

static struct msm_dsi_manager msm_dsim_glb;

#define IS_BONDED_DSI()
#define IS_SYNC_NEEDED()
#define IS_MASTER_DSI_LINK(id)

static inline struct msm_dsi *dsi_mgr_get_dsi(int id)
{}

static inline struct msm_dsi *dsi_mgr_get_other_dsi(int id)
{}

static int dsi_mgr_parse_of(struct device_node *np, int id)
{}

static int dsi_mgr_setup_components(int id)
{}

static int enable_phy(struct msm_dsi *msm_dsi,
		      struct msm_dsi_phy_shared_timings *shared_timings)
{}

static int
dsi_mgr_phy_enable(int id,
		   struct msm_dsi_phy_shared_timings shared_timings[DSI_MAX])
{}

static void dsi_mgr_phy_disable(int id)
{}

struct dsi_bridge {};

#define to_dsi_bridge(x)

static int dsi_mgr_bridge_get_id(struct drm_bridge *bridge)
{}

static int dsi_mgr_bridge_power_on(struct drm_bridge *bridge)
{}

static void dsi_mgr_bridge_power_off(struct drm_bridge *bridge)
{}

static void dsi_mgr_bridge_pre_enable(struct drm_bridge *bridge)
{}

void msm_dsi_manager_tpg_enable(void)
{}

static void dsi_mgr_bridge_post_disable(struct drm_bridge *bridge)
{}

static void dsi_mgr_bridge_mode_set(struct drm_bridge *bridge,
		const struct drm_display_mode *mode,
		const struct drm_display_mode *adjusted_mode)
{}

static enum drm_mode_status dsi_mgr_bridge_mode_valid(struct drm_bridge *bridge,
						      const struct drm_display_info *info,
						      const struct drm_display_mode *mode)
{}

static int dsi_mgr_bridge_attach(struct drm_bridge *bridge,
				 enum drm_bridge_attach_flags flags)
{}

static const struct drm_bridge_funcs dsi_mgr_bridge_funcs =;

/* initialize bridge */
int msm_dsi_manager_connector_init(struct msm_dsi *msm_dsi,
				   struct drm_encoder *encoder)
{}

int msm_dsi_manager_cmd_xfer(int id, const struct mipi_dsi_msg *msg)
{}

bool msm_dsi_manager_cmd_xfer_trigger(int id, u32 dma_base, u32 len)
{}

int msm_dsi_manager_register(struct msm_dsi *msm_dsi)
{}

void msm_dsi_manager_unregister(struct msm_dsi *msm_dsi)
{}

bool msm_dsi_is_bonded_dsi(struct msm_dsi *msm_dsi)
{}

bool msm_dsi_is_master_dsi(struct msm_dsi *msm_dsi)
{}

const char *msm_dsi_get_te_source(struct msm_dsi *msm_dsi)
{}