linux/drivers/gpu/drm/tegra/hub.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Copyright (C) 2017 NVIDIA CORPORATION.  All rights reserved.
 */

#include <linux/clk.h>
#include <linux/delay.h>
#include <linux/dma-mapping.h>
#include <linux/host1x.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/of_graph.h>
#include <linux/of_platform.h>
#include <linux/platform_device.h>
#include <linux/pm_runtime.h>
#include <linux/reset.h>

#include <drm/drm_atomic.h>
#include <drm/drm_atomic_helper.h>
#include <drm/drm_blend.h>
#include <drm/drm_fourcc.h>
#include <drm/drm_framebuffer.h>
#include <drm/drm_probe_helper.h>

#include "drm.h"
#include "dc.h"
#include "plane.h"

#define NFB

static const u32 tegra_shared_plane_formats[] =;

static const u64 tegra_shared_plane_modifiers[] =;

static inline unsigned int tegra_plane_offset(struct tegra_plane *plane,
					      unsigned int offset)
{}

static inline u32 tegra_plane_readl(struct tegra_plane *plane,
				    unsigned int offset)
{}

static inline void tegra_plane_writel(struct tegra_plane *plane, u32 value,
				      unsigned int offset)
{}

static int tegra_windowgroup_enable(struct tegra_windowgroup *wgrp)
{}

static void tegra_windowgroup_disable(struct tegra_windowgroup *wgrp)
{}

int tegra_display_hub_prepare(struct tegra_display_hub *hub)
{}

void tegra_display_hub_cleanup(struct tegra_display_hub *hub)
{}

static void tegra_shared_plane_update(struct tegra_plane *plane)
{}

static void tegra_shared_plane_activate(struct tegra_plane *plane)
{}

static unsigned int
tegra_shared_plane_get_owner(struct tegra_plane *plane, struct tegra_dc *dc)
{}

static bool tegra_dc_owns_shared_plane(struct tegra_dc *dc,
				       struct tegra_plane *plane)
{}

static int tegra_shared_plane_set_owner(struct tegra_plane *plane,
					struct tegra_dc *new)
{}

static void tegra_shared_plane_setup_scaler(struct tegra_plane *plane)
{}

static void tegra_dc_assign_shared_plane(struct tegra_dc *dc,
					 struct tegra_plane *plane)
{}

static void tegra_dc_remove_shared_plane(struct tegra_dc *dc,
					 struct tegra_plane *plane)
{}

static int tegra_shared_plane_atomic_check(struct drm_plane *plane,
					   struct drm_atomic_state *state)
{}

static void tegra_shared_plane_atomic_disable(struct drm_plane *plane,
					      struct drm_atomic_state *state)
{}

static inline u32 compute_phase_incr(fixed20_12 in, unsigned int out)
{}

static void tegra_shared_plane_atomic_update(struct drm_plane *plane,
					     struct drm_atomic_state *state)
{}

static const struct drm_plane_helper_funcs tegra_shared_plane_helper_funcs =;

struct drm_plane *tegra_shared_plane_create(struct drm_device *drm,
					    struct tegra_dc *dc,
					    unsigned int wgrp,
					    unsigned int index)
{}

static struct drm_private_state *
tegra_display_hub_duplicate_state(struct drm_private_obj *obj)
{}

static void tegra_display_hub_destroy_state(struct drm_private_obj *obj,
					    struct drm_private_state *state)
{}

static const struct drm_private_state_funcs tegra_display_hub_state_funcs =;

static struct tegra_display_hub_state *
tegra_display_hub_get_state(struct tegra_display_hub *hub,
			    struct drm_atomic_state *state)
{}

int tegra_display_hub_atomic_check(struct drm_device *drm,
				   struct drm_atomic_state *state)
{}

static void tegra_display_hub_update(struct tegra_dc *dc)
{}

void tegra_display_hub_atomic_commit(struct drm_device *drm,
				     struct drm_atomic_state *state)
{}

static int tegra_display_hub_init(struct host1x_client *client)
{}

static int tegra_display_hub_exit(struct host1x_client *client)
{}

static int tegra_display_hub_runtime_suspend(struct host1x_client *client)
{}

static int tegra_display_hub_runtime_resume(struct host1x_client *client)
{}

static const struct host1x_client_ops tegra_display_hub_ops =;

static int tegra_display_hub_probe(struct platform_device *pdev)
{}

static void tegra_display_hub_remove(struct platform_device *pdev)
{}

static const struct tegra_display_hub_soc tegra186_display_hub =;

static const struct tegra_display_hub_soc tegra194_display_hub =;

static const struct of_device_id tegra_display_hub_of_match[] =;
MODULE_DEVICE_TABLE(of, tegra_display_hub_of_match);

struct platform_driver tegra_display_hub_driver =;