linux/drivers/gpu/drm/omapdrm/omap_overlay.c

// SPDX-License-Identifier: GPL-2.0
/*
 * Copyright (C) 2018 Texas Instruments Incorporated -  http://www.ti.com/
 * Author: Benoit Parrot <[email protected]>
 */

#include <drm/drm_atomic.h>
#include <drm/drm_atomic_helper.h>

#include "omap_dmm_tiler.h"
#include "omap_drv.h"

/*
 * overlay funcs
 */
static const char * const overlay_id_to_name[] =;

/*
 * Find a free overlay with the required caps and supported fourcc
 */
static struct omap_hw_overlay *
omap_plane_find_free_overlay(struct drm_device *dev, struct drm_plane *hwoverlay_to_plane[],
			     u32 caps, u32 fourcc)
{}

/*
 * Assign a new overlay to a plane with the required caps and supported fourcc
 * If a plane need a new overlay, the previous one should have been released
 * with omap_overlay_release()
 * This should be called from the plane atomic_check() in order to prepare the
 * next global overlay_map to be enabled when atomic transaction is valid.
 */
int omap_overlay_assign(struct drm_atomic_state *s, struct drm_plane *plane,
			u32 caps, u32 fourcc, struct omap_hw_overlay **overlay,
			struct omap_hw_overlay **r_overlay)
{}

/*
 * Release an overlay from a plane if the plane gets not visible or the plane
 * need a new overlay if overlay caps changes.
 * This should be called from the plane atomic_check() in order to prepare the
 * next global overlay_map to be enabled when atomic transaction is valid.
 */
void omap_overlay_release(struct drm_atomic_state *s, struct omap_hw_overlay *overlay)
{}

/*
 * Update an overlay state that was attached to a plane before the current atomic state.
 * This should be called from the plane atomic_update() or atomic_disable(),
 * where an overlay association to a plane could have changed between the old and current
 * atomic state.
 */
void omap_overlay_update_state(struct omap_drm_private *priv,
			       struct omap_hw_overlay *overlay)
{}

static void omap_overlay_destroy(struct omap_hw_overlay *overlay)
{}

static struct omap_hw_overlay *omap_overlay_init(enum omap_plane_id overlay_id,
						 enum omap_overlay_caps caps)
{}

int omap_hwoverlays_init(struct omap_drm_private *priv)
{}

void omap_hwoverlays_destroy(struct omap_drm_private *priv)
{}